Beispiel #1
0
        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));
        }
Beispiel #2
0
        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);
        }