public EmployeeFormController(EmployeeValidator employeeValidator){
this.employeeValidator = employeeValidator;
}
@Autowired
IDepartmentService departmentManagerService;
@Autowired
IEmployeeService employeeManagerService;
final Log logger = LogFactory.getLog(getClass());
@RequestMapping(method = RequestMethod.POST)
public String processSubmit(@ModelAttribute ("employee") EmployeeDto employee,
BindingResult result, SessionStatus status,
HttpServletRequest request, ModelMap model) {
if(isSave(request)){
employeeValidator.validate(employee, result);
if(!result.hasErrors()){
if(employee.getId()!=null){
employeeManagerService.update(employee);
logger.info("Update employee, name - "+employee.getName()+"; wage - "+employee.getWage()+"; id- "+employee.getId()+"; for " +request.getRemoteAddr());
}else{
Long id = employeeManagerService.save(employee);
employee.setId(id);
logger.info("Save new employee, name - "+employee.getName()+"; wage - "+employee.getWage()+"; id- "+employee.getId()+"; for " +request.getRemoteAddr());
}
}
}
if(isNew(request)){
forceBind(employee, new EmployeeDto());
}
if(isDelete(request)){
logger.info("Delete employee, name - "+employee.getName()+"; wage - "+employee.getWage()+"; id- "+employee.getId()+"; for " +request.getRemoteAddr());