def delete(self, employee_id): employee = EmployeeModel.find_by_id(employee_id) if employee: employee.delete_from_db() return {"msg": "Employee with ID {a} was deleted".format(a=employee_id)}, 200 else: return {"msg": "Employee with ID {a} was not found".format(a=employee_id)}, 400
def find_all(cls, user, employee_id): from models.employee import EmployeeModel records = cls.query.filter_by(employee_id=employee_id).all() if records and EmployeeModel.find_by_id(employee_id, user): return records
def put(employee_id): """Update employee""" data = parser.parse_args() first_name = data['first_name'] second_name = data['second_name'] username = data['username'] if first_name is None and second_name is None and username is None: api.abort(400, 'You need to specify minimum one parameter') employee = EmployeeModel.find_by_id(employee_id) if employee is not None: if first_name is not None: employee.first_name = first_name if second_name is not None: employee.second_name = second_name if username is not None: if EmployeeModel.find_by_username(username) is not None: api.abort(400, f'Employee {username} already exist') employee.username = username try: employee.save_employee() except: api.abort(500, 'Failed to update employee') return employee api.abort(404, f'Employee {employee_id} does not exist')
def delete(self, id): emp = EmployeeModel.find_by_id(id) if not emp: return {'message': 'Employee not found!! :( '} emp.delete_from_db() return {'message': 'Employee is deleted successfully!! :) '}
def get(self, _id=None): if not _id: return {'message': 'Route Parameter _id is missing'}, 400 employee = EmployeeModel.find_by_id(_id) if employee: return employee.json() return {'message': 'Employee not found'}, 404
def find_by_id(cls, _id, user): from models.employee import EmployeeModel e_cont = cls.query.filter_by(id=_id).first() if e_cont: if EmployeeModel.find_by_id(e_cont.employee_id, user): return e_cont
def find_by_id(cls, _id, user): from models.employee import EmployeeModel record = cls.query.filter_by(id=_id).first() if record: if EmployeeModel.find_by_id(record.employee_id, user): return record
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
def find_by_id(cls, _id, user): from models.employee import EmployeeModel from models.uniform_item import UniformItemModel record = cls.query.filter_by(id=_id).first() if record: if UniformItemModel.find_by_id(record.uniform_item_id, user) and \ EmployeeModel.find_by_id(record.employee_id, user): return record
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
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()
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'}
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
def delete(self, _id=None): if not _id: return {'message': 'Route Parameter _id is missing'}, 400 employee = EmployeeModel.find_by_id(_id) if not employee: return {'message': 'Employee not found'}, 404 try: employee.delete() except: return {'message': 'An Error Occured while deleting'}, 500 return {'message': 'Employee Deleted'}
def delete(employee_id): """Delete employee""" employee = EmployeeModel.find_by_id(employee_id) used_hardware = UsedHardwareModel.find_by_employee_id(employee_id) # First unlink all hardware, then delete if used_hardware: UsedHardwareModel.delete_links(employee_id) if employee is not None: employee.delete_employee() return employee api.abort(404, f'Employee {employee_id} does not exist')
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
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'}
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()
def delete(self, _id): user = EmployeeModel.find_by_id(_id) if user: try: user.delete_from_db() except: return { "message": "An error occurred while deleting this user." }, 500 return {'message': 'User deleted.'} return { 'message': "The user you're trying to delete doesn't exist." }, 400
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
def put(self, _id=None): if not _id: return {'message': 'Route Parameter _id is missing'}, 400 data = Employee.parser.parse_args() employee = EmployeeModel.find_by_id(_id) if not employee: return {'message': 'Employee not found'}, 404 if employee: employee.name = data['name'] employee.status = data['status'] employee.date = datetime.strptime(data['date'], '%Y-%m-%d').date() try: employee.save() except: return {'message': 'An Error Occured while updating'}, 500 return employee.json()
def put(hardware_id): """Update employee linked to hardware""" data = parser_used.parse_args() employee_id = data['employee_id'] employee = EmployeeModel.find_by_id(employee_id) if employee is None: api.abort(400, f'Employee {employee_id} does not exist') hardware = UsedHardwareModel.find_by_hardware_id(hardware_id) if hardware is not None: hardware.employee_id = employee_id try: hardware.save_link() except: api.abort(500, 'Failed to update employee') return hardware api.abort( 400, f'Hardware {hardware_id} is not in use and cannot by modified')
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 post(hardware_id): """Link hardware with employee""" data = parser_used.parse_args() data['hardware_id'] = hardware_id employee_id = data['employee_id'] if HardwareModel.find_by_id(hardware_id) is None: api.abort(400, f'Hardware {hardware_id} does not exist') if EmployeeModel.find_by_id(employee_id) is None: api.abort(400, f'Employee {employee_id} does not exist') if UsedHardwareModel.find_by_hardware_id(hardware_id) is not None: api.abort(400, f'Hardware {hardware_id} already in use') hardware = UsedHardwareModel(**data) try: hardware.save_link() except: api.abort(500, 'Failed to link hardware') return hardware
def get(self, employee_id): employee = EmployeeModel.find_by_id(employee_id) if employee: temp = employee.json_ts() metrics = employee.json() temp_ts = temp["employee_ts"] to_return = { "code": 0, "result": { "page": 1, "page_size": 10, "total_count": len(temp_ts), "page_count": math.ceil(len(temp_ts) / 10), "employee_id": temp["employee_id"], "firstname": temp["firstname"], "lastname": temp["lastname"], "prod_hours": metrics["prod_hours"], "prod_hours_max": 3000, "sales": metrics["sales"], "sales_max": 800, "avg_speed_answer": metrics["avg_speed_answer"], "avg_speed_answer_max": 15, "avg_handle": metrics["avg_handle"], "avg_handle_max": 10, "first_call_resolution": metrics["first_call_resolution"], "first_call_resolution_max": 1, "customer_satisfaction": metrics["customer_satisfaction"], "customer_satisfaction_max": 5, "ratings": metrics["ratings"], "ratings_max": 5, "data_list": temp_ts } } return to_return return {"msg": "No Employee with that ID"}, 404
def get(self, id): emp = EmployeeModel.find_by_id(id) if not emp: return {'message': 'Employee not found!! :( '} return emp.json()
def get(self, _id): user = EmployeeModel.find_by_id(_id) if user: return user.json() return {"message": "No matching account."}, 404
def delete(self, _id): employee = EmployeeModel.find_by_id(_id) if employee: employee.delete_from_db() return {'message': 'successfully deleted the employee'}
def get(self, _id): employee = EmployeeModel.find_by_id(_id) if employee: return employee.json() return {'message': 'Employee not found'}, 404
def get(employee_id): """Fetch an employee given its identifier""" employee = EmployeeModel.find_by_id(employee_id) if employee is not None: return employee api.abort(404, f'Employee {employee_id} does not exist')