def add_task(): data = request.get_json() user_id = current_user.id new_task = Task( user_id=user_id, name=data["name"], description=data["description"], plan=data["plan_id"], ) try: new_task.save(commit=True) except IntegrityError as exc: return jsonify({ "success": False, "result": "Name Taken", "exc": str(exc), }) return jsonify({ "success": True, "result": "Task saved to database", "name": data["name"], "description": data["description"], "taskId": new_task.id, "planId": data["plan_id"], })
def task_create(current_user): if not current_user.admin: return jsonify({'message':'You do not have admin rights!'}), 403 data = request.get_json() try: title = data['title'] description = data['description'] priority = data['priority'] category_id = data['category_id'] category_id = db.session.query(Category.id).filter(Category.id == category_id) # employers = data['employee'] task = Task(title=title, description=description, priority=priority, category_id=category_id) # for employee in employers: # task.employee_backref.append(Employee.query.get_or_404(employee)) db.session.add(task) db.session.commit() return jsonify({'message':'Data add in db!'}), 201 except: db.session.rollback() # flash('Error adding data in DB!', 'danger') return jsonify({'message':'Error when adding data!'})
def launch_task(self, name, description, *args, **kwargs): rq_job = current_app.task_queue.enqueue('app.task.tasks.' + name, *args, **kwargs) task = Task(id=rq_job.get_id(), name=name, description=description, user=self) db.session.add(task) return task
def post(self): args = task_create.parse_args() try: task = Task(title=args['title'], description=args['description'], priority=args['priority'], category_id=args['category_id']) db.session.add(task) db.session.commit() # return jsonify({'message': 'Data add in db!'}), 201 777 ????? return make_response(jsonify({'message': 'Data add in db!'})) except: db.session.rollback() # return jsonify({'message': 'Error when adding data!'}) ????? return make_response(jsonify({'message': 'Error when adding data!'}), 201)
def create_task(): if current_user.roles[0].name != 'ADMIN': return render_template('errors/page_403.html'), 403 if request.method == 'GET': form = CreateTaskForm(request.form) return render_template('create_task.html', form=form) name = request.form['name'] project_id = request.form['project'] project = Project.query.filter_by(id=project_id).first() if project.is_old: actual_hour = request.form.get('actual_hour') else: actual_hour = 0.00 assign_to = request.form['assign_to'] student = db.session.query(Student).get(assign_to) batch = student.batch_id status = request.form['status'] deadline = datetime.strptime(request.form['deadline'], "%m/%d/%Y").date() start_date = datetime.strptime(request.form['start_date'], "%m/%d/%Y").date() semester = db.session.query(Semester)\ .filter(Semester.batch_id == batch)\ .filter(start_date >= Semester.start_date, deadline <= Semester.end_date).first() check_start_date = db.session.query(Project)\ .filter(Project.id == project_id)\ .filter(Project.start_date <= start_date)\ .first() # check_deadline = db.session.query(Project) \ # .filter(Project.id == project_id) \ # .filter(Project.deadline >= deadline) \ # .first() if semester is None: flash( 'Create error! start date and end date need to be within a semester!' ) return redirect('/project/' + project_id) if check_start_date is None: flash('Create error! Earlier than project start date!') return redirect('/project/' + project_id) # if check_deadline is None: # flash('Create error! Exceed project deadline!') # return redirect('/project/' + project_id) planning_hour = (deadline - start_date).days * float( semester.average_intern_hour.intern_hour) / 7 task = Task(name, assign_to, project_id, batch, status, planning_hour, actual_hour, start_date, deadline) task.created_at = datetime.now() db.session.add(task) db.session.commit() flash('Task created') return redirect('/project/' + project_id)
def post(self): args = task_create_args.parse_args() try: #category_obj = Category.query.get_or_404(args['category_id']) task = Task(title=args['title'], description=args['description'], priority=args['priority'], category_id=args['category_id']) # for e in data['employee']: # task.for_empl.append(Employee.query.get_or_404(e)) db.session.add(task) db.session.commit() return task, 201 except: db.session.rollback() abort(400, message="Error occurred during writing the data!")
def seed_data(user_id): """ seed new user profile with dummy data """ for p in range(5): new_plan = Plan( user_id=user_id, name=GEN.sentence(), description=GEN.paragraph() ) new_plan.save(commit=True) for t in range(3): new_task = Task( user_id=user_id, plan=new_plan.id, name=GEN.sentence(), description=GEN.paragraph() ) new_task.save(commit=True)
def task_create(current_user): data = request.get_json() try: # category_obj = Category.query.get_or_404(data['category_id']) task = Task(title=data['title'], description=data['description'], priority=data['priority'], category_id=data['category_id']) #for e in data['employee']: # task.for_empl.append(Employee.query.get_or_404(e)) db.session.add(task) db.session.commit() return jsonify({'message': 'Task successfully created!'}), 201 except: db.session.rollback() return jsonify({'message': 'Error occurred during writing the data!'}), 400