public ActionResult Delete(string ID) { try { REF_REQUEST_TB request = _uow.Repository <REF_REQUEST_TB>().GetById(Convert.ToInt32(ID)); RequestDeleteViewModel requestDeleteViewModel = new RequestDeleteViewModel() { LocationGroup = _locationRepo.GetLocationGroupDescriptionByID(Convert.ToInt32(request.N_LOCATION_GROUP_SYSID)), Message = "", RequestGroup = _requestRepo.GetRequestGroupDescriptionByRequestGroupID(Convert.ToInt32(request.N_REQUEST_GROUP_SYSID)), RequestID = request.N_REQUEST_SYSID, SelectedLocationGroup = request.N_LOCATION_GROUP_SYSID, SelectedRequestGroup = request.N_REQUEST_GROUP_SYSID, SelectedTestGroup = request.N_TEST_GROUP_SYSID, ShowMessage = false, TestGroup = _testRepo.GetTestGroupDescriptionByID(Convert.ToInt32(request.N_TEST_GROUP_SYSID)) }; return(View(requestDeleteViewModel)); } catch (Exception ex) { if (ex.InnerException == null) { ViewBag.Message = "Function: RequestController.Delete_GET\n\nError: " + ex.Message; } else { ViewBag.Message = "Function: RequestController.Delete_GET\n\nError: " + (ex.Message + "\n\nInnerException: " + ex.InnerException.Message); }; Session["ErrorMessage"] = ViewBag.Message; return(RedirectToAction("InternalServerError", "Error")); }; }
public ActionResult Edit(int ID) { try { var requestEditViewModel = new RequestEditViewModel(); if (ID > 0) { REF_REQUEST_TB request = _uow.Repository <REF_REQUEST_TB>().GetById(ID); requestEditViewModel.RequestID = request.N_REQUEST_SYSID; requestEditViewModel.SelectedLocationGroup = request.N_LOCATION_GROUP_SYSID; requestEditViewModel.SelectedRequestGroup = request.N_REQUEST_GROUP_SYSID; requestEditViewModel.SelectedTestGroup = request.N_TEST_GROUP_SYSID; requestEditViewModel.LocationGroups = (List <SelectListItem>)_locationRepo.GetLocationGroupsSelectList(); requestEditViewModel.RequestGroups = (List <SelectListItem>)_requestRepo.GetRequestGroups(); requestEditViewModel.TestGroups = (List <SelectListItem>)_testRepo.GetTestGroupsSelectList(); } else { requestEditViewModel.RequestID = ID; requestEditViewModel.SelectedLocationGroup = 0; requestEditViewModel.SelectedRequestGroup = 0; requestEditViewModel.SelectedTestGroup = 0; requestEditViewModel.LocationGroups = (List <SelectListItem>)_locationRepo.GetLocationGroupsSelectList(); requestEditViewModel.RequestGroups = (List <SelectListItem>)_requestRepo.GetRequestGroups(); requestEditViewModel.TestGroups = (List <SelectListItem>)_testRepo.GetTestGroupsSelectList(); } return(View("Edit", requestEditViewModel)); } catch (Exception ex) { if (ex.InnerException == null) { ViewBag.Message = "Function: RequestController.Edit_GET\n\nError: " + ex.Message; } else { ViewBag.Message = "Function: RequestController.Edit_GET\n\nError: " + (ex.Message + "\n\nInnerException: " + ex.InnerException.Message); }; Session["ErrorMessage"] = ViewBag.Message; return(RedirectToAction("InternalServerError", "Error")); }; }
public ActionResult Edit(RequestEditViewModel Model, bool IsTest = false) { bool saveFailed; do { saveFailed = false; try { if (ModelState.IsValid) { int id = 0; if (Model.RequestID == 0) //new { string enteredBy = IsTest ? "Unit Test Case" : _modifiedBy; REF_REQUEST_TB request = new REF_REQUEST_TB() { B_INACTIVE = false, DT_ENTERED = DateTime.UtcNow, DT_MODIFIED = DateTime.UtcNow, N_LOCATION_GROUP_SYSID = Model.SelectedLocationGroup, N_REQUEST_GROUP_SYSID = Model.SelectedRequestGroup, N_TEST_GROUP_SYSID = Model.SelectedTestGroup, SZ_ENTERED_BY = enteredBy, SZ_MODIFIED_BY = _modifiedBy }; _uow.Repository <REF_REQUEST_TB>().Add(request); _uow.SaveChanges(); REF_REQUEST_TB requestFound = _uow.Repository <REF_REQUEST_TB>().Find(u => u.SZ_ENTERED_BY == enteredBy && u.SZ_MODIFIED_BY == _modifiedBy && u.N_LOCATION_GROUP_SYSID == Model.SelectedLocationGroup && u.N_REQUEST_GROUP_SYSID == Model.SelectedRequestGroup && u.N_TEST_GROUP_SYSID == Model.SelectedTestGroup ).FirstOrDefault(); id = requestFound.N_REQUEST_SYSID; } else //edit { REF_REQUEST_TB request = _uow.Repository <REF_REQUEST_TB>().GetById(Model.RequestID); request.DT_MODIFIED = DateTime.UtcNow; request.N_LOCATION_GROUP_SYSID = Model.SelectedLocationGroup; request.N_REQUEST_GROUP_SYSID = Model.SelectedRequestGroup; request.N_TEST_GROUP_SYSID = Model.SelectedTestGroup; request.SZ_MODIFIED_BY = _modifiedBy; _uow.Repository <REF_REQUEST_TB>().Update(request); _uow.SaveChanges(); id = Model.RequestID; } return(RedirectToAction("Index", new { ID = id })); } Model.LocationGroups = (List <SelectListItem>)_locationRepo.GetLocationGroupsSelectList(); Model.RequestGroups = (List <SelectListItem>)_requestRepo.GetRequestGroups(); Model.TestGroups = (List <SelectListItem>)_testRepo.GetTestGroupsSelectList(); return(View(Model)); } catch (DbEntityValidationException ex) { StringBuilder sb = new StringBuilder(); foreach (var failure in ex.EntityValidationErrors) { sb.AppendFormat("{0} failed validation:\n\n", failure.Entry.Entity.GetType()); foreach (var error in failure.ValidationErrors) { sb.AppendFormat("- {0} : {1}", error.PropertyName, error.ErrorMessage); sb.AppendLine(); } } if (ex.InnerException == null) { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message + "\n\n" + sb; } else { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message + "\n\n" + sb + "\n\n" + ex.InnerException.Message; }; } catch (DbUpdateConcurrencyException ex) { saveFailed = true; var entry = ex.Entries.Single(); entry.OriginalValues.SetValues(entry.GetDatabaseValues()); } catch (DataException ex) { if (ex.InnerException == null) { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message + "\n\nBaseException: " + ex.GetBaseException().Message; } else { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message + "\n\nBaseException: " + ex.GetBaseException().Message + "\n\nInnerException: " + ex.InnerException.Message; }; } catch (Exception ex) { if (ex.InnerException == null) { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message; } else { ViewBag.Message = "Function: RequestController.Edit_POST\n\nError: " + ex.Message + "\n\nBaseException: " + ex.InnerException.Message; }; }; } while (saveFailed); Session["ErrorMessage"] = ViewBag.Message; return(RedirectToAction("InternalServerError", "Error")); }