//[ResponseCache(Location = ResponseCacheLocation.None, NoStore = true)] public async Task <IActionResult> Details(WorkPermitDetailViewModel formData) { try { if (ModelState.IsValid) { //if (DateTime.Parse(formData.ExpiryDate) <= DateTimeOffset.Now) //{ // ModelState.AddModelError("WorkPermits", $"Employee WorkPermit Expiry Date {formData.ExpiryDate} can't be now or less than today, Please enter a valid WorkPermit expiry date greater than today."); //} //else if (DateTimeOffset.Now.Date.Day - DateTime.Parse(formData.ExpiryDate).Day <= 7) //{ // int days = DateTime.Parse(formData.ExpiryDate).Day - DateTimeOffset.Now.Date.Day; // ModelState.AddModelError("WorkPermits", $"Employee WorkPermit can't be expiring in {days} days, Please enter a valid date that expiries in 8 days and above ."); //} //else //{ //bool bIfExist = false; //var q = from c in _db.WorkPermits where c.WorkPermitNumber == formData.WorkPermitNumber select c; //try //{ // q.ToList()[0].WorkPermitNumber.ToString(); // bIfExist = true; //} //catch { } //if (bIfExist == true) //{ // ModelState.AddModelError("WorkPermits", $"Can not register duplicate record. {formData.WorkPermitNumber} is already registered"); //} //else //{ await _workPermitServices.UpdateWorkPermitAsync(new WorkPermit { EmployeeId = formData.EmployeeId, WorkPermitNumber = formData.WorkPermitNumber, ExpiryDate = DateTime.Parse(formData.ExpiryDate), UserAccount = User.Identity.Name, Id = formData.Id }); TempData["Message"] = "Changes saved successfully"; _logger.LogInformation($"Successfully updated employee workpermit {formData.WorkPermitNumber} record by user={@User.Identity.Name.Substring(4)}"); return(RedirectToAction("details", new { id = formData.Id })); } } catch (ApplicationException error) { ModelState.AddModelError("WorkPermit", $"Can not workpermit record. {formData.WorkPermitNumber} Contact IT ServiceDesk for support thank you."); _logger.LogError( error, $"FAIL: failed to update employee workpermit {formData.EmployeeId}. Internal Application Error.; user={@User.Identity.Name.Substring(4)}"); } await LoadSelectListsAsync(); return(View(formData)); }
//[ResponseCache(Location = ResponseCacheLocation.None, NoStore = true)] public async Task <IActionResult> Details(Guid id) { var workPermitQuery = await _workPermitServices.GetWorkPermitById(id); if (workPermitQuery == null) { return(NotFound()); } var model = new WorkPermitDetailViewModel { EmployeeId = workPermitQuery.EmployeeId ?? Guid.Empty, WorkPermitNumber = workPermitQuery.WorkPermitNumber, Id = workPermitQuery.Id, ExpiryDate = workPermitQuery.ExpiryDate == null ? string.Empty : DateTime.Parse(workPermitQuery.ExpiryDate.ToString()).ToString("yyyy-MM-dd") }; await LoadSelectListsAsync(); return(View(model)); }