Beispiel #1
0
def update_employee(self, employee_id):
    # -------------------------
    # Update data of employee
    # -------------------------
    if request.form.get('_method') != 'PUT':
        app.logger.Info(
            'Cannot perform this action. Please contact administrator')
        abort(405)

    employee = Employee(id=employee_id)

    try:
        employee = employee.list_one_or_none_employee()

        if employee is None:
            app.logger.info(
                f'No data with Employee ID = {employee_id} could be found!')
            abort(422)
    except BaseException:
        app.logger.info(
            f'An error occurred. No data with Employee ID\
                 = {employee_id} could be found!')
        abort(422)

    employee.id = employee_id
    employee.name = request.form.get('name', employee.name)

    temp = request.form.get('department_name')
    employee.department_id = temp.split(' - ', 2)[0]

    employee.title = request.form.get('title', employee.title)
    employee.emp_number = request.form.get('emp_number', employee.emp_number)
    employee.address = request.form.get('address', employee.address)
    employee.phone = request.form.get('phone', employee.phone)
    employee.wage = request.form.get('wage', employee.wage)
    employee.is_active = 'is_active' in request.form

    try:
        employee.update_employee_in_database()
        flash(
            f'Employee {employee_id} was successfully updated!',
            'success')
    except BaseException:
        app.log.info(f'An error occurred. Employee {employee_id} \
            could not be updated!')
        abort(422)

    return redirect(url_for('employees'))
Beispiel #2
0
def create_Employee(emp : createEmployee, db : Session = Depends(get_db)): 
    _employee = Employee()
    _employee.id = emp.id
    _employee.name = emp.name
    _employee.email = emp.email
    _employee.position = emp.position
    _employee.works_on: emp.works_on
    _employee.reporting_manager : emp.reporting_manager
    db.add(_employee)
    db.commit()
    # Background_tasks.add_task(fetch_emp_data,employee.id)
    
    return{
        "code":"Success",
        "messege": "Employee created the name"+emp.name
    }
Beispiel #3
0
def line_to_employee(db, feed_line):
    data = {}
    
    # Every line starts with a field, then a tab
    (email_name, tail) = feed_line.split('\t')
    data['email_name'] = email_name

    # Split tail by double spaces and find any fields with data
    def keep_it(s):
        s = s.strip()
        return s != "" and s != "xxx"
    tail_items = [x.strip() for x in tail.split('  ') if keep_it(x)]

    # Try to match fields with known headers
    tail_cols = ['full_name', 'position', 'comments']
    for field,value in zip(tail_cols, tail_items):
        data[field] = value

    employee_doc = Employee(**data) 
    employee_id = insert_employee(db, employee_doc)
    employee_doc.id = employee_id
    
    return employee_doc
Beispiel #4
0
async def create_employee(employee: Employee):
    ret = db.employees.insert_one(employee.dict(by_alias=True))
    employee.id = ret.inserted_id
    return {'employee': employee}