//Get items public List <Policy24HSCOtherGroupItemDataTableItem> GetPolicy24HSCOtherGroupItemDataTableItems(int policyGroupId, int policyOtherGroupHeaderId) { List <Policy24HSCOtherGroupItemDataTableItem> policy24HSCOtherGroupItemDataTableItems = new List <Policy24HSCOtherGroupItemDataTableItem>(); Policy24HSCOtherGroupItem policy24HSCOtherGroupItem = new Policy24HSCOtherGroupItem(); Policy24HSCOtherGroupItemRepository policy24HSCOtherGroupItemRepository = new Policy24HSCOtherGroupItemRepository(); policy24HSCOtherGroupItem = policy24HSCOtherGroupItemRepository.GetPolicy24HSCOtherGroupItem(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) { Policy24HSCOtherGroupItemDataTableItem policy24HSCOtherGroupItemDataTableItem = new Policy24HSCOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = item.PolicyOtherGroupHeaderColumnNameId, PolicyOtherGroupHeaderColumnName = item }; policy24HSCOtherGroupItemDataTableItems.Add(policy24HSCOtherGroupItemDataTableItem); } } return(policy24HSCOtherGroupItemDataTableItems); }
//Get items public List <Policy24HSCOtherGroupItemDataTableItem> GetPolicy24HSCOtherGroupItemDataTableItems(int policy24HSCOtherGroupItemDataTableRowId, int policyOtherGroupHeaderId) { List <Policy24HSCOtherGroupItemDataTableItem> policy24HSCOtherGroupItemDataTableItems = new List <Policy24HSCOtherGroupItemDataTableItem>(); List <int> policyOtherGroupHeaderColumnNameIds = new List <int>(); //Get Completed Columns List <Policy24HSCOtherGroupItemDataTableItem> policy24HSCOtherGroupItemDataTableItemsCompleted = new List <Policy24HSCOtherGroupItemDataTableItem>(); policy24HSCOtherGroupItemDataTableItemsCompleted = db.Policy24HSCOtherGroupItemDataTableItems.Where( c => c.Policy24HSCOtherGroupItemDataTableRowId == policy24HSCOtherGroupItemDataTableRowId ).ToList(); foreach (Policy24HSCOtherGroupItemDataTableItem policy24HSCOtherGroupItemDataTableItem in policy24HSCOtherGroupItemDataTableItemsCompleted) { policy24HSCOtherGroupItemDataTableItems.Add(policy24HSCOtherGroupItemDataTableItem); policyOtherGroupHeaderColumnNameIds.Add(policy24HSCOtherGroupItemDataTableItem.PolicyOtherGroupHeaderColumnNameId); } //Get Empty Columns List <PolicyOtherGroupHeaderColumnName> policyOtherGroupHeaderColumnNames = new List <PolicyOtherGroupHeaderColumnName>(); PolicyOtherGroupHeaderColumnNameRepository policyOtherGroupHeaderColumnNameRepository = new PolicyOtherGroupHeaderColumnNameRepository(); policyOtherGroupHeaderColumnNames = policyOtherGroupHeaderColumnNameRepository.GetIncompletePolicyOtherGroupHeaderColumnNames( policyOtherGroupHeaderId, policyOtherGroupHeaderColumnNameIds); foreach (PolicyOtherGroupHeaderColumnName item in policyOtherGroupHeaderColumnNames) { Policy24HSCOtherGroupItemDataTableItem policy24HSCOtherGroupItemDataTableItem = new Policy24HSCOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = item.PolicyOtherGroupHeaderColumnNameId, PolicyOtherGroupHeaderColumnName = item }; policy24HSCOtherGroupItemDataTableItems.Add(policy24HSCOtherGroupItemDataTableItem); } return(policy24HSCOtherGroupItemDataTableItems); }
public ActionResult Edit(Policy24HSCOtherGroupItemDataTableItemVM policy24HSCOtherGroupItemDataTableItemVM, FormCollection formCollection) { //Check Policy Exists PolicyGroup policyGroup = new PolicyGroup(); policyGroup = policyGroupRepository.GetGroup(policy24HSCOtherGroupItemDataTableItemVM.PolicyGroup.PolicyGroupId); if (policyGroup == null) { ViewData["ActionMethod"] = "CreatePost"; return(View("RecordDoesNotExistError")); } //Check PolicyOtherGroupHeader Exists PolicyOtherGroupHeader policyOtherGroupHeader = new PolicyOtherGroupHeader(); policyOtherGroupHeader = policyOtherGroupHeaderRepository.GetPolicyOtherGroupHeader(policy24HSCOtherGroupItemDataTableItemVM.PolicyOtherGroupHeader.PolicyOtherGroupHeaderId); if (policyOtherGroupHeader == null) { ViewData["ActionMethod"] = "CreatePost"; return(View("RecordDoesNotExistError")); } //We need to extract group from groupVM List <Policy24HSCOtherGroupItemDataTableItem> policy24HSCOtherGroupItemDataTableItems = new List <Policy24HSCOtherGroupItemDataTableItem>(); foreach (string item in formCollection) { if (item.StartsWith("PolicyOtherGroupHeaderColumnNameId")) { Policy24HSCOtherGroupItemDataTableItem policy24HSCOtherGroupItemDataTableItem = new Policy24HSCOtherGroupItemDataTableItem() { PolicyOtherGroupHeaderColumnNameId = Int32.Parse(item.Replace("PolicyOtherGroupHeaderColumnNameId_", "")), TableDataItem = formCollection[item] }; policy24HSCOtherGroupItemDataTableItems.Add(policy24HSCOtherGroupItemDataTableItem); } } if (policy24HSCOtherGroupItemDataTableItems.Count() <= 0) { ViewData["Message"] = "ValidationError : missing item";; return(View("Error")); } policy24HSCOtherGroupItemDataTableItemVM.Policy24HSCOtherGroupItemDataTableItems = policy24HSCOtherGroupItemDataTableItems; //Update Model From Form + Validate against DB try { UpdateModel <Policy24HSCOtherGroupItemDataTableItemVM>(policy24HSCOtherGroupItemDataTableItemVM, "Policy24HSCOtherGroupItemDataTableItemVM"); } 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 { policy24HSCOtherGroupItemDataTableItemRepository.Edit(policy24HSCOtherGroupItemDataTableItemVM); } 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 = policy24HSCOtherGroupItemDataTableItemVM.PolicyOtherGroupHeader.PolicyOtherGroupHeaderId, policyGroupId = policy24HSCOtherGroupItemDataTableItemVM.PolicyGroup.PolicyGroupId })); }