//Get items public List <PolicyOtherGroupItemDataTableItem> GetPolicyOtherGroupItemDataTableItems(int policyGroupId, int policyOtherGroupHeaderId) { List <PolicyOtherGroupItemDataTableItem> policyOtherGroupItemDataTableItems = new List <PolicyOtherGroupItemDataTableItem>(); PolicyOtherGroupItem policyOtherGroupItem = new PolicyOtherGroupItem(); PolicyOtherGroupItemRepository policyOtherGroupItemRepository = new PolicyOtherGroupItemRepository(); policyOtherGroupItem = policyOtherGroupItemRepository.GetPolicyOtherGroupItem(policyGroupId, policyOtherGroupHeaderId); //Get Columns List <PolicyOtherGroupHeaderColumnName> policyOtherGroupHeaderColumnNames = new List <PolicyOtherGroupHeaderColumnName>(); PolicyOtherGroupHeaderColumnNameRepository policyOtherGroupHeaderColumnNameRepository = new PolicyOtherGroupHeaderColumnNameRepository(); policyOtherGroupHeaderColumnNames = policyOtherGroupHeaderColumnNameRepository.GetPolicyOtherGroupHeaderColumnNames(policyOtherGroupHeaderId); if (policyOtherGroupHeaderColumnNames != null) { foreach (PolicyOtherGroupHeaderColumnName item in policyOtherGroupHeaderColumnNames) { PolicyOtherGroupItemDataTableItem policyOtherGroupItemDataTableItem = new PolicyOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = item.PolicyOtherGroupHeaderColumnNameId, PolicyOtherGroupHeaderColumnName = item }; policyOtherGroupItemDataTableItems.Add(policyOtherGroupItemDataTableItem); } } return(policyOtherGroupItemDataTableItems); }
//Get items public List <PolicyOtherGroupItemDataTableItem> GetPolicyOtherGroupItemDataTableItems(int policyOtherGroupItemDataTableRowId, int policyOtherGroupHeaderId) { List <PolicyOtherGroupItemDataTableItem> policyOtherGroupItemDataTableItems = new List <PolicyOtherGroupItemDataTableItem>(); List <int> policyOtherGroupHeaderColumnNameIds = new List <int>(); //Get Completed Columns List <PolicyOtherGroupItemDataTableItem> policyOtherGroupItemDataTableItemsCompleted = new List <PolicyOtherGroupItemDataTableItem>(); policyOtherGroupItemDataTableItemsCompleted = db.PolicyOtherGroupItemDataTableItems.Where( c => c.PolicyOtherGroupItemDataTableRowId == policyOtherGroupItemDataTableRowId ).ToList(); foreach (PolicyOtherGroupItemDataTableItem policyOtherGroupItemDataTableItem in policyOtherGroupItemDataTableItemsCompleted) { policyOtherGroupItemDataTableItems.Add(policyOtherGroupItemDataTableItem); policyOtherGroupHeaderColumnNameIds.Add(policyOtherGroupItemDataTableItem.PolicyOtherGroupHeaderColumnNameId); } //Get Empty Columns List <PolicyOtherGroupHeaderColumnName> policyOtherGroupHeaderColumnNames = new List <PolicyOtherGroupHeaderColumnName>(); PolicyOtherGroupHeaderColumnNameRepository policyOtherGroupHeaderColumnNameRepository = new PolicyOtherGroupHeaderColumnNameRepository(); policyOtherGroupHeaderColumnNames = policyOtherGroupHeaderColumnNameRepository.GetIncompletePolicyOtherGroupHeaderColumnNames( policyOtherGroupHeaderId, policyOtherGroupHeaderColumnNameIds); foreach (PolicyOtherGroupHeaderColumnName item in policyOtherGroupHeaderColumnNames) { PolicyOtherGroupItemDataTableItem policyOtherGroupItemDataTableItem = new PolicyOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = item.PolicyOtherGroupHeaderColumnNameId, PolicyOtherGroupHeaderColumnName = item }; policyOtherGroupItemDataTableItems.Add(policyOtherGroupItemDataTableItem); } return(policyOtherGroupItemDataTableItems.OrderBy(x => x.PolicyOtherGroupHeaderColumnName.ColumnName).ToList()); }
public ActionResult Edit(PolicyOtherGroupItemDataTableItemVM policyOtherGroupItemDataTableItemVM, FormCollection formCollection) { //Check Policy Exists PolicyGroup policyGroup = new PolicyGroup(); policyGroup = policyGroupRepository.GetGroup(policyOtherGroupItemDataTableItemVM.PolicyGroup.PolicyGroupId); if (policyGroup == null) { ViewData["ActionMethod"] = "CreatePost"; return(View("RecordDoesNotExistError")); } //Check PolicyOtherGroupHeader Exists PolicyOtherGroupHeader policyOtherGroupHeader = new PolicyOtherGroupHeader(); policyOtherGroupHeader = policyOtherGroupHeaderRepository.GetPolicyOtherGroupHeader(policyOtherGroupItemDataTableItemVM.PolicyOtherGroupHeader.PolicyOtherGroupHeaderId); if (policyOtherGroupHeader == null) { ViewData["ActionMethod"] = "CreatePost"; return(View("RecordDoesNotExistError")); } //We need to extract group from groupVM List <PolicyOtherGroupItemDataTableItem> policyOtherGroupItemDataTableItems = new List <PolicyOtherGroupItemDataTableItem>(); foreach (string item in formCollection) { if (item.StartsWith("PolicyOtherGroupHeaderColumnNameId")) { PolicyOtherGroupItemDataTableItem policyOtherGroupItemDataTableItem = new PolicyOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = Int32.Parse(item.Replace("PolicyOtherGroupHeaderColumnNameId_", "")), TableDataItem = formCollection[item] }; policyOtherGroupItemDataTableItems.Add(policyOtherGroupItemDataTableItem); } } if (policyOtherGroupItemDataTableItems.Count() <= 0) { ViewData["Message"] = "ValidationError : missing item";; return(View("Error")); } policyOtherGroupItemDataTableItemVM.PolicyOtherGroupItemDataTableItems = policyOtherGroupItemDataTableItems; //Update Model From Form + Validate against DB try { UpdateModel <PolicyOtherGroupItemDataTableItemVM>(policyOtherGroupItemDataTableItemVM, "PolicyOtherGroupItemDataTableItemVM"); } catch { string n = ""; foreach (ModelState modelState in ViewData.ModelState.Values) { foreach (ModelError error in modelState.Errors) { n += error.ErrorMessage; } } ViewData["Message"] = "ValidationError : " + n; return(View("Error")); } //Database Update try { policyOtherGroupItemDataTableItemRepository.Edit(policyOtherGroupItemDataTableItemVM); } catch (SqlException ex) { //Non-Unique Name if (ex.Message == "NonUniqueName") { return(View("NonUniqueNameError")); } LogRepository logRepository = new LogRepository(); logRepository.LogError(ex.Message); ViewData["Message"] = "There was a problem with your request, please see the log file or contact an administrator for details"; return(View("Error")); } ViewData["NewSortOrder"] = 0; return(RedirectToAction("List", new { id = policyOtherGroupItemDataTableItemVM.PolicyOtherGroupHeader.PolicyOtherGroupHeaderId, policyGroupId = policyOtherGroupItemDataTableItemVM.PolicyGroup.PolicyGroupId })); }