public void updateEmployee(EmployeeDTO employeeDTO) { Employee employee = employeeRepository.findOneByEmail(employeeDTO.getEmail()).get(); if (checkIfValidEntity(employee)) { employee.setFunctionalLevel(employeeDTO.getFunctionalLevel()); employee.setActive(employeeDTO.getActive()); if (employeeDTO.getActive() == false && employee.getCurrentCar() != null) { moveCurrentCarToCarHistory(employee); } employeeRepository.save(employee); } }
@Override public Employee createEmployee(EmployeeDTO employeeDTO) { Employee employee = new Employee(); employee.setEmail(employeeDTO.getEmail()); employee.setPasswordHash(hashPassword(employeeDTO.getPassword())); employee.setRole(employeeDTO.getRole()); return employeeRepository.save(employee); }
@Override public CarDTO assignPoolCarToEmployee(EmployeeDTO employeeDTO, CarDTO carDTO) { Employee employee = employeeRepository.findOneByEmail(employeeDTO.getEmail()).get(); updatePoolCar(carRepository.findOne(carDTO.getId())); Car currentCar = employee.getCurrentCar(); if (currentCar != null) { Set<Car> carHistory = employee.getCarHistory(); currentCar.setEndLeasing(LocalDate.now()); carHistory.add(currentCar); } employee.setCurrentCar(carRepository.findOne(carDTO.getId())); employee.setReceivedMailForNewCar(false); employeeRepository.save(employee); return carDTO; }
@Override public EmployeeDTO getEmployeeById(long id) { Optional<Employee> employee = Optional.ofNullable(employeeRepository.findOne(id)); if (employee.isPresent()) { return mapEmployeeToEmployeeDtoObject(employee.get()); } else { throw new IllegalArgumentException("there is no employee found with id " + id); } }
@Override public Collection<EmployeeDTO> getAllEmployees() { // List<Employee> employeeList = employeeRepository.findAll(new Sort("email")); // List<EmployeeDTO> employeeDTOList = new ArrayList<>(); // for (Employee employee : employeeList) { // employeeDTOList.add(mapEmployeeToEmployeeDtoObject(employee)); // } // return employeeDTOList; return mapEmployeeListToEmployeeDTOList(employeeRepository.findAll(new Sort("email"))); }
@Override public EmployeeDTO getEmployeeDtoByEmail(String email) { Optional<Employee> employee = employeeRepository.findOneByEmail(email); if (employee.isPresent()) { return mapEmployeeToEmployeeDtoObject(employee.get()); } else { throw new IllegalArgumentException( "there is no employee found with email ' " + email + " '."); } }
@Override public CarDTO assignCarToEmployee( Order order, int leasingDurationInYears, String numberPlate, String vinNumber) { Employee employee = order.getEmployee(); if (employee.getCurrentCar() != null) { moveCurrentCarToCarHistory(employee); } Car car = createNewCarFromOrder(order, leasingDurationInYears, numberPlate, vinNumber); employee.setCurrentCar(car); employeeRepository.save(employee); return CarMapper.mapCarObjectToCarDTO(car); }
@Override public Optional<Employee> getOptionalEmployeeByEmail(String email) { return employeeRepository.findOneByEmail(email); }
@Override public List<EmployeeDTO> getAllEmployeesByActive(boolean isActive) { return mapEmployeeListToEmployeeDTOList(employeeRepository.findAllByActive(isActive)); }