public ActionResult CreateEmployee(User user) { ActionResult retVal = null; if (ModelState.IsValid) { IUserDTO userDTO = (IUserDTO)DTOFactory.Instance.Create(DTOType.UserDTO); userDTO.EmployeeDTO = (IEmployeeDTO)DTOFactory.Instance.Create(DTOType.EmployeeDTO); DTOConverter.FillDTOFromViewModel(userDTO.EmployeeDTO, user.Employee); DTOConverter.FillDTOFromViewModel(userDTO, user); IUserFacade userFacade = (IUserFacade)FacadeFactory.Instance.Create(FacadeType.UserManagerFacade); OperationResult <IUserDTO> result = userFacade.CreateEmployeeByTransaction(userDTO); if (result.IsValid()) { retVal = new JsonResult() { Data = new { Message = "Employee created Successfully", Success = true, RedirectUrl = Url.Action("SearchEmployee", "User") }, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; } else if (result.HasValidationFailed() && (result.ValidationResult != null)) { foreach (EmployeePortalValidationFailure error in result.ValidationResult.Errors) { ModelState.AddModelError(error.PropertyName, error.ErrorMessage); } user.Employee.Departments = FillDepartmentsFromDepartmentList(user.Employee.DepartmentId); retVal = PartialView("~/Views/User/_CreateEmployee.cshtml", user); } else if (result.HasFailed()) { //retVal = RedirectToAction("GetActiveNotices", "Notice"); retVal = new JsonResult() { Data = new { Message = "Employee Creation failed", Success = false, RedirectUrl = Url.Action("SearchEmployee") }, JsonRequestBehavior = JsonRequestBehavior.AllowGet }; } else { retVal = View("~/Views/Shared/Error.cshtml"); } } return(retVal); }
static void CreateEmployeeByTransaction() { IUserDTO userDTO = (IUserDTO)DTOFactory.Instance.Create(DTOType.UserDTO); userDTO.EmployeeDTO = (IEmployeeDTO)DTOFactory.Instance.Create(DTOType.EmployeeDTO); System.Console.WriteLine("First Name : "); userDTO.EmployeeDTO.FirstName = System.Console.ReadLine(); System.Console.WriteLine("Last Name : "); userDTO.EmployeeDTO.LastName = System.Console.ReadLine(); System.Console.WriteLine("Date of Joining : "); DateTime doj; DateTime.TryParse(System.Console.ReadLine(), out doj); userDTO.EmployeeDTO.DateOfJoining = doj; System.Console.WriteLine("Email : "); userDTO.EmployeeDTO.Email = System.Console.ReadLine(); System.Console.WriteLine("Department Id : "); userDTO.EmployeeDTO.DepartmentId = Convert.ToInt32(System.Console.ReadLine()); System.Console.WriteLine("Password : "******"IsAdmin : "); userDTO.IsAdmin = Convert.ToBoolean(0); IUserFacade userFacade = (IUserFacade)FacadeFactory.Instance.Create(FacadeType.UserManagerFacade); OperationResult <IUserDTO> createEmployeeRetVal = userFacade.CreateEmployeeByTransaction(userDTO); if (createEmployeeRetVal.IsValid()) { System.Console.WriteLine("Inserted!! Emp Id : {0} User Id : {1}", createEmployeeRetVal.Data.EmployeeId, createEmployeeRetVal.Data.UserId); } }