public async Task <IActionResult> AssignLicenseUser(string licenseId) { try { var license = await _licenseInterface.GetLicense(licenseId, Request.Cookies["AssetReference"].ToString()); if (license == null) { return(RedirectToAction("Index", "Error")); } var user = await _userStaffInterface.GetUserStaffs(Request.Cookies["AssetReference"].ToString()); if (user == null) { return(RedirectToAction("Index", "Error")); } //Map the objects results to corresponding DTO's LicenseDTO licenseDTO = _mapper.Map <LicenseDTO>(license); List <UserStaffDTO> userStaffDTO = _mapper.Map <List <UserStaffDTO> >(user); //Instantiate LicenseUserViewModel var licenseUserViewModel = new LicenseUserViewModel() { LicenseDTO = licenseDTO, UserStaffDTOs = userStaffDTO }; //Set the Date to its initial value var date = DateTime.Now; ViewBag.Date = date.ToString("yyyy-MM-dd"); ViewBag.LicenseId = licenseUserViewModel.LicenseDTO.Id; return(View(licenseUserViewModel)); } catch (Exception ex) { _logger.LogError($"Error encountered in LicenseController||AssignLicenseUser ErrorMessage: {ex.Message}"); return(RedirectToAction("Index", "Error")); } }
public async Task <IActionResult> AssignLicenseUser(LicenseUserViewModel licenseUserViewModel) { try { if (!ModelState.IsValid) { return(View(licenseUserViewModel)); } //Check if the user is already assigned in target asset var checkUser = await _userLicenseInterface.GetUserOfLicense(licenseUserViewModel.UserStaffId.ToString(), Request.Cookies["AssetReference"].ToString()); var userLicense = new UserLicense() { LicenseId = licenseUserViewModel.LicenseId, UserStaffId = licenseUserViewModel.UserStaffId, IssuedOn = licenseUserViewModel.IssuedOn, ReturnedOn = licenseUserViewModel.ReturedOn, IsActive = "Yes" }; var result = await _userLicenseInterface.CreateUserLicense(userLicense, Request.Cookies["AssetReference"].ToString()); if (result.ResponseCode != HttpStatusCode.OK.ToString()) { ViewBag.ErrorResponse = result.ResponseMessage; return(View()); } var license = new License() { Id = licenseUserViewModel.LicenseId, IsAssigned = "Yes" }; var response = await _licenseInterface.EditLicense(license, Request.Cookies["AssetReference"].ToString()); if (response.ResponseCode != HttpStatusCode.OK.ToString()) { return(RedirectToAction("Index", "Error")); } var user = await _userStaffInterface.GetUserStaffs(Request.Cookies["AssetReference"].ToString()); if (user == null) { return(RedirectToAction("Index", "Error")); } //Map the objects results to corresponding DTO's List <UserStaffDTO> userStaffDTO = _mapper.Map <List <UserStaffDTO> >(user); //Instantiate AssetsUserVIewModel var model = new LicenseUserViewModel() { UserStaffDTOs = userStaffDTO }; ViewBag.LicenseId = userLicense.LicenseId; return(View(model)); } catch (Exception ex) { _logger.LogError($"Error encountered in LicenseController||AssignLicenseUser ErrorMessage: {ex.Message}"); return(RedirectToAction("Index", "Error")); } }