/* GET: /View * public ActionResult View(int id, string clientSubUnitId) * { * //Check Exists * ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); * clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(id, clientSubUnitId); * if (clientSubUnitClientAccount == null) * { * ViewData["ActionMethod"] = "ViewGet"; * return View("RecordDoesNotExistError"); * } * * clientSubUnitClientAccountRepository.EditForDisplay(clientSubUnitClientAccount); * return View(clientSubUnitClientAccount); * * } */ // GET: /Edit/ public ActionResult Edit(string can, string ssc, string csu) { //Check Exists ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, csu); if (clientSubUnitClientAccount == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (!rolesRepository.HasWriteAccessToClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //LineOfBusiness LineOfBusinessRepository lineOfBusinessRepository = new LineOfBusinessRepository(); SelectList lineOfBusinessList = new SelectList(lineOfBusinessRepository.GetAllLineOfBusinesses().ToList(), "LineOfBusinessId", "LineOfBusinessDescription"); ViewData["LineOfBusinessses"] = lineOfBusinessList; clientSubUnitClientAccountRepository.EditForDisplay(clientSubUnitClientAccount); return(View(clientSubUnitClientAccount)); }
public ActionResult Delete(string can, string ssc, string clientSubUnitId) { //Check Exists ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, clientSubUnitId); if (clientSubUnitClientAccount == null) { ViewData["ActionMethod"] = "DeleteGet"; return(View("RecordDoesNotExistError")); } //Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (!rolesRepository.HasWriteAccessToClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } clientSubUnitClientAccountRepository.EditForDisplay(clientSubUnitClientAccount); return(View(clientSubUnitClientAccount)); }
// GET: /View/5 public ActionResult View(string id, string csu, string can, string ssc) { //Check Exists ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItem = clientDefinedReferenceItemRepository.GetClientDefinedReferenceItem(id); if (clientDefinedReferenceItem == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } clientDefinedReferenceItemRepository.EditForDisplay(clientDefinedReferenceItem); ClientDefinedReferenceItemVM clientDefinedReferenceItemVM = new ClientDefinedReferenceItemVM(); //Check Exists (CDR CSU could be null) ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(csu); if (clientSubUnit != null) { clientDefinedReferenceItem.ClientSubUnitGuid = clientSubUnit.ClientSubUnitGuid; clientDefinedReferenceItemVM.ClientSubUnit = clientSubUnit; } if (can != null && ssc != null) { ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, csu); if (clientSubUnitClientAccount != null) { ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = clientDefinedReferenceItem.ClientAccountNumber; clientDefinedReferenceItem.SourceSystemCode = clientDefinedReferenceItem.SourceSystemCode; } clientDefinedReferenceItemVM.ClientDefinedReferenceItem = clientDefinedReferenceItem; if (can != null && ssc != null) { ClientAccount clientAccount = new ClientAccount(); ClientAccountRepository clientAccountRepository = new ClientAccountRepository(); clientAccount = clientAccountRepository.GetClientAccount(can, ssc); if (clientAccount != null) { ViewData["ClientAccountName"] = clientAccount.ClientAccountName; } ViewData["ClientAccountNumber"] = can; ViewData["SourceSystemCode"] = ssc; } return(View(clientDefinedReferenceItemVM)); }
public ClientDefinedReferenceItemValueVM( ClientDefinedReferenceItemValue clientDefinedReferenceItemValue, ClientDefinedReferenceItem clientDefinedReferenceItem, ClientSubUnit clientSubUnit, ClientSubUnitClientAccount clientSubUnitClientAccount) { ClientDefinedReferenceItemValue = clientDefinedReferenceItemValue; ClientDefinedReferenceItem = clientDefinedReferenceItem; ClientSubUnit = clientSubUnit; ClientSubUnitClientAccount = clientSubUnitClientAccount; }
// GET: /Create public ActionResult Create(string id, string can, string ssc) { ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(id); //Check Exists if (clientSubUnit == null) { ViewData["ActionMethod"] = "ListBySubUnitGet"; return(View("RecordDoesNotExistError")); } //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } ClientDefinedReferenceItemVM clientDefinedReferenceItemVM = new ClientDefinedReferenceItemVM(); ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItemRepository.EditForDisplay(clientDefinedReferenceItem); if (can != null && ssc != null) { ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, clientSubUnit.ClientSubUnitGuid); if (clientSubUnitClientAccount != null) { ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = can; clientDefinedReferenceItem.SourceSystemCode = ssc; } //Products ProductRepository productRepository = new ProductRepository(); clientDefinedReferenceItemVM.Products = new SelectList(productRepository.GetAllProducts().ToList(), "ProductId", "ProductName"); //Contexts ContextRepository contextRepository = new ContextRepository(); clientDefinedReferenceItemVM.Contexts = new SelectList(contextRepository.GetAllContexts().ToList(), "ContextId", "ContextName"); clientDefinedReferenceItem.ClientSubUnitGuid = clientSubUnit.ClientSubUnitGuid; clientDefinedReferenceItemVM.ClientDefinedReferenceItem = clientDefinedReferenceItem; clientDefinedReferenceItemVM.ClientSubUnit = clientSubUnit; return(View(clientDefinedReferenceItemVM)); }
//Delete Item public void Delete(ClientSubUnitClientAccount clientSubUnitClientAccount) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_DeleteClientSubUnitClientAccount_v1( clientSubUnitClientAccount.ClientSubUnitGuid, clientSubUnitClientAccount.SourceSystemCode, clientSubUnitClientAccount.ClientAccountNumber, adminUserGuid, clientSubUnitClientAccount.VersionNumber ); }
//Add Item public void Add(ClientSubUnitClientAccount clientSubUnitClientAccount) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_InsertClientSubUnitClientAccount_v1( clientSubUnitClientAccount.ClientSubUnitGuid, clientSubUnitClientAccount.SourceSystemCode, clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.ConfidenceLevelForLoadId, clientSubUnitClientAccount.DefaultFlag, adminUserGuid ); }
//Update item public void Update(ClientSubUnitClientAccount clientSubUnitClientAccount) { string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; db.spDesktopDataAdmin_UpdateClientSubUnitClientAccount_v1( clientSubUnitClientAccount.ClientSubUnitGuid, clientSubUnitClientAccount.SourceSystemCode, clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.ClientAccountLineOfBusinessId, clientSubUnitClientAccount.DefaultFlag, adminUserGuid, clientSubUnitClientAccount.VersionNumber ); }
public ActionResult Delete(string can, string ssc, string clientSubUnitId, FormCollection collection) { //Check Exists ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, clientSubUnitId); if (clientSubUnitClientAccount == null) { ViewData["ActionMethod"] = "DeletePost"; return(View("RecordDoesNotExistError")); } //Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (!rolesRepository.HasWriteAccessToClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Delete Item try { clientSubUnitClientAccount.VersionNumber = Int32.Parse(collection["VersionNumber"]); clientSubUnitClientAccountRepository.Delete(clientSubUnitClientAccount); } catch (SqlException ex) { //Versioning Error - go to standard versionError page if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/ClientSubUnitClientAccount.mvc/Delete?id=" + clientSubUnitClientAccount.ClientAccountNumber.ToString() + "&ssc=" + clientSubUnitClientAccount.SourceSystemCode + "&clientSubUnitGuid=" + clientSubUnitClientAccount.ClientSubUnitGuid; return(View("VersionError")); } //Generic Error ViewData["Message"] = "There was a problem with your request, please see the log file or contact an administrator for details"; return(View("Error")); } //Return return(RedirectToAction("ListBySubUnit", new { id = clientSubUnitClientAccount.ClientSubUnitGuid })); }
//Add Data From Linked Tables for Display public void EditForDisplay(ClientSubUnitClientAccount clientSubUnitClientAccount) { ClientAccountRepository clientAccountRepository = new ClientAccountRepository(); ClientAccount clientAccount = new ClientAccount(); clientAccount = clientAccountRepository.GetClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode); if (clientAccount != null) { clientSubUnitClientAccount.ClientAccountName = clientAccount.ClientAccountName; } ClientSubUnitRepository clientSubUnitRepository = new ClientSubUnitRepository(); ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid); if (clientSubUnit != null) { clientSubUnitClientAccount.ClientSubUnitName = clientSubUnit.ClientSubUnitName; } ConfidenceLevelForLoadRepository confidenceLevelForLoadRepository = new ConfidenceLevelForLoadRepository(); ConfidenceLevelForLoad confidenceLevelForLoad = new ConfidenceLevelForLoad(); if (clientSubUnitClientAccount.ConfidenceLevelForLoadId != null) { int confidenceLevelForLoadId = (int)clientSubUnitClientAccount.ConfidenceLevelForLoadId; confidenceLevelForLoad = confidenceLevelForLoadRepository.GetConfidenceLevelForLoad(confidenceLevelForLoadId); if (confidenceLevelForLoad != null) { clientSubUnitClientAccount.ConfidenceLevelForLoadDescription = confidenceLevelForLoad.ConfidenceLevelForLoadDescription; } } LineOfBusinessRepository lineOfBusinessRepository = new LineOfBusinessRepository(); LineOfBusiness lineOfBusiness = new LineOfBusiness(); if (clientSubUnitClientAccount.ClientAccountLineOfBusinessId != null) { int lineOfBusinessId = (int)clientSubUnitClientAccount.ClientAccountLineOfBusinessId; lineOfBusiness = lineOfBusinessRepository.GetLineOfBusiness(lineOfBusinessId); if (lineOfBusiness != null) { clientSubUnitClientAccount.LineOfBusiness = lineOfBusiness; } } }
public ActionResult Delete(int id, string csu, string can, string ssc) { ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(csu); //Check Exists if (clientSubUnit == null) { ViewData["ActionMethod"] = "CreateGet"; return(View("RecordDoesNotExistError")); } //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } ClientDefinedReferenceItemPNROutputVM clientDefinedReferenceItemPNROutputVM = new ClientDefinedReferenceItemPNROutputVM(); ClientDefinedReferenceItemPNROutput clientDefinedReferenceItemPNROutput = new ClientDefinedReferenceItemPNROutput(); clientDefinedReferenceItemPNROutput = clientDefinedReferenceItemPNROutputRepository.GetClientDefinedReferenceItemPNROutput(id); //Check Exists if (clientDefinedReferenceItemPNROutput == null) { ViewData["ActionMethod"] = "DeleteGet"; return(View("RecordDoesNotExistError")); } ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItem = clientDefinedReferenceItemRepository.GetClientDefinedReferenceItem(clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItemId); //Check Exists if (clientDefinedReferenceItem == null) { ViewData["ActionMethod"] = "DeleteGet"; return(View("RecordDoesNotExistError")); } ViewData["DsplayName"] = !string.IsNullOrEmpty(clientDefinedReferenceItem.DisplayNameAlias) ? clientDefinedReferenceItem.DisplayNameAlias : clientDefinedReferenceItem.DisplayName; if (can != null && ssc != null) { ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, clientSubUnit.ClientSubUnitGuid); if (clientSubUnitClientAccount != null) { ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = can; clientDefinedReferenceItem.SourceSystemCode = ssc; ViewData["ClientDefinedReferenceItemId"] = clientDefinedReferenceItem.ClientDefinedReferenceItemId; ViewData["ClientAccountNumber"] = can; ViewData["SourceSystemCode"] = ssc; } clientDefinedReferenceItemPNROutputVM.ClientDefinedReferenceItemPNROutput = clientDefinedReferenceItemPNROutput; clientDefinedReferenceItemPNROutputVM.ClientSubUnit = clientSubUnit; clientDefinedReferenceItem.ClientSubUnitGuid = clientSubUnit.ClientSubUnitGuid; clientDefinedReferenceItemPNROutputVM.ClientSubUnit = clientSubUnit; clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItem = clientDefinedReferenceItem; clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItemId = clientDefinedReferenceItem.ClientDefinedReferenceItemId; return(View(clientDefinedReferenceItemPNROutputVM)); }
// GET: /Edit public ActionResult Edit(int id, string csu, string can, string ssc) { ClientDefinedReferenceItemPNROutputVM clientDefinedReferenceItemPNROutputVM = new ClientDefinedReferenceItemPNROutputVM(); ClientDefinedReferenceItemPNROutput clientDefinedReferenceItemPNROutput = new ClientDefinedReferenceItemPNROutput(); clientDefinedReferenceItemPNROutput = clientDefinedReferenceItemPNROutputRepository.GetClientDefinedReferenceItemPNROutput(id); if (clientDefinedReferenceItemPNROutput == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } clientDefinedReferenceItemPNROutputVM.ClientDefinedReferenceItemPNROutput = clientDefinedReferenceItemPNROutput; //Check Exists ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItem = clientDefinedReferenceItemRepository.GetClientDefinedReferenceItem(clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItemId); if (clientDefinedReferenceItem == null) { ViewData["ActionMethod"] = "ViewGet"; return(View("RecordDoesNotExistError")); } ViewData["DsplayName"] = !string.IsNullOrEmpty(clientDefinedReferenceItem.DisplayNameAlias) ? clientDefinedReferenceItem.DisplayNameAlias : clientDefinedReferenceItem.DisplayName; //Check Exists CSU for VM ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(csu); if (clientSubUnit != null) { clientSubUnitRepository.EditGroupForDisplay(clientSubUnit); clientDefinedReferenceItemPNROutputVM.ClientSubUnit = clientSubUnit; } // Check Exists CDR CSU (can be null) ClientSubUnit clientSubUnitCDR = new ClientSubUnit(); if (clientDefinedReferenceItem.ClientSubUnitGuid != null) { clientSubUnitCDR = clientSubUnitRepository.GetClientSubUnit(clientDefinedReferenceItem.ClientSubUnitGuid); if (clientSubUnit != null) { clientSubUnitRepository.EditGroupForDisplay(clientSubUnitCDR); clientDefinedReferenceItem.ClientSubUnitGuid = clientSubUnitCDR.ClientSubUnitGuid; } } if (can != null && ssc != null) { ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, csu); if (clientSubUnitClientAccount != null) { ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = clientDefinedReferenceItem.ClientAccountNumber; clientDefinedReferenceItem.SourceSystemCode = clientDefinedReferenceItem.SourceSystemCode; } if (can != null && ssc != null) { ClientAccount clientAccount = new ClientAccount(); ClientAccountRepository clientAccountRepository = new ClientAccountRepository(); clientAccount = clientAccountRepository.GetClientAccount(can, ssc); if (clientAccount != null) { ViewData["ClientAccountName"] = clientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = can; clientDefinedReferenceItem.SourceSystemCode = ssc; ViewData["ClientDefinedReferenceItemId"] = clientDefinedReferenceItem.ClientDefinedReferenceItemId; ViewData["ClientAccountNumber"] = can; ViewData["SourceSystemCode"] = ssc; } //ClientDefinedReferenceItem clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItem = clientDefinedReferenceItem; clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItemId = clientDefinedReferenceItem.ClientDefinedReferenceItemId; //GDS GDSRepository GDSRepository = new GDSRepository(); clientDefinedReferenceItemPNROutputVM.GDSList = new SelectList(GDSRepository.GetAllGDSsExceptALL().OrderBy(x => x.GDSName).ToList(), "GDSCode", "GDSName"); //PNR Output Remark Types PNROutputRemarkTypeRepository PNROutputRemarkTypeRepository = new PNROutputRemarkTypeRepository(); clientDefinedReferenceItemPNROutputVM.PNROutputRemarkTypeCodes = new SelectList(PNROutputRemarkTypeRepository.GetPNROutputRemarkTypes(), "PNROutputRemarkTypeCode", "PNROutputRemarkTypeName"); //Languages LanguageRepository languageRepository = new LanguageRepository(); clientDefinedReferenceItemPNROutputVM.Languages = new SelectList(languageRepository.GetAllLanguages().ToList(), "LanguageCode", "LanguageName"); return(View(clientDefinedReferenceItemPNROutputVM)); }
// GET: /Create public ActionResult Create(string id, string csu, string can, string ssc) { ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(csu); //Check Exists if (clientSubUnit == null) { ViewData["ActionMethod"] = "CreateGet"; return(View("RecordDoesNotExistError")); } //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } ClientDefinedReferenceItemPNROutputVM clientDefinedReferenceItemPNROutputVM = new ClientDefinedReferenceItemPNROutputVM(); ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItem = clientDefinedReferenceItemRepository.GetClientDefinedReferenceItem(id); ClientDefinedReferenceItemPNROutput clientDefinedReferenceItemPNROutput = new ClientDefinedReferenceItemPNROutput(); //ClientDefinedReferenceItem if (clientDefinedReferenceItem == null) { ViewData["ActionMethod"] = "CreateGet"; return(View("RecordDoesNotExistError")); } clientDefinedReferenceItem.ClientSubUnitGuid = clientSubUnit.ClientSubUnitGuid; clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItem = clientDefinedReferenceItem; clientDefinedReferenceItemPNROutput.ClientDefinedReferenceItemId = clientDefinedReferenceItem.ClientDefinedReferenceItemId; clientDefinedReferenceItemPNROutputVM.ClientDefinedReferenceItemPNROutput = clientDefinedReferenceItemPNROutput; ViewData["DsplayName"] = !string.IsNullOrEmpty(clientDefinedReferenceItem.DisplayNameAlias) ? clientDefinedReferenceItem.DisplayNameAlias : clientDefinedReferenceItem.DisplayName; if (can != null && ssc != null) { ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, clientSubUnit.ClientSubUnitGuid); if (clientSubUnitClientAccount != null) { ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItem.ClientAccountNumber = can; clientDefinedReferenceItem.SourceSystemCode = ssc; ViewData["ClientDefinedReferenceItemId"] = clientDefinedReferenceItem.ClientDefinedReferenceItemId; ViewData["ClientAccountNumber"] = can; ViewData["SourceSystemCode"] = ssc; } //ClientSubUnit clientDefinedReferenceItemPNROutputVM.ClientSubUnit = clientSubUnit; //GDS GDSRepository GDSRepository = new GDSRepository(); clientDefinedReferenceItemPNROutputVM.GDSList = new SelectList(GDSRepository.GetAllGDSsExceptALL().OrderBy(x => x.GDSName).ToList(), "GDSCode", "GDSName"); //PNR Output Remark Types PNROutputRemarkTypeRepository PNROutputRemarkTypeRepository = new PNROutputRemarkTypeRepository(); clientDefinedReferenceItemPNROutputVM.PNROutputRemarkTypeCodes = new SelectList(PNROutputRemarkTypeRepository.GetPNROutputRemarkTypes(), "PNROutputRemarkTypeCode", "PNROutputRemarkTypeName", ""); //Languages LanguageRepository languageRepository = new LanguageRepository(); clientDefinedReferenceItemPNROutputVM.Languages = new SelectList(languageRepository.GetAllLanguages().ToList(), "LanguageCode", "LanguageName"); return(View(clientDefinedReferenceItemPNROutputVM)); }
public ActionResult Create(ClientSubUnitClientAccount clientSubUnitClientAccount) { //Check Exists ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid); if (clientSubUnit == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (!rolesRepository.HasWriteAccessToClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Update Model from Form try { UpdateModel(clientSubUnitClientAccount); } 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 { clientSubUnitClientAccountRepository.Add(clientSubUnitClientAccount); } catch { //Validation Errors on Table ViewData["Message"] = "Validation Error"; return(View("Error")); } return(RedirectToAction("ListBySubUnit", new { id = clientSubUnitClientAccount.ClientSubUnitGuid })); }
public ActionResult Delete(string id, string csu, string can, string ssc) { //Check Exists ClientDefinedReferenceItemValue clientDefinedReferenceItemValue = new ClientDefinedReferenceItemValue(); clientDefinedReferenceItemValue = clientDefinedReferenceItemValueRepository.GetClientDefinedReferenceItemValue(id); if (clientDefinedReferenceItemValue == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Check Exists ClientDefinedReferenceItem clientDefinedReferenceItem = new ClientDefinedReferenceItem(); clientDefinedReferenceItem = clientDefinedReferenceItemRepository.GetClientDefinedReferenceItem(clientDefinedReferenceItemValue.ClientDefinedReferenceItemId); if (clientDefinedReferenceItem == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } ClientSubUnit clientSubUnit = new ClientSubUnit(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(csu); //Check Exists if (clientSubUnit == null) { ViewData["ActionMethod"] = "EditGet"; return(View("RecordDoesNotExistError")); } //Check Access Rights to Domain if (!hierarchyRepository.AdminHasDomainWriteAccess(groupName)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } ClientDefinedReferenceItemValueVM clientDefinedReferenceItemValueVM = new ClientDefinedReferenceItemValueVM(); clientDefinedReferenceItemValueVM.ClientDefinedReferenceItemValue = clientDefinedReferenceItemValue; ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(clientDefinedReferenceItem.ClientAccountNumber, clientDefinedReferenceItem.SourceSystemCode, clientSubUnit.ClientSubUnitGuid); if (clientSubUnitClientAccount != null) { clientDefinedReferenceItemValueVM.ClientSubUnitClientAccount = clientSubUnitClientAccount; ViewData["ClientSubUnitClientAccountClientAccountName"] = clientSubUnitClientAccount.ClientAccount.ClientAccountName; } clientDefinedReferenceItemValueVM.ClientDefinedReferenceItem = clientDefinedReferenceItem; clientDefinedReferenceItemValueVM.ClientSubUnit = clientSubUnit; clientDefinedReferenceItemValueVM.ClientDefinedReferenceItemValue = clientDefinedReferenceItemValue; if (can != null && ssc != null) { ClientAccount clientAccount = new ClientAccount(); ClientAccountRepository clientAccountRepository = new ClientAccountRepository(); clientAccount = clientAccountRepository.GetClientAccount(can, ssc); if (clientAccount != null) { ViewData["ClientAccountName"] = clientAccount.ClientAccountName; ViewData["ClientAccountNumber"] = clientDefinedReferenceItem.ClientAccountNumber; ViewData["SourceSystemCode"] = clientDefinedReferenceItem.SourceSystemCode; } } return(View(clientDefinedReferenceItemValueVM)); }
public CDRImportStep2VM PreImportCheck(HttpPostedFileBase file, string clientSubUnitGuid, string displayName, string relatedToDisplayName = "") { //convert file to string so that we can parse int length = file.ContentLength; byte[] tempFile = new byte[length]; file.InputStream.Read(tempFile, 0, length); byte[] array = tempFile.ToArray(); System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding(); string fileToText = fileToText = enc.GetString(array); /* * Regex to match on CDRValue * The following Special Characters are currently allowed in CDR fields: * Alpha (A-Z), numeric (0-9), ampersand (&), asterisk (*), at sign (@), hypen (-), forward slash (/), period (.), * underscore (_), equal (=), colon (:), open/closed brackets ( ), space */ //string dataRegex = @"[^(\w|\-|@|*|(|)| |=|:|/)]+"; string dataRegex = @"[^(\w| |\-|\@|\*|\&|\(|\)|\=|\:|\/|\.)]+"; // Create the xml document container, this will be used to store the data after the Regex checks XmlDocument doc = new XmlDocument(); XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", null, null); doc.AppendChild(dec); XmlElement root = doc.CreateElement("CSUCDRs"); doc.AppendChild(root); //Client SubUnit ClientSubUnit clientSubUnit = new ClientSubUnit(); ClientSubUnitClientAccountRepository clientSubUnitClientAccountRepository = new ClientSubUnitClientAccountRepository(); ClientSubUnitRepository clientSubUnitRepository = new ClientSubUnitRepository(); clientSubUnit = clientSubUnitRepository.GetClientSubUnit(clientSubUnitGuid); string clientSubUnitName = clientSubUnit.ClientSubUnitName; List <string> returnMessages = new List <string>(); string returnMessage; int i = 0; //Store Valid ClientSubUnitClientAccounts List <ClientSubUnitClientAccount> validClientSubUnitClientAccounts = new List <ClientSubUnitClientAccount>(); List <ClientSubUnitClientAccountImport> invalidClientSubUnitClientAccounts = new List <ClientSubUnitClientAccountImport>(); //Split the CSV into lines string[] lines = fileToText.Split(new string[] { "\n", "\r\n" }, StringSplitOptions.RemoveEmptyEntries); //loop through CSV lines foreach (string line in lines) { i++; if (i > 1) //ignore first line with titles { string[] cells = line.Split(','); //extract the data items from the file string fileCostCentre = cells[0]; //CDRValue (Cost Centre) string fileSourceSystemCode = cells[1]; //SourceSystemCode string fileClientAccountNumber = cells[2]; //CWT Account No (Air/Rail) //Credit Card No field is an optional field on the .csv file string fileCreditCardNumber = string.Empty; if (cells.Length >= 4) { fileCreditCardNumber = cells[3] ?? ""; } //The RelatedToValue field is an optional field on the .csv file. If there is no CDR Display Name value entered in the Validate CDR field, //then the Import should not look for a RelatedToValue column on the .csv file string fileRelatedToValue = string.Empty; if (cells.Length >= 5) { fileRelatedToValue = cells[4] ?? ""; } //Build the XML Element for a CDR XmlElement xmlCDRItem = doc.CreateElement("CSUCDR"); //Populate the XML Element for a CDR //This XMLDoc is only used if the File Passes Validation XmlElement xmlSourceSystemCode = doc.CreateElement("SourceSystemCode"); xmlSourceSystemCode.InnerText = fileSourceSystemCode; xmlCDRItem.AppendChild(xmlSourceSystemCode); XmlElement xmlClientAccountNumber = doc.CreateElement("ClientAccountNumber"); xmlClientAccountNumber.InnerText = fileClientAccountNumber; xmlCDRItem.AppendChild(xmlClientAccountNumber); XmlElement xmlCostCentre = doc.CreateElement("CostCentre"); xmlCostCentre.InnerText = fileCostCentre; xmlCDRItem.AppendChild(xmlCostCentre); //Check for numerical credit card if (!string.IsNullOrEmpty(fileCreditCardNumber)) { int creditCardId; if (!Int32.TryParse(fileCreditCardNumber, out creditCardId)) { fileCreditCardNumber = ""; } XmlElement xmlCreditCardId = doc.CreateElement("CreditCardId"); xmlCreditCardId.InnerText = !string.IsNullOrEmpty(fileCreditCardNumber) ? fileCreditCardNumber : ""; xmlCDRItem.AppendChild(xmlCreditCardId); } if (!string.IsNullOrEmpty(fileRelatedToValue) && !string.IsNullOrEmpty(relatedToDisplayName)) { XmlElement xmlRelatedToDisplayName = doc.CreateElement("RelatedToDisplayName"); xmlRelatedToDisplayName.InnerText = !string.IsNullOrEmpty(relatedToDisplayName) ? relatedToDisplayName : ""; xmlCDRItem.AppendChild(xmlRelatedToDisplayName); XmlElement xmlRelatedToValue = doc.CreateElement("RelatedToValue"); xmlRelatedToValue.InnerText = !string.IsNullOrEmpty(fileRelatedToValue) ? fileRelatedToValue : ""; xmlCDRItem.AppendChild(xmlRelatedToValue); } //Attach the XML Element for a CDR to the Document root.AppendChild(xmlCDRItem); bool existingValidClient = validClientSubUnitClientAccounts.Where(x => x.ClientAccountNumber == fileClientAccountNumber && x.SourceSystemCode == fileSourceSystemCode && x.ClientSubUnitGuid == clientSubUnitGuid ).Count() > 0; bool existingInvalidClient = invalidClientSubUnitClientAccounts.Where(x => x.ClientAccountNumber == fileClientAccountNumber && x.SourceSystemCode == fileSourceSystemCode && x.ClientSubUnitGuid == clientSubUnitGuid ).Count() > 0; //Check Client Account belongs to this Client if (existingInvalidClient) { //Error: Account and SourceSystemCode have been detected in the data file that are not associated to the ClientSubUnit returnMessage = "Account '" + fileClientAccountNumber + "' and SourceSystemCode '" + fileSourceSystemCode + "' have been detected in the data file that are not associated to the ClientSubUnit that you have selected ('" + clientSubUnitName + "'). Please either associate the Account and SourceSystemCode to the chosen ClientSubUnit or update the data file with the correct Account and SourceSystemCode"; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } } else if (existingValidClient) { //No processing required as already marked as valid } else { ClientSubUnitClientAccount clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount( fileClientAccountNumber, fileSourceSystemCode, clientSubUnitGuid ); if (clientSubUnitClientAccount == null) { //Error: Account and SourceSystemCode have been detected in the data file that are not associated to the ClientSubUnit returnMessage = "Account '" + fileClientAccountNumber + "' and SourceSystemCode '" + fileSourceSystemCode + "' have been detected in the data file that are not associated to the ClientSubUnit that you have selected ('" + clientSubUnitName + "'). Please either associate the Account and SourceSystemCode to the chosen ClientSubUnit or update the data file with the correct Account and SourceSystemCode"; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } ClientSubUnitClientAccountImport clientSubUnitClientAccountImport = new ClientSubUnitClientAccountImport() { ClientAccountNumber = fileClientAccountNumber, SourceSystemCode = fileSourceSystemCode, ClientSubUnitGuid = clientSubUnitGuid, }; if (!invalidClientSubUnitClientAccounts.Contains(clientSubUnitClientAccountImport)) { invalidClientSubUnitClientAccounts.Add(clientSubUnitClientAccountImport); } } else { if (!validClientSubUnitClientAccounts.Contains(clientSubUnitClientAccount)) { validClientSubUnitClientAccounts.Add(clientSubUnitClientAccount); } } } //Error: There is a value that exceeds the maximum length of 50 characters if (fileCostCentre.Length > 50) { returnMessage = fileCostCentre + "is a VALUE that exceeds the maximum Value length of 50 characters. Please update the data file or select a new data file."; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } } ////Error: There is a credit card id that is not present in the database //if (!string.IsNullOrEmpty(fileCreditCardNumber)) //{ // int creditCardId = Int32.Parse(fileCreditCardNumber); // CreditCardRepository creditCardRepository = new CreditCardRepository(); // CreditCard creditCard = creditCardRepository.GetCreditCard(creditCardId, false); // if (creditCard == null) // { // returnMessage = "Credit Card Id " + fileCreditCardNumber + " has been detected in the file but is not present in the database. Please check the value and try again"; // if (!returnMessages.Contains(returnMessage)) // { // returnMessages.Add(returnMessage); // break; // } // } //} //Error: An invalid character that has been detected within the data file if (Regex.Match(fileCostCentre, dataRegex).Success) { foreach (Match n in Regex.Matches(fileCostCentre, dataRegex)) { returnMessage = n.Groups[0].Value + " is an invalid character that has been detected within the data file. Please update the data file or select a new data file to import."; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } } } //Error: If a user doesn’t include the Validate CDR field on the UI, and there are RelatedToValues listed on the Import, //the Import should fail and give the user an error message that Validate CDR value missing. if (!string.IsNullOrEmpty(fileRelatedToValue) && string.IsNullOrEmpty(relatedToDisplayName)) { returnMessage = "A value in the RelatedToValue column has been detected within the data file but the Validate CDR value missing. Please go back and enter a Validate CDR value or remove the RelatedToValue from the data file."; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } } //Error: If a user enters a value in the Validate CDR field on the UI, the Import file must include RelatedToValues else // the Import should fail and give the user an error message that RelatedToValues missing on the Import if (string.IsNullOrEmpty(fileRelatedToValue) && !string.IsNullOrEmpty(relatedToDisplayName)) { returnMessage = "A Validate CDR has been detected but the RelatedToValue is missing. Please go back and remove the Validate CDR value or add the RelatedToValue data into the data file."; if (!returnMessages.Contains(returnMessage)) { returnMessages.Add(returnMessage); } } } } if (i == 0) { returnMessage = "There is no data in the file"; returnMessages.Add(returnMessage); } CDRImportStep2VM preImportCheckResult = new CDRImportStep2VM(); preImportCheckResult.ReturnMessages = returnMessages; if (returnMessages.Count != 0) { preImportCheckResult.IsValidData = false; } else { //DB Check string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0]; var output = ( from n in db.spDesktopDataAdmin_UpdateClientSubUnitClientDefinedReferencesCount_v1( clientSubUnit.ClientSubUnitGuid, displayName, System.Xml.Linq.XElement.Parse(doc.OuterXml), adminUserGuid ) select n).ToList(); foreach (spDesktopDataAdmin_UpdateClientSubUnitClientDefinedReferencesCount_v1Result message in output) { returnMessages.Add(message.MessageText.ToString()); } preImportCheckResult.FileBytes = array; preImportCheckResult.IsValidData = true; } return(preImportCheckResult); }
public ActionResult Edit(string can, string ssc, string csu, FormCollection formCollection) { //Check Exists ClientSubUnitClientAccount clientSubUnitClientAccount = new ClientSubUnitClientAccount(); clientSubUnitClientAccount = clientSubUnitClientAccountRepository.GetClientSubUnitClientAccount(can, ssc, csu); if (clientSubUnitClientAccount == null) { ViewData["ActionMethod"] = "EditPost"; return(View("RecordDoesNotExistError")); } //Access Rights RolesRepository rolesRepository = new RolesRepository(); if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitClientAccount.ClientSubUnitGuid)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } if (!rolesRepository.HasWriteAccessToClientAccount(clientSubUnitClientAccount.ClientAccountNumber, clientSubUnitClientAccount.SourceSystemCode)) { ViewData["Message"] = "You do not have access to this item"; return(View("Error")); } //Update Item from Form try { UpdateModel(clientSubUnitClientAccount); } 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")); } //Update Item try { clientSubUnitClientAccountRepository.Update(clientSubUnitClientAccount); } catch (SqlException ex) { //Versioning Error if (ex.Message == "SQLVersioningError") { ViewData["ReturnURL"] = "/ClientSubUnitClientAccount.mvc/Edit?clientAccountNumber=" + can + "&ssc=" + ssc + "&csu=" + csu; return(View("VersionError")); } //Generic Error 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("ListBySubUnit", new { id = clientSubUnitClientAccount.ClientSubUnitGuid })); }