/// <summary> /// Creates a view model for all unconfirmed employees /// </summary> /// <param name="employeeId">Employee id</param> /// <returns>ConfirmEmployeeViewModel which is a DTO which contains the needed info for this operations</returns> public ConfirmEmployeeViewModel ConfirmEmployee(string employeeId) { var user = employeeDataService.GetUncoFirmedEmployee(employeeId); var UnconfirmedEmployeeViewModel = new ConfirmEmployeeViewModel() { EmployeeId = user.EmployeeId, FirstName = user.FirstName, MiddleName = user.MiddleName, LastName = user.LastName, HireDate = user.HireDate, Salary = user.Salary, Town = townDataService.FindById(addressDataService.FindById(user.AdressId).TownId).Name, Address = addressDataService.FindById(user.AdressId).AddressText, JobTitle = jobTitleDataService.FindById(user.JobTitleId).Name, Department = depatmentDataService.FindById(user.DepartmentId).DepartmentName, ManagerNickname = employeeDataService.FindByIdTheUserName(user.ManagerId) }; return(UnconfirmedEmployeeViewModel); }
public async Task <IActionResult> ConfirmEmployeeAsync(ConfirmEmployeeViewModel model) { string managerId; string userId = model.EmployeeId; if (!employeeDataService.Exists(model.ManagerNickname)) { ModelState.AddModelError("ManagerNickname", "Username is inavalid"); return(View(model)); } else { managerId = employeeDataService.FindByNickname(model.ManagerNickname); } await employeeDataService.SetManager(managerId, userId); await employeeDataService.ConfirmEmployee(model.EmployeeId); return(RedirectToAction("UnconfirmedEmployees", "Management")); }