def add_user(): db = open_db() repo = UserRepo(db) user_dict = json.loads(request.data) user = models.User(str(uuid.uuid4()), user_dict['first_name'], user_dict['last_name'], str(time.time())) user_inserted = repo.add_user(user) close_db(db) return "ok"
def get_user(guid): db = open_db() repo = UserRepo(db) user = repo.get_user(guid) user_dict = user.json_dict() json_body = json.dumps(user_dict) close_db(db) return Response(json_body, mimetype='application/json')
def get_users(): db = open_db() repo = UserRepo(db) users = repo.get_users() users_dicts = [user.json_dict() for user in users] json_body = json.dumps(users_dicts) close_db(db) return Response(json_body, mimetype='application/json')
def modify_user(guid): user_dict = json.loads(request.data) allowed_params = ['first_name', 'last_name'] update_sql = ", ".join([str(key)+ "= '" + str(user_dict.get(key)) + "'" for key in user_dict.keys() if key in allowed_params]) #column1 = value1, column2 = value2...., columnN = valueN db = open_db() repo = UserRepo(db) updating_the_user = repo.modify_user(guid, update_sql) db = open_db() updated_user = repo.get_user(guid) updated_user_dict = updated_user.json_dict() json_body = json.dumps(updated_user_dict) close_db(db) return Response(json_body, mimetype='application/json')
class ListUsersUseCase(object): """ Use case for listing the users """ def __init__(self): self.user_repo = UserRepo() def execute(self, request_object): response = Response() try: users = self.user_repo.list_users(request_object.order) response.data = users return response except Exception as e: response.add_exception_error(e) return response
class BackupEndpointDataUseCase(): """ Use case for adding to the database de post data obtained from the reddit endpoint """ def __init__(self): self.user_repo = UserRepo() self.post_repo = PostRepo() def execute(self, request): response = Response() try: for post in [p['data'] for p in request.endpoint_data['data']['children']]: user_id = self.user_repo.add_user(User(name = post['author'], ups = post['ups'], comments = post['num_comments'])) created_time = datetime.fromtimestamp(post['created_utc'], tz = pytz.timezone(request.timezone)) self.post_repo.add_post(Post(title = post['title'], ups = post['ups'], comments = post['num_comments'], created = created_time, author = user_id)) return response except Exception as e: response.add_exception_error(e) return response
def create(cls): cls.db = TinyDB('D:\\Mobile\\Server\\data\\db.json') cls.repo = Repo(cls.db) cls.userRepo = UserRepo(cls.db)
def __init__(self): self.user_repo = UserRepo() self.post_repo = PostRepo()
def __init__(self): self.user_repo = UserRepo()
def remove_user(guid): db = open_db() repo = UserRepo(db) removing_a_user = repo.remove_user(guid) close_db(db) return "ok"