Пример #1
0
def create_schedule():
    data = request.get_json() or {}
    data['schedule_area'] = Area.query.filter_by(
        name=data['schedule_area'] or None).first()
    data['schedule_shift'] = Shift.query.filter_by(
        name=data['schedule_shift'] or None).first()
    for time in [
            'start1', 'start2', 'start3', 'start4', 'end1', 'end2', 'end3',
            'end4'
    ]:
        data[time] = dfs(data[time])
    schedule = Schedule.query.filter_by(schedule_area=data['schedule_area'],
                                        schedule_shift=data['schedule_shift'],
                                        name=data['name']).first()
    if schedule:
        s = schedule
    else:
        s = Schedule()
    s.from_dict(data)
    db.session.add(s)
    db.session.commit()
    response = jsonify(s.to_dict())
    response.status_code = 201
    response.headers['Location'] = url_for('api.get_kpi', id=s.id)
    return response
Пример #2
0
def update_Schedule(id):
    entity = Schedule.query.get(id)
    if not entity:
        abort(404)
    entity = Schedule(
        date=datetime.datetime.strptime(request.json['date'][:10], "%Y-%m-%d").date(),
        shift_name=request.json['shift_name'],
        employee_id=request.json['employee_id'],
        manager_id=request.json['manager_id'],
        is_in_duty=request.json['is_in_duty'],
        assigned_machine=request.json['assigned_machine'],
        sign_in_at=datetime.datetime.strptime(request.json['sign_in_at'][:10], "%Y-%m-%d").date(),
        sign_out_at=datetime.datetime.strptime(request.json['sign_out_at'][:10], "%Y-%m-%d").date(),
        id=id
    )
    db.session.merge(entity)
    db.session.commit()
    return jsonify(entity.to_dict()), 200
Пример #3
0
def update_Schedule(id):
    entity = Schedule.query.get(id)
    if not entity:
        abort(404)
    entity = Schedule(
        date=datetime.datetime.strptime(request.json['date'][:10],
                                        "%Y-%m-%d").date(),
        shift_name=request.json['shift_name'],
        employee_id=request.json['employee_id'],
        manager_id=request.json['manager_id'],
        is_in_duty=request.json['is_in_duty'],
        assigned_machine=request.json['assigned_machine'],
        sign_in_at=datetime.datetime.strptime(request.json['sign_in_at'][:10],
                                              "%Y-%m-%d").date(),
        sign_out_at=datetime.datetime.strptime(
            request.json['sign_out_at'][:10], "%Y-%m-%d").date(),
        id=id)
    db.session.merge(entity)
    db.session.commit()
    return jsonify(entity.to_dict()), 200