Exemplo n.º 1
0
    def put(self, employee_id):
        data = self.parser.parse_args()

        employee = EmployeeModel.find_by_id(employee_id)

        if employee is None:
            employee = EmployeeModel(employee_id, **data)

        else:
            employee.delete_from_db()  # delete first if find record
            employee = {k: v for k, v in data.items()}
            employee = EmployeeModel(employee_id, **employee)

        employee.save_to_db()
        return employee.json()
Exemplo n.º 2
0
    def post(self):
        err = EmployeeSchema().validate(request.json)
        if err:
            return err

        employee_obj = EmployeeModel(**request.json).save()
        return EmployeeSchema().dump(employee_obj)
Exemplo n.º 3
0
def test_save_employee(app):
    with app.app_context():
        employee = EmployeeModel(first_name='test',
                                 second_name='test2',
                                 username='******')
        employee.save_employee()

        employee_db = EmployeeModel.find_by_id(employee.id)
        assert employee_db is not None
Exemplo n.º 4
0
 def post(self, _id=None):
     data = Employee.parser.parse_args()
     employee = EmployeeModel(**data)
     employee.date = datetime.strptime(employee.date, '%Y-%m-%d').date()
     try:
         employee.save()
     except:
         return {'message': 'An Error Occured while inserting'}, 500
     return employee.json(), 201
Exemplo n.º 5
0
 def post(self, empid):
     data=Employee.parser.parse_args()
     employee=EmployeeModel.find_by_empid(empid)
     if employee:
         return {"message":"Record Already Exist"},201
     else:
         employee=EmployeeModel(empid, data['name'], data['role_id'])
         employee.insert_in_db()
         return employee.json(), 201
Exemplo n.º 6
0
 def put(self, name):
     data = Employee.parser.parse_args()
     employee = EmployeeModel.find_by_name(name)
     if employee:
         employee.salary = data['salary']
     else:
         employee = EmployeeModel(name, **data)
     employee.save_to_db()
     return employee.json()
Exemplo n.º 7
0
 def post(self, name):
     if EmployeeModel.find_by_name(name):
         return {'message': "An employee with name {} already exists".format(name)}, 400
     data = Employee.parser.parse_args()
     employee = EmployeeModel(name, **data)
     try:
         employee.save_to_db()
     except:
         return {"message":"An error occure"},500
     return employee.json(),201
Exemplo n.º 8
0
def test_delete_employee(app):
    with app.app_context():
        employee = EmployeeModel(first_name='test',
                                 second_name='test2',
                                 username='******')
        db.session.add(employee)
        db.session.commit()
        employee.delete_employee()

        employee_db = EmployeeModel.find_by_id(employee.id)
        assert employee_db is None
Exemplo n.º 9
0
    def put(self, _id):
        data = Employee.parse.parse_args()

        employee = EmployeeModel.find_by_id(_id)
        if employee is None:
            employee = EmployeeModel(_id, data['name'], data['title'])
        else:
            employee.name = data['name']
            employee.title = data['title']
        employee.save_to_db()
        return employee.json()
Exemplo n.º 10
0
def test_get_all(app):
    with app.app_context():
        employee = EmployeeModel(first_name='test',
                                 second_name='test2',
                                 username='******')
        db.session.add(employee)
        db.session.commit()

        employee_db = EmployeeModel.get_all()
        assert isinstance(employee_db, list)
        assert len(employee_db) == 1
    def post(self, id):
        edata = parser.parse_args()

        e = EmployeeModel.find_by_id(id)
        if e:
            return {'message': 'Employee already present!!'}

        emp = EmployeeModel(id, edata['emp_name'], edata['city'])

        emp.save_to_db()

        return {'message': 'Employee successfully added'}
Exemplo n.º 12
0
    def put(self, name):
        data = Employee.parser.parse_args()
        employee = EmployeeModel.find_by_name(name)

        if not employee:
            employee = EmployeeModel(name, **data)
        else:
            employee.role = data['role']
            employee.email = data['email']
            employee.store_id = data['store_id']
        employee.save_to_db()

        return employee.json()
Exemplo n.º 13
0
    def post(self, name):
        if EmployeeModel.find_by_name(name):
            return {'message': f'Employee {name} already exists'}, 400

        data = Employee.parser.parse_args()
        employee = EmployeeModel(name, **data)

        try:
            employee.save_to_db()
        except:
            return {'message': 'Error while inserting to DB'}, 500

        return employee.json(), 201
Exemplo n.º 14
0
def test_find_by_id(app):
    with app.app_context():
        employee = EmployeeModel(first_name='test',
                                 second_name='test2',
                                 username='******')
        db.session.add(employee)
        db.session.commit()

        employee_db = EmployeeModel.find_by_id(employee.id)
        assert employee_db.first_name == employee.first_name
        assert employee_db.second_name == employee.second_name
        assert employee_db.username == employee.username
        assert employee_db.id == employee.id
Exemplo n.º 15
0
    def post(self, employee_id):
        employee = EmployeeModel.find_by_id(employee_id)
        if employee:
            return {"msg": "An Employee with id {a} already exists".format(a=employee_id)}, 400

        data = self.parser.parse_args()
        new_employee = EmployeeModel(employee_id, **data)
        new_employee.fullname = new_employee.firstname.strip() + " " + new_employee.lastname.strip()
        try:
            new_employee.save_to_db()
        except:
            return {"msg": "An error occurred adding the Employee"}, 500

        return new_employee.json(), 201
Exemplo n.º 16
0
    def post(self):
        """Add new employee"""
        data = parser_required.parse_args()
        username = data['username']

        if EmployeeModel.find_by_username(username) is not None:
            api.abort(400, f'Employee {username} already exist')

        employee = EmployeeModel(**data)
        try:
            employee.save_employee()
        except:
            api.abort(500, 'Failed to add new employee')

        return employee
    def put(self, id):
        emp = EmployeeModel.find_by_id(id)

        edata = parser.parse_args()

        if not emp:
            emp = EmployeeModel(id, edata['emp_name'], edata['city'])
            emp.save_to_db()
            return {'message': 'New Employee added successfully'}

        else:
            emp.emp_name = edata['emp_name']
            emp.city = edata['city']
            emp.save_to_db()
            return {'message': 'Employee updated successfully'}
Exemplo n.º 18
0
  def post(self):
    data = attributes.parse_args()
    if EmployeeModel.find_employee_name(data.get('name')):
      return {
        'message' : 'Employee {} already exists.'.format(data.get('name'))
      }, 404
    
    employee = EmployeeModel(**data)

    try:
      employee.save()
    except:
      return {
        'message' : 'An error occured trying to create employee.'
      },500
    return employee.json(), 201
Exemplo n.º 19
0
    def post(self):
        data = self.parser.parse_args()

        if EmployeeModel.find_by_email(data["email"]):
            return {
                'message': "The email {} already exists.".format(data["email"])
            }, 400

        valid_data = {key: val for key, val in data.items() if val is not None}
        user = EmployeeModel(**valid_data)

        try:
            user.save_to_db()
        except:
            return {
                "message": "An error occurred while registering this user."
            }, 500

        return user.json(), 201
Exemplo n.º 20
0
    def post(self, _id):

        if EmployeeModel.find_by_id(_id):
            return {
                'message': "Employee with id '{}' already exists.".format(_id)
            }, 400

        data = Employee.parse.parse_args()

        employee = EmployeeModel(_id, data['name'], data['title'])

        try:
            employee.save_to_db()
        except:
            return {
                'message': "An error occured while inserting an employee"
            }, 500

        return employee.json(), 201
Exemplo n.º 21
0
def employees():

    all_my_depts = DepartmentModel.fetch_all_departments()

    allemps = EmployeeModel.fetch_all()
    # print(type(allemps))

    if request.method == 'POST':
        name = request.form['fullName']
        gender = request.form['gender']
        email = request.form['email']
        phone = request.form['phone']
        deptId = request.form['department']
        natId = request.form['natId']
        kraPin = request.form['krapin']
        basicsalary = request.form['basicsalary']
        benefits = request.form['benefits']

        if EmployeeModel.check_nationalId_exists(natId):
            flash('Employee exists', 'danger')
            return redirect(url_for('employees'))
        else:
            emp = EmployeeModel(fullName=name,
                                gender=gender,
                                email=email,
                                phoneNumber=phone,
                                nationalId=natId,
                                department_id=deptId,
                                kraPin=kraPin,
                                basicSalary=basicsalary,
                                benefits=benefits)

            emp.create_record()

            flash('Employee has successfully been added!', 'success')

            return redirect(url_for('employees'))

    return render_template('employees.html',
                           madepts=all_my_depts,
                           employees=allemps)
Exemplo n.º 22
0
    def put(self, _id):
        data = self.parser.parse_args()
        user = EmployeeModel.find_by_id(_id)
        if user:
            user.first_name = data[
                "first_name"]  # if data["first_name"] else user.first_name
            user.middle_name = data["middle_name"]
            user.last_name = data["last_name"]
            user.email = data["email"]
            user.phone_No_1 = data["phone_No_1"]
            user.phone_No_2 = data["phone_No_2"]
            user.phone_No_3 = data["phone_No_3"]
        else:
            valid_data = {
                key: val
                for key, val in data.items() if val is not None
            }
            user = EmployeeModel(**valid_data)

        user.save_to_db()
        return user.json()
def employees():

    all_records = DepartmentModel.fetch_department_records()
    all_employee_records = EmployeeModel.fetch_employee_records()

    if request.method == 'POST':
        employee_name = request.form['fullName']
        department_name = request.form['department']
        gender_name = request.form['gender']
        email_name = request.form['email']
        phoneNumber_name = request.form['phoneNumber']
        idNumber_name = request.form['idNumber']
        KRApin_name = request.form['KRApin']
        salary_name = request.form['salary']
        benefits_name = request.form['benefits']

        if EmployeeModel.check_employee_exist(idNumber_name):
            print('existing record')
        else:
            try:
                employee_record = EmployeeModel(full_name=employee_name,
                                                gender=gender_name,
                                                email=email_name,
                                                phone_number=phoneNumber_name,
                                                national_id=idNumber_name,
                                                kra_pin=KRApin_name,
                                                salary=salary_name,
                                                benefits=benefits_name,
                                                department_id=department_name)
                employee_record.create_record()
                print('Successfully added')
                return redirect(url_for('employees'))

            except Exception as e:
                print("Unable to add record")

    return render_template("employees.html",
                           mydepartments=all_records,
                           myemployees=all_employee_records)
Exemplo n.º 24
0
def employees():
    allDepts = DepartmentModel.fetch_all_departments()
    if request.method == 'POST':
        name = request.form['empName']
        email = request.form['email']
        phone = request.form['phonenum']
        natId = request.form['nationalId']
        krapin = request.form['kra']
        deptname = request.form['department']
        if EmployeeModel.check_employee_exist(natId):
            print('Employee already exist')
        else:
            emp = EmployeeModel(fullName=name,
                                email=email,
                                phoneNumber=phone,
                                nationalId=natId,
                                KRAPin=krapin,
                                dept_id=deptname)
            emp.create()
            print('added')
            return redirect(url_for('employees'))

    return render_template('employees.html', depts=allDepts)
Exemplo n.º 25
0
 def __init__(self):
     logging.info("Creating EmployeeService object")
     self.model = EmployeeModel()