def post(self): data = NewProject.parser.parse_args() user_id = get_jwt_identity() check_projects = ProjectModel.get_projects_by_user_id(user_id) check_projects = [ pr for pr in check_projects if pr.name == data['name'] ] if check_projects: return { 'message': "A project with name '{}' already exists.".format(data['name']) }, 400 # Create a new project project = ProjectModel(id=None, **data) try: project.save_to_db() except Exception as e: print(e) return {"message": "An error occurred inserting the item."}, 500 # Map the project to the user mapping_user = UserProjectMap(user_id=user_id, project_id=project.id) try: mapping_user.save_to_db() except: project.delete_from_db() return { "message": "An error occurred mapping the user to the project." }, 500 return project.json(), 201
def post(self): data = Project.parser.parse_args() current_user_id = get_jwt_identity() project_name = data["project_name"] if not project_name: return {"message": "Please enter the project name"} description = data['description'] try: project = ProjectModel(**data) project.user_id = get_jwt_identity() project.is_archived = False project.save_to_db() print("moi", project.user_id) except: return {"message": "An error occured creating the Project"}, 500 project_id = project.id project_name = project.project_name description = project.description is_archived = project.is_archived return { "project_id": project_id, "project_name": project_name, "description": description, "is_archived": is_archived }, 201
def post(self, name): project_parse = reqparse.RequestParser() project_parse.add_argument('name', type=non_empty_string, required=True, help='Name is required') project_parse.add_argument('description', type=non_empty_string, required=True, help="description is required") project_parse.add_argument('project_color_identity', type=non_empty_string, required=True, help="project_color_identity is required") project = ProjectModel.find_by_name(name) if project: return { "ProjectAlreadyExistsError": { "message": "Project with given name already exists", "status": 400 } } data = project_parse.parse_args() project = ProjectModel(data['name'], data['description'], get_jwt_identity(), data['project_color_identity']) project.save_to_db() return {"message": "Project Created", "status": 200}
def put(self, id): data = Project.parser.parse_args() project = ProjectModel.find_by_id(id) if project: project.name = data['name'] else: project = ProjectModel(None, **data) project.save_to_db() return project.json()
def put(self, pname): data = Project.parser.parse_args() project = ProjectModel.find_by_name(pname, int(current_identity)) if project: project.description = data['description'] else: project = ProjectModel(pname, **data) project.save_to_db() return project.json()
def post(self): data = ProjectList.parser.parse_args() y, m, d = data['to_date'].split('-') project = ProjectModel(data['name'], datetime.datetime(int(y), int(m), int(d))) try: project.save_to_db() except: return {'message': 'An error occured inserting the project'}, 500 return project.json(), 201
def post(self): data = Projects.parser.parse_args() project = ProjectModel(name=data['name'], user_id=data['user_id']) if (UserModel.find_by_id(project.user_id)): try: project.save_to_db() return project.json(), 201 except: return { "message": "An error occurred inserting the project." }, 500 else: return {"message": "The associated user does not exist."}, 500
def post(self, pname): data = Project.parser.parse_args() # TODO: fix this <class 'werkzeug.local.LocalProxy'> to int problem project = ProjectModel(pname, data['description'], int(current_identity), data['roles']) # print((data['roles'])) # for rolestr in data['roles']: # print(eval(rolestr)) # save roles try: project.save_to_db() except: return {"message": "An error occured inserting the project"}, 500 return project.json(), 201
def post(self): user_id = get_jwt_identity() data = NewProject.parser.parse_args() name = data['name'] description = data['description'] datasource_id = data['datasourceId'] collection_id = data['collectionId'] columns = {'columns': data['columns']} project = ProjectModel(name, description, datasource_id, collection_id, user_id) if (project.find_one_by_name(name, user_id)): return {'message': ERROR_DUPLICATE_NAME.format(name)}, 500 else: mongo = ProjectUnstructureModel(columns) try: columns_filter_id = str(mongo.save_columns_filter_to_db()) except Exception as e: return { 'message': ERROR_CANNOT_INSRET_MONGO.format(columns) }, 500 try: project.save_to_db() except Exception as e: return {'message': ERROR_CANNOT_INSERT_DB}, 500 try: project = project.find_one_by_name(name, user_id) if project: project.save_columns_filter_db(columns_filter_id) except Exception as e: return { 'message': ERROR_CANNOT_INSRET_COLUMNS_FILTER.format(columns) }, 500 return {'message': '{} has already created'.format(name)}, 200