def create_project(): if request.method == 'GET': form = CreateProjectForm(request.form) return render_template('create_project.html', form=form) name = request.form['name'] code = request.form['code'] company = request.form['company'] description = request.form['description'] budget = request.form['budget'] contingency = request.form['contingency'] leader = request.form['leader'] coordinator = request.form['coordinator'] status = 3 cat_id = request.form['category'] sub_cat_id = request.form['sub_category'] category = db.session.query(Category).get(cat_id) sub_category = db.session.query(SubCategory).get(sub_cat_id) if request.form.get('is_old') is not None: is_old = True else: is_old = False member_list = request.form.getlist('member') adviser_list = request.form.getlist('adviser') member_list.append(int(leader)) skill_list = request.form.getlist('skill') deadline = datetime.strptime(request.form['deadline'], "%m/%d/%Y").date() start_date = datetime.strptime(request.form['start_date'], "%m/%d/%Y").date() is_duplicate = Project.query.filter_by(code=code, name=name).first() if is_duplicate is None: project = Project(name, code, company, description, budget, contingency, leader, coordinator, is_old, start_date, deadline, status) # To add new skill for i in skill_list: skill = db.session.query(Skill).get(i) project.skills.append(skill) # To add new member for i in member_list: member = db.session.query(Student).get(i) project.members.append(member) # To add new adviser for i in adviser_list: adviser = db.session.query(Stakeholder).get(i) project.advisers.append(adviser) project.categories.append(category) project.sub_categories.append(sub_category) project.created_at = datetime.now() generate_planning_hour(project) db.session.add(project) db.session.commit() flash('Project created') return redirect('/project/projects') else: form = CreateProjectForm(request.form) error = 'Duplicate entry' return render_template('create_project.html', error=error, form=form)
def actionUpdate(request, project_id): """Update record""" if not request.user.is_authenticated() or not request.user.is_superuser: return {'code': 'noaccess'}, 404 json_data = False if request.method == 'POST': json_data = json.loads(request.body) if json_data is False: return {'code': 'nodata'}, 404 from app.project.models import Project validateResult, validateCode = Project.validateJsonObject(json_data) if validateCode != 200: return validateResult, validateCode try: project = Project.objects.get(pk=project_id) except Project.DoesNotExist: return {'code': 'project/nofound', 'values': [project]}, 404 #try: validateResult, validateCode = project.updateFromJsonObject(json_data) if validateCode != 200: return validateResult, validateCode project.save() #except: # return {'code': 'project/fail/update'}, 404 return {'code': 'ok', 'data': helpers.itemsToJsonObject([project])}
def actionCreate(request): """Create record""" json_data = False if request.method == 'POST': json_data = json.loads(request.body) if json_data is False: return {'code': 'nodata'}, 404 from app.project.models import Project validateResult, validateCode = Project.validateJsonObject(json_data) if validateCode != 200: return validateResult, validateCode project = Project.objects.create(name=json_data['name'], type=1) # try: validateResult, validateCode = project.updateFromJsonObject(json_data) if validateCode != 200: return validateResult, validateCode project.save() # except: # return {'code': 'project/fail/create'}, 404 return {'code': 'ok', 'data': helpers.itemsToJsonObject([project])}
def actionUpdate(request, project_id): """Update record""" json_data = False if request.method == 'POST': json_data = json.loads(request.body) if json_data is False: return {'code': 'nodata'}, 404 from app.project.models import Project validateResult, validateCode = Project.validateJsonObject(json_data) if validateCode != 200: return validateResult, validateCode return {'code': 'ok', 'data': [json_data]}
def actionCreate(request): """Create record""" json_data = False if request.method == 'POST': json_data = json.loads(request.body) if json_data is False: return {'code': 'nodata'}, 404 from app.project.models import Project validateResult, validateCode = Project.validateJsonObject(json_data) if validateCode != 200: return validateResult, validateCode json_data['tags'][0]['id'] = 101 json_data['images'][0]['id'] = 101 return {'code': 'ok', 'data': [json_data]}