// GET: Linked ClientSubUnits public ActionResult LinkedClientSubUnits(int id) { //Get Group From Database QueueMinderGroup group = new QueueMinderGroup(); group = queueMinderGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ClientSubUnitGet"; return(View("RecordDoesNotExistError")); } QueueMinderGroupClientSubUnitCountriesVM queueMinderGroupClientSubUnits = new QueueMinderGroupClientSubUnitCountriesVM(); queueMinderGroupClientSubUnits.QueueMinderGroupId = id; queueMinderGroupClientSubUnits.QueueMinderGroupName = group.QueueMinderGroupName; List <ClientSubUnitCountryVM> clientSubUnitsAvailable = new List <ClientSubUnitCountryVM>(); clientSubUnitsAvailable = queueMinderGroupRepository.GetLinkedClientSubUnits(id, false); queueMinderGroupClientSubUnits.ClientSubUnitsAvailable = clientSubUnitsAvailable; List <ClientSubUnitCountryVM> clientSubUnitsUnAvailable = new List <ClientSubUnitCountryVM>(); clientSubUnitsUnAvailable = queueMinderGroupRepository.GetLinkedClientSubUnits(id, true); queueMinderGroupClientSubUnits.ClientSubUnitsUnAvailable = clientSubUnitsUnAvailable; return(View(queueMinderGroupClientSubUnits)); }
// GET: /UnDelete public ActionResult UnDelete(int id) { //Get Item From Database QueueMinderGroup group = new QueueMinderGroup(); group = queueMinderGroupRepository.GetGroup(id); //Check Exists if (group == null || group.DeletedFlag == false) { ViewData["ActionMethod"] = "UnDeleteGet"; return(View("RecordDoesNotExistError")); } //Check Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Add Linked Items and Display queueMinderGroupRepository.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")); } QueueMinderGroupVM queueMinderGroupVM = new QueueMinderGroupVM(); QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroupVM.QueueMinderGroup = queueMinderGroup; TripTypeRepository tripTypeRepository = new TripTypeRepository(); SelectList tripTypesList = new SelectList(tripTypeRepository.GetAllTripTypes().ToList(), "TripTypeId", "TripTypeDescription"); queueMinderGroupVM.TripTypes = tripTypesList; TablesDomainHierarchyLevelRepository tablesDomainHierarchyLevelRepository = new TablesDomainHierarchyLevelRepository(); SelectList hierarchyTypesList = new SelectList(tablesDomainHierarchyLevelRepository.GetDomainHierarchies(groupName).ToList(), "HierarchyLevelTableName", "HierarchyLevelTableName"); queueMinderGroupVM.HierarchyTypes = hierarchyTypesList; List <Meeting> meetings = new List <Meeting>(); SelectList meetingsList = new SelectList(meetings.ToList(), "MeetingID", "MeetingName"); ViewData["Meetings"] = meetingsList; return(View(queueMinderGroupVM)); }
public ActionResult Create(QueueMinderItemVM queueMinderItemVM) { //Get QueueMinderGroup QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupRepository.GetGroup(queueMinderItemVM.QueueMinderItem.QueueMinderGroupId); //Check Exists if (queueMinderGroup == null) { ViewData["ActionMethod"] = "CreatePost"; return(View("RecordDoesNotExistError")); } RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(queueMinderGroup.QueueMinderGroupId)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Update Model from Form try { UpdateModel <QueueMinderItem>(queueMinderItemVM.QueueMinderItem, "QueueMinderItem"); } 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")); } try { queueMinderItemRepository.Add(queueMinderItemVM.QueueMinderItem); } catch (SqlException ex) { 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("List", new { id = queueMinderGroup.QueueMinderGroupId })); }
public QueueMinderGroupVM( QueueMinderGroup queueMinderGroup, IEnumerable <SelectListItem> tripTypes, IEnumerable <SelectListItem> hierarchyTypes ) { QueueMinderGroup = queueMinderGroup; TripTypes = tripTypes; HierarchyTypes = hierarchyTypes; }
//Change the deleted status on an item public void UpdateGroupDeletedStatus(QueueMinderGroup group) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_UpdateQueueMinderGroupDeletedStatus_v1( group.QueueMinderGroupId, group.DeletedFlag, adminUserGuid, group.VersionNumber ); }
// GET: /View public ActionResult Edit(int id) { QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupRepository.GetGroup(id); //Check Exists if (queueMinderGroup == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (queueMinderGroup.TripTypeId == null) { TripType tripType = new TripType(); queueMinderGroup.TripType = tripType; } QueueMinderGroupVM queueMinderGroupVM = new QueueMinderGroupVM(); queueMinderGroupRepository.EditGroupForDisplay(queueMinderGroup); queueMinderGroupVM.QueueMinderGroup = queueMinderGroup; TripTypeRepository tripTypeRepository = new TripTypeRepository(); SelectList tripTypesList = new SelectList(tripTypeRepository.GetAllTripTypes().ToList(), "TripTypeId", "TripTypeDescription"); queueMinderGroupVM.TripTypes = tripTypesList; TablesDomainHierarchyLevelRepository tablesDomainHierarchyLevelRepository = new TablesDomainHierarchyLevelRepository(); SelectList hierarchyTypesList = new SelectList(tablesDomainHierarchyLevelRepository.GetDomainHierarchies(groupName).ToList(), "HierarchyLevelTableName", "HierarchyLevelTableName"); queueMinderGroupVM.HierarchyTypes = hierarchyTypesList; //Meetings MeetingRepository meetingRepository = new MeetingRepository(); List <Meeting> meetings = meetingRepository.GetAvailableMeetings(queueMinderGroup.HierarchyType, queueMinderGroup.HierarchyCode, null, queueMinderGroup.SourceSystemCode, queueMinderGroup.TravelerTypeGuid); SelectList meetingsList = new SelectList(meetings.ToList(), "MeetingID", "MeetingDisplayName", queueMinderGroup.MeetingID != null ? queueMinderGroup.MeetingID.ToString() : ""); ViewData["Meetings"] = meetingsList; return(View(queueMinderGroupVM)); }
public ActionResult List(int id, int?page, string filter, string sortField, int?sortOrder) { QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupRepository.GetGroup(id); //Check Exists if (queueMinderGroup == null) { ViewData["ActionMethod"] = "CreateGet"; return(View("RecordDoesNotExistError")); } //Set Access Rights ViewData["Access"] = ""; RolesRepository rolesRepository = new RolesRepository(); if (rolesRepository.HasWriteAccessToQueueMinderGroup(id)) { ViewData["Access"] = "WriteAccess"; } //SortField+SortOrder settings if (string.IsNullOrEmpty(sortField)) { sortField = "QueueMinderItemDescription"; } ViewData["CurrentSortField"] = sortField; if (sortOrder == 1) { ViewData["NewSortOrder"] = 0; ViewData["CurrentSortOrder"] = 1; } else { ViewData["NewSortOrder"] = 1; ViewData["CurrentSortOrder"] = 0; sortOrder = 0; } QueueMinderItemsVM queueMinderItemsVM = new QueueMinderItemsVM(); queueMinderItemsVM.QueueMinderGroup = queueMinderGroup; queueMinderItemsVM.QueueMinderItems = queueMinderItemRepository.PageQueueMinderItems(id, page ?? 1, filter ?? "", sortField, sortOrder ?? 0); //return items return(View(queueMinderItemsVM)); }
public ActionResult Create(int id) { //Get QueueMinderGroup QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupRepository.GetGroup(id); //Check Exists if (queueMinderGroup == null) { ViewData["ActionMethod"] = "CreateGet"; return(View("RecordDoesNotExistError")); } RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(id)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } QueueMinderItemVM queueMinderItemVM = new QueueMinderItemVM(); QueueMinderItem queueMinderItem = new QueueMinderItem(); queueMinderItem.QueueMinderGroup = queueMinderGroup; queueMinderItemVM.QueueMinderItem = queueMinderItem; GDSRepository gDSRepository = new GDSRepository(); SelectList gDSs = new SelectList(gDSRepository.GetAllGDSs().ToList(), "GDSCode", "GDSName"); queueMinderItemVM.GDSs = gDSs; ContextRepository contextRepository = new ContextRepository(); SelectList contexts = new SelectList(contextRepository.GetAllContexts().ToList(), "ContextId", "ContextName"); queueMinderItemVM.Contexts = contexts; //DONT SHOW 17,18,19 UNLESS ROLE ALLOWS QueueMinderTypeRepository queueMinderTypeRepository = new QueueMinderTypeRepository(); SelectList queueMinderTypes = new SelectList(queueMinderTypeRepository.GetAllQueueMinderTypes().ToList(), "QueueMinderTypeId", "QueueMinderTypeDescription"); queueMinderItemVM.QueueMinderTypes = queueMinderTypes; return(View(queueMinderItemVM)); }
public ActionResult LinkedClientSubUnits(int queueMinderGroupId, string ClientSubUnitGuid) { //Get Item From Database QueueMinderGroup group = new QueueMinderGroup(); group = queueMinderGroupRepository.GetGroup(queueMinderGroupId); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ClientSubUnitPost"; return(View("RecordDoesNotExistError")); } //Check Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(queueMinderGroupId)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Database Update try { queueMinderGroupRepository.UpdateLinkedClientSubUnit(queueMinderGroupId, ClientSubUnitGuid); } catch (SqlException ex) { //Versioning Error if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/QueueMinderGroup.mvc/ClientSubUnit/" + queueMinderGroupId.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 = queueMinderGroupId })); }
public ActionResult UnDelete(int id, FormCollection collection) { //Get Item From Database QueueMinderGroup group = new QueueMinderGroup(); group = queueMinderGroupRepository.GetGroup(id); //Check Exists if (group == null || group.DeletedFlag == false) { ViewData["ActionMethod"] = "UnDeletePost"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(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 = false; queueMinderGroupRepository.UpdateGroupDeletedStatus(group); } catch (SqlException ex) { //Versioning Error - go to standard versionError page if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/QueueMinderGroup.mvc/Delete/" + id.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")); }
//Add Group public void Add(QueueMinderGroup group) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_InsertQueueMinderGroup_v1( group.QueueMinderGroupName, group.EnabledFlag, group.EnabledDate, group.ExpiryDate, group.InheritFromParentFlag, group.TripTypeId, group.HierarchyType, group.HierarchyCode, group.TravelerTypeGuid, group.ClientSubUnitGuid, group.SourceSystemCode, group.MeetingID, adminUserGuid ); }
// GET: /View public ActionResult View(int id) { QueueMinderGroup group = new QueueMinderGroup(); group = queueMinderGroupRepository.GetGroup(id); //Check Exists if (group == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } if (group.TripTypeId == null) { TripType tripType = new TripType(); group.TripType = tripType; } queueMinderGroupRepository.EditGroupForDisplay(group); return(View(group)); }
public QueueMinderItemsVM(QueueMinderGroup queueMinderGroup, CWTPaginatedList <spDesktopDataAdmin_SelectQueueMinderItems_v1Result> queueMinderItems) { QueueMinderGroup = queueMinderGroup; QueueMinderItems = queueMinderItems; }
//Add Data From Linked Tables for Display public void EditGroupForDisplay(QueueMinderGroup group) { //QueueMinderGroupName group.QueueMinderGroupName = Regex.Replace(group.QueueMinderGroupName, @"[^\w\-()*]", "-"); //Hierarchy HierarchyRepository hierarchyRepository = new HierarchyRepository(); List <fnDesktopDataAdmin_SelectQueueMinderGroupHierarchy_v1Result> hierarchy = GetGroupHierarchy(group.QueueMinderGroupId); if (hierarchy.Count > 0) { if (hierarchy.Count == 1) { HierarchyGroup hierarchyGroup = hierarchyRepository.GetHierarchyGroup( hierarchy[0].HierarchyType ?? "", hierarchy[0].HierarchyCode ?? "", hierarchy[0].HierarchyName ?? "", hierarchy[0].TravelerTypeGuid ?? "", hierarchy[0].TravelerTypeName ?? "", hierarchy[0].SourceSystemCode ?? "" ); if (hierarchyGroup != null) { group.HierarchyType = hierarchyGroup.HierarchyType; group.HierarchyCode = hierarchyGroup.HierarchyCode; group.HierarchyItem = hierarchyGroup.HierarchyItem; group.ClientSubUnitGuid = hierarchyGroup.ClientSubUnitGuid; group.ClientSubUnitName = hierarchyGroup.ClientSubUnitName; group.TravelerTypeGuid = hierarchyGroup.TravelerTypeGuid; group.TravelerTypeName = hierarchyGroup.TravelerTypeName; group.ClientTopUnitName = hierarchyGroup.ClientTopUnitName; group.SourceSystemCode = hierarchyGroup.SourceSystemCode; } } else { List <MultipleHierarchyDefinition> multipleHierarchies = new List <MultipleHierarchyDefinition>(); foreach (fnDesktopDataAdmin_SelectQueueMinderGroupHierarchy_v1Result item in hierarchy) { multipleHierarchies.Add(new MultipleHierarchyDefinition() { HierarchyType = item.HierarchyType, HierarchyItem = item.HierarchyName, HierarchyCode = item.HierarchyCode, TravelerTypeGuid = item.TravelerTypeGuid, SourceSystemCode = item.SourceSystemCode }); } group.ClientSubUnitsHierarchy = hierarchyRepository.GetClientSubUnitHierarchies(multipleHierarchies); ClientSubUnitRepository clientSubUnitRepository = new ClientSubUnitRepository(); group.ClientTopUnitName = clientSubUnitRepository.GetClientSubUnitClientTopUnitName(group.ClientSubUnitsHierarchy.First().ClientSubUnitGuid); } } if (hierarchy.Count > 1) { group.IsMultipleHierarchy = true; group.HierarchyType = "Multiple"; group.HierarchyItem = "Multiple"; group.HierarchyCode = "Multiple"; } else { group.IsMultipleHierarchy = false; } //Meetings if (group.MeetingID != null) { int meetingID = Int32.Parse(group.MeetingID.ToString()); MeetingRepository meetingRepository = new MeetingRepository(); Meeting meeting = meetingRepository.GetGroup(meetingID); if (meeting != null) { group.Meeting = meeting; } } }
public ActionResult Edit(int id, QueueMinderGroupVM queueMinderGroupVM) { //Get Item QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupRepository.GetGroup(queueMinderGroupVM.QueueMinderGroup.QueueMinderGroupId); //Check Exists if (queueMinderGroup == null) { ViewData["ActionMethod"] = "EditPost"; return(View("RecordDoesNotExistError")); } //Check Access RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToQueueMinderGroup(queueMinderGroup.QueueMinderGroupId)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } try { UpdateModel <QueueMinderGroup>(queueMinderGroup, "QueueMinderGroup"); } 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")); } //Dont check for multiple as We are not editing Hierarchy, we have alrady checked access to the item itself if (queueMinderGroup.HierarchyType != "Multiple") { //ClientSubUnitTravelerType has extra field string hierarchyCode = queueMinderGroup.HierarchyCode; if (queueMinderGroup.HierarchyType == "ClientSubUnitTravelerType") { queueMinderGroup.ClientSubUnitGuid = hierarchyCode; //ClientSubUnitTravelerType has 2 primarykeys } //Check Access Rights to PolicyGroup HierarchyRepository hierarchyRepository = new HierarchyRepository(); if (!hierarchyRepository.AdminHasDomainHierarchyWriteAccess(queueMinderGroup.HierarchyType, hierarchyCode, queueMinderGroup.SourceSystemCode, groupName)) { ViewData["Message"] = "You cannot add to this hierarchy item"; return(View("Error")); } } //Database Update try { queueMinderGroupRepository.Edit(queueMinderGroup); } catch (SqlException ex) { //Versioning Error if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/QueueMinderGroup.mvc/Edit/" + queueMinderGroup.QueueMinderGroupId.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(QueueMinderGroupVM queueMinderGroupVM) { //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //We need to extract group from groupVM QueueMinderGroup queueMinderGroup = new QueueMinderGroup(); queueMinderGroup = queueMinderGroupVM.QueueMinderGroup; if (queueMinderGroup == null) { ViewData["Message"] = "ValidationError : missing item";; return(View("Error")); } //Check Access Rights to Domain Hierarchy if (!hierarchyRepository.AdminHasDomainHierarchyWriteAccess(queueMinderGroup.HierarchyType, queueMinderGroup.HierarchyCode, queueMinderGroup.SourceSystemCode, groupName)) { ViewData["Message"] = "You cannot add to this hierarchy item"; return(View("Error")); } //Update Model From Form + Validate against DB try { UpdateModel <QueueMinderGroup>(queueMinderGroup, "QueueMinderGroup"); } 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 = queueMinderGroup.HierarchyCode; if (queueMinderGroup.HierarchyType == "ClientSubUnitTravelerType") { queueMinderGroup.ClientSubUnitGuid = hierarchyCode; //ClientSubUnitTravelerType has 2 primarykeys } //Database Update try { queueMinderGroupRepository.Add(queueMinderGroup); } 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")); }