// GET: /UnDelete public ActionResult UnDelete(int id) { //Get Item From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null || group.DeletedFlag == false) { ViewData["ActionMethod"] = "UnDeleteGet"; return(View("RecordDoesNotExistError")); } //Check AccessRights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } priceTrackingHandlingFeeGroupRepository.EditGroupForDisplay(group); return(View(group)); }
// GET: /View public ActionResult View(int id) { PriceTrackingHandlingFeeItem priceTrackingHandlingFeeItem = new PriceTrackingHandlingFeeItem(); priceTrackingHandlingFeeItem = priceTrackingHandlingFeeItemRepository.PriceTrackingHandlingFeeItem(id); //Check Exists if (priceTrackingHandlingFeeItem == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } priceTrackingHandlingFeeItemRepository.EditForDisplay(priceTrackingHandlingFeeItem); PriceTrackingHandlingFeeItemVM priceTrackingHandlingFeeItemVM = new PriceTrackingHandlingFeeItemVM(); priceTrackingHandlingFeeItemVM.PriceTrackingHandlingFeeItem = priceTrackingHandlingFeeItem; PriceTrackingHandlingFeeGroup priceTrackingHandlingFeeGroup = new PriceTrackingHandlingFeeGroup(); priceTrackingHandlingFeeGroup = priceTrackingHandlingFeeGroupRepository.GetGroup(priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId); if (priceTrackingHandlingFeeGroup != null) { priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; priceTrackingHandlingFeeItemVM.PriceTrackingHandlingFeeItem = priceTrackingHandlingFeeItem; ViewData["PriceTrackingHandlingFeeGroupId"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; ViewData["PriceTrackingHandlingFeeGroupName"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupName; } return(View(priceTrackingHandlingFeeItemVM)); }
// GET: /Edit public ActionResult Edit(int id) { //Get Item From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } TablesDomainHierarchyLevelRepository tablesDomainHierarchyLevelRepository = new TablesDomainHierarchyLevelRepository(); SelectList hierarchyTypesList = new SelectList(tablesDomainHierarchyLevelRepository.GetDomainHierarchies(groupName).ToList(), "HierarchyLevelTableName", "HierarchyLevelTableName"); ViewData["HierarchyTypes"] = hierarchyTypesList; priceTrackingHandlingFeeGroupRepository.EditGroupForDisplay(group); return(View(group)); }
//Add Data From Linked Tables for Display public void EditGroupForDisplay(PriceTrackingHandlingFeeGroup group) { HierarchyRepository hierarchyRepository = new HierarchyRepository(); List <fnDesktopDataAdmin_SelectPriceTrackingHandlingFeeGroupHierarchy_v1Result> hierarchy = new List <fnDesktopDataAdmin_SelectPriceTrackingHandlingFeeGroupHierarchy_v1Result>(); hierarchy = GetGroupHierarchy(group.PriceTrackingHandlingFeeGroupId); group.PriceTrackingHandlingFeeGroupName = Regex.Replace(group.PriceTrackingHandlingFeeGroupName, @"[^\w\-()*]", "-"); if (hierarchy.Count > 0) { group.HierarchyType = hierarchy[0].HierarchyType; group.HierarchyCode = hierarchy[0].HierarchyCode.ToString(); group.HierarchyItem = hierarchy[0].HierarchyName.Trim(); if (hierarchy[0].HierarchyType == "ClientSubUnitTravelerType") { group.ClientSubUnitGuid = hierarchy[0].HierarchyCode.ToString(); group.ClientSubUnitName = hierarchy[0].HierarchyName.Trim(); group.TravelerTypeGuid = hierarchy[0].TravelerTypeGuid; group.TravelerTypeName = hierarchy[0].TravelerTypeName.Trim(); if (!string.IsNullOrEmpty(group.ClientSubUnitGuid)) { ClientSubUnitRepository clientSubUnitRepository = new ClientSubUnitRepository(); ClientSubUnit clientSubUnit = clientSubUnitRepository.GetClientSubUnit(group.ClientSubUnitGuid); if (clientSubUnit != null && clientSubUnit.ClientTopUnit != null) { group.ClientTopUnitName = clientSubUnit.ClientTopUnit.ClientTopUnitName; } } } if (hierarchy[0].HierarchyType == "ClientSubUnit" || hierarchy[0].HierarchyType == "TravelerType") { if (hierarchy[0].ClientTopUnitName != null) { group.ClientTopUnitName = hierarchy[0].ClientTopUnitName.Trim(); } } if (hierarchy[0].HierarchyType == "ClientAccount") { group.SourceSystemCode = hierarchy[0].SourceSystemCode; } } if (hierarchy.Count > 1) { group.IsMultipleHierarchy = true; group.HierarchyType = "Multiple"; group.HierarchyItem = "Multiple"; group.HierarchyCode = "Multiple"; } else { group.IsMultipleHierarchy = false; } }
// GET: /List public ActionResult List(int id, string filter, int?page, string sortField, int?sortOrder) { RolesRepository rolesRepository = new RolesRepository(); //Set Access Rights ViewData["Access"] = ""; if (hierarchyRepository.AdminHasDomainWriteAccess(groupName) && rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { ViewData["Access"] = "WriteAccess"; } //SortField if (string.IsNullOrEmpty(sortField)) { sortField = "ProductName"; } ViewData["CurrentSortField"] = sortField; //SortOrder if (sortOrder == 1) { ViewData["NewSortOrder"] = 0; ViewData["CurrentSortOrder"] = 1; } else { ViewData["NewSortOrder"] = 1; ViewData["CurrentSortOrder"] = 0; } if (priceTrackingHandlingFeeItemRepository == null) { ViewData["ActionMethod"] = "ListGet"; return(View("Error")); } PriceTrackingHandlingFeeGroup priceTrackingHandlingFeeGroup = new PriceTrackingHandlingFeeGroup(); priceTrackingHandlingFeeGroup = priceTrackingHandlingFeeGroupRepository.GetGroup(id); if (priceTrackingHandlingFeeGroup != null) { ViewData["PriceTrackingHandlingFeeGroupId"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; ViewData["PriceTrackingHandlingFeeGroupName"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupName; } var cwtPaginatedList = priceTrackingHandlingFeeItemRepository.PagePriceTrackingHandlingFeeItems(id, page ?? 1, filter ?? "", sortField, sortOrder ?? 0); if (cwtPaginatedList == null) { ViewData["ActionMethod"] = "ListGet"; return(View("Error")); } //return items return(View(cwtPaginatedList)); }
//Change the deleted status on an item public void UpdateGroupDeletedStatus(PriceTrackingHandlingFeeGroup group) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_UpdatePriceTrackingHandlingFeeGroupDeletedStatus_v1( group.PriceTrackingHandlingFeeGroupId, group.DeletedFlag, adminUserGuid, group.VersionNumber ); }
// GET: /Edit public ActionResult Edit(int id) { //Get Item From Database PriceTrackingHandlingFeeItem priceTrackingHandlingFeeItem = new PriceTrackingHandlingFeeItem(); priceTrackingHandlingFeeItem = priceTrackingHandlingFeeItemRepository.PriceTrackingHandlingFeeItem(id); //Check Exists if (priceTrackingHandlingFeeItem == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } PriceTrackingHandlingFeeItemVM priceTrackingHandlingFeeItemVM = new PriceTrackingHandlingFeeItemVM(); priceTrackingHandlingFeeItemRepository.EditForDisplay(priceTrackingHandlingFeeItem); PriceTrackingHandlingFeeGroup priceTrackingHandlingFeeGroup = new PriceTrackingHandlingFeeGroup(); priceTrackingHandlingFeeGroup = priceTrackingHandlingFeeGroupRepository.GetGroup(priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId); if (priceTrackingHandlingFeeGroup != null) { priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; priceTrackingHandlingFeeItemVM.PriceTrackingHandlingFeeItem = priceTrackingHandlingFeeItem; ViewData["PriceTrackingHandlingFeeGroupId"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; ViewData["PriceTrackingHandlingFeeGroupName"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupName; } PriceTrackingSystemRepository priceTrackingSystemRepository = new PriceTrackingSystemRepository(); SelectList priceTrackingSystems = new SelectList(priceTrackingSystemRepository.GetAllPriceTrackingSystems().ToList(), "PriceTrackingSystemId", "PriceTrackingSystemName", priceTrackingHandlingFeeItem.PriceTrackingSystemId); ViewData["PriceTrackingSystemList"] = priceTrackingSystems; ProductRepository productRepository = new ProductRepository(); SelectList products = new SelectList(productRepository.GetPriceTrackerEligibleProducts().ToList(), "ProductId", "ProductName", priceTrackingHandlingFeeItem.ProductId); ViewData["ProductList"] = products; return(View(priceTrackingHandlingFeeItemVM)); }
public ActionResult Delete(int id, FormCollection collection) { //Get Item From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null || group.DeletedFlag == true) { ViewData["ActionMethod"] = "DeletePost"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Delete Item try { group.VersionNumber = Int32.Parse(collection["VersionNumber"]); group.DeletedFlag = true; priceTrackingHandlingFeeGroupRepository.UpdateGroupDeletedStatus(group); } catch (SqlException ex) { //Versioning Error - go to standard versionError page if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/PriceTrackingHandlingFeeGroup.mvc/Delete/" + group.PriceTrackingHandlingFeeGroupId; return(View("VersionError")); } 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")); } return(RedirectToAction("ListUnDeleted")); }
// GET: /View public ActionResult View(int id) { PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } priceTrackingHandlingFeeGroupRepository.EditGroupForDisplay(group); return(View(group)); }
// GET: /Create public ActionResult Create() { //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } TablesDomainHierarchyLevelRepository tablesDomainHierarchyLevelRepository = new TablesDomainHierarchyLevelRepository(); SelectList hierarchyTypesList = new SelectList(tablesDomainHierarchyLevelRepository.GetDomainHierarchies(groupName).ToList(), "HierarchyLevelTableName", "HierarchyLevelTableName"); ViewData["HierarchyTypes"] = hierarchyTypesList; PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); return(View(group)); }
//Add Group public void Add(PriceTrackingHandlingFeeGroup group) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_InsertPriceTrackingHandlingFeeGroup_v1( adminUserGuid, group.PriceTrackingHandlingFeeGroupName, group.EnabledFlag, group.EnabledDate, group.ExpiryDate, group.HierarchyType, group.HierarchyCode, group.TravelerTypeGuid, group.ClientSubUnitGuid, group.SourceSystemCode, adminUserGuid ); }
public ActionResult LinkedClientSubUnits(int priceTrackingHandlingFeeGroupId, string clientSubUnitGuid) { //Get Item From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(priceTrackingHandlingFeeGroupId); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ClientSubUnitPost"; return(View("RecordDoesNotExistError")); } //Check Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(priceTrackingHandlingFeeGroupId)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Database Update try { priceTrackingHandlingFeeGroupRepository.UpdateLinkedClientSubUnit(priceTrackingHandlingFeeGroupId, clientSubUnitGuid); } catch (SqlException ex) { //Versioning Error if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/PriceTrackingHandlingFeeGroup.mvc/" + priceTrackingHandlingFeeGroupId.ToString(); return(View("VersionError")); } 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")); } return(RedirectToAction("LinkedClientSubUnits", new { id = priceTrackingHandlingFeeGroupId })); }
// GET: /Create public ActionResult Create(int id) { //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } PriceTrackingHandlingFeeItemVM priceTrackingHandlingFeeItemVM = new PriceTrackingHandlingFeeItemVM(); PriceTrackingHandlingFeeGroup priceTrackingHandlingFeeGroup = new PriceTrackingHandlingFeeGroup(); priceTrackingHandlingFeeGroup = priceTrackingHandlingFeeGroupRepository.GetGroup(id); if (priceTrackingHandlingFeeGroup != null) { PriceTrackingHandlingFeeItem priceTrackingHandlingFeeItem = new PriceTrackingHandlingFeeItem(); priceTrackingHandlingFeeItem.PriceTrackingHandlingFeeGroupId = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; priceTrackingHandlingFeeItemVM.PriceTrackingHandlingFeeItem = priceTrackingHandlingFeeItem; ViewData["PriceTrackingHandlingFeeGroupId"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupId; ViewData["PriceTrackingHandlingFeeGroupName"] = priceTrackingHandlingFeeGroup.PriceTrackingHandlingFeeGroupName; } PriceTrackingSystemRepository priceTrackingSystemRepository = new PriceTrackingSystemRepository(); SelectList priceTrackingSystems = new SelectList(priceTrackingSystemRepository.GetAllPriceTrackingSystems().ToList(), "PriceTrackingSystemId", "PriceTrackingSystemName"); ViewData["PriceTrackingSystemList"] = priceTrackingSystems; ProductRepository productRepository = new ProductRepository(); SelectList products = new SelectList(productRepository.GetPriceTrackerEligibleProducts().ToList(), "ProductId", "ProductName"); ViewData["ProductList"] = products; return(View(priceTrackingHandlingFeeItemVM)); }
// GET: Linked ClientSubUnits public ActionResult LinkedClientSubUnits(int id) { //Get Group From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ClientSubUnitGet"; return(View("RecordDoesNotExistError")); } PriceTrackingHandlingFeeGroupClientSubUnitCountriesVM priceTrackingHandlingFeeGroupClientSubUnitCountriesVM = new PriceTrackingHandlingFeeGroupClientSubUnitCountriesVM(); priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.PriceTrackingHandlingFeeGroupId = id; priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.PriceTrackingHandlingFeeGroupName = group.PriceTrackingHandlingFeeGroupName; List <ClientSubUnitCountryVM> clientSubUnitsAvailable = new List <ClientSubUnitCountryVM>(); clientSubUnitsAvailable = priceTrackingHandlingFeeGroupRepository.GetLinkedClientSubUnits(id, false); priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.ClientSubUnitsAvailable = clientSubUnitsAvailable; List <ClientSubUnitCountryVM> clientSubUnitsUnAvailable = new List <ClientSubUnitCountryVM>(); clientSubUnitsUnAvailable = priceTrackingHandlingFeeGroupRepository.GetLinkedClientSubUnits(id, true); priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.ClientSubUnitsUnAvailable = clientSubUnitsUnAvailable; //Check User Access priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.HasWriteAccess = false; RolesRepository rolesRepository = new RolesRepository(); if (rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(id)) { priceTrackingHandlingFeeGroupClientSubUnitCountriesVM.HasWriteAccess = true; } return(View(priceTrackingHandlingFeeGroupClientSubUnitCountriesVM)); }
public ActionResult Edit(int id, FormCollection collection) { //Get Item From Database PriceTrackingHandlingFeeGroup group = new PriceTrackingHandlingFeeGroup(); group = priceTrackingHandlingFeeGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "EditPost"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToPriceTrackingHandlingFeeGroup(group.PriceTrackingHandlingFeeGroupId)) { return(View("Error")); } //Update Model From Form + Validate against DB try { UpdateModel(group); } 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")); } if (group.HierarchyType != "Multiple") { //ClientSubUnitTravelerType has extra field string hierarchyCode = group.HierarchyCode; if (group.HierarchyType == "ClientSubUnitTravelerType") { group.ClientSubUnitGuid = hierarchyCode; //ClientSubUnitTravelerType has 2 primarykeys } //Check Access Rights to PolicyGroup HierarchyRepository hierarchyRepository = new HierarchyRepository(); if (!hierarchyRepository.AdminHasDomainHierarchyWriteAccess(group.HierarchyType, hierarchyCode, group.SourceSystemCode, groupName)) { ViewData["Message"] = "You cannot add to this hierarchy item"; return(View("Error")); } } //Database Update try { priceTrackingHandlingFeeGroupRepository.Edit(group); } catch (SqlException ex) { //Versioning Error if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/PriceTrackingHandlingFeeGroup.mvc/Edit/" + group.PriceTrackingHandlingFeeGroupId.ToString(); return(View("VersionError")); } 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")); } return(RedirectToAction("ListUnDeleted")); }
public ActionResult Create(PriceTrackingHandlingFeeGroup group) { //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Check Access Rights to Domain Hierarchy if (!hierarchyRepository.AdminHasDomainHierarchyWriteAccess(group.HierarchyType, group.HierarchyCode, group.SourceSystemCode, groupName)) { ViewData["Message"] = "You cannot add to this hierarchy item"; return(View("Error")); } //Update Model From Form + Validate against DB try { UpdateModel(group); } 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")); } //ClientSubUnitTravelerType has extra field string hierarchyCode = group.HierarchyCode; if (group.HierarchyType == "ClientSubUnitTravelerType") { group.ClientSubUnitGuid = hierarchyCode; //ClientSubUnitTravelerType has 2 primarykeys } //Database Update try { priceTrackingHandlingFeeGroupRepository.Add(group); } 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("ListUnDeleted")); }