public JsonResult Update(EmployeeDetailView vm) { GetEmployeeRequest request = new GetEmployeeRequest(); request.EmployeeID = vm.EmployeeID; ModifyEmployeeRequest updateRequest = _employeeService.GetEmployee(request).Employee.ConvertToModifyEmployeeRequest(); updateRequest.EmployeeID = vm.EmployeeID; updateRequest.LastName = vm.LastName; updateRequest.FirstName = vm.FirstName; updateRequest.Title = vm.Title; updateRequest.TitleOfCourtesy = vm.TitleOfCourtesy; updateRequest.BirthDate = vm.BirthDate; updateRequest.HireDate = vm.HireDate; updateRequest.Address = vm.Address; updateRequest.City = vm.City; updateRequest.Region = vm.Region; updateRequest.PostalCode = vm.PostalCode; updateRequest.Country = vm.Country; updateRequest.HomePhone = vm.HomePhone; updateRequest.Extension = vm.Extension; updateRequest.Photo = vm.Photo; updateRequest.Notes = vm.Notes; GetEmployeeRequest employeeRequest = new GetEmployeeRequest(); employeeRequest.EmployeeID = vm.EmployeeReferenceEmployeeID; updateRequest.EmployeeReference = _employeeService.GetEmployee(employeeRequest).Employee; updateRequest.PhotoPath = vm.PhotoPath; ModifyEmployeeResponse response = _employeeService.ModifyEmployee(updateRequest); return(Json(response)); }
public ModifyEmployeeResponse ModifyEmployee(ModifyEmployeeRequest request) { ModifyEmployeeResponse response = new ModifyEmployeeResponse(); Employee employee = _employeeRepository .FindBy(request.EmployeeID); employee.Id = request.EmployeeID; employee.LastName = request.LastName; employee.FirstName = request.FirstName; employee.Title = request.Title; employee.TitleOfCourtesy = request.TitleOfCourtesy; employee.BirthDate = request.BirthDate; employee.HireDate = request.HireDate; employee.Address = request.Address; employee.City = request.City; employee.Region = request.Region; employee.PostalCode = request.PostalCode; employee.Country = request.Country; employee.HomePhone = request.HomePhone; employee.Extension = request.Extension; employee.Photo = request.Photo; employee.Notes = request.Notes; employee.PhotoPath = request.PhotoPath; employee.Territories = request.Territories.ConvertToTerritories(); employee.Orders = request.Orders.ConvertToOrders(); employee.EmployeeReference = request.EmployeeReference.ConvertToEmployee(); if (employee.GetBrokenRules().Count() > 0) { response.Errors = employee.GetBrokenRules().ToList(); } else { try { _employeeRepository.Save(employee); _uow.Commit(); response.Errors = new List <BusinessRule>(); } catch (Exception ex) { response.Errors = new List <BusinessRule>(); response.Errors.Add(new BusinessRule("DAL", "DAL_ERROR: " + ex.Message)); } } return(response); }