/// <summary> /// Used to display responses to radiobuttons or dropdowns. /// /// Retrieve a numerical response for the given def_FormResult and deF_ItemVariable from the ResponseVariables table, /// Then lookup the display text associated with the numerical response, for the current UI language. /// </summary> /// <param name="formResultId"></param> /// <param name="itm"></param> /// <param name="iv"></param> /// <returns></returns> private string GetResponseThroughLookupTables(int formResultId, def_Items itm, def_ItemVariables iv) { string rsp = GetResponse(formResultId, itm, iv); def_LookupMaster lm = formsRepo.GetLookupMastersByLookupCode(iv.identifier); if (lm == null) { return(rsp); } def_LookupDetail ld = formsRepo.GetLookupDetailByEnterpriseMasterAndDataValue(SessionHelper.LoginStatus.EnterpriseID, lm.lookupMasterId, rsp); if (ld != null) { CultureInfo ci = Thread.CurrentThread.CurrentUICulture; string region = (ci == null) ? "en" : ci.TwoLetterISOLanguageName.ToLower(); int langId = formsRepo.GetLanguageByTwoLetterISOName(region).langId; def_LookupText lt = formsRepo.GetLookupTextsByLookupDetailLanguage(ld.lookupDetailId, langId).FirstOrDefault(); if (lt != null) { return(lt.displayText); } } return(rsp); }
public def_LookupText SetLookupText(int detailId, int lang, string displayText, def_LookupText lkpTxt = null) { if (lkpTxt == null) { lkpTxt = new def_LookupText(); lkpTxt.lookupDetailId = detailId; lkpTxt.langId = (short)lang; lkpTxt.displayText = displayText; db.def_LookupText.Add(lkpTxt); } else { lkpTxt.lookupDetailId = detailId; lkpTxt.langId = (short)lang; lkpTxt.displayText = displayText; db.Entry(lkpTxt).State = EntityState.Modified; } db.SaveChanges(); return(lkpTxt); }
public ActionResult deleteText(int lookupTextId, int lookupDetailId) { def_LookupText text = formsRepo.GetLookupTextById(lookupTextId); formsRepo.DeleteLookupText(text); //lookupModel.LookupTexts = getTexts(lookupDetailId); lookupModel.detailId = lookupDetailId; return(PartialView("_Texts", lookupModel)); }
public ActionResult saveText(int lookupTextId, int lookupDetailId, int langId, string displayText) { def_LookupText text = formsRepo.GetLookupTextById(lookupTextId); formsRepo.SetLookupText(lookupDetailId, langId, displayText, text); //lookupModel.LookupTexts = getTexts(lookupDetailId); lookupModel.detailId = lookupDetailId; return(PartialView("_Texts", lookupModel)); }
/// <summary> /// Saves changes made on the SaveDetail page. /// </summary> /// <param name="adapAdminModel">Model for the SaveDetail cshtml page.</param> /// <returns>Redirects the user to the Clinic Admin page.</returns> public ActionResult SaveDetail(AdapAdmin adapAdminModel) { def_LookupDetail detail = formsRepo.GetLookupDetailById(adapAdminModel.lookupDetailId); if (detail == null) { detail = new def_LookupDetail(); detail.lookupMasterId = adapAdminModel.lookupMasterId; detail.EnterpriseID = adapAdminModel.enterpriseId; detail.GroupID = adapAdminModel.groupId; detail.dataValue = adapAdminModel.dataValue; detail.displayOrder = adapAdminModel.displayOrder; detail.StatusFlag = adapAdminModel.statusFlag ? "A" : "I"; formsRepo.AddLookupDetail(detail); } else { detail.dataValue = adapAdminModel.dataValue; detail.displayOrder = adapAdminModel.displayOrder; detail.GroupID = adapAdminModel.groupId; detail.StatusFlag = adapAdminModel.statusFlag ? "A" : "I"; formsRepo.SaveLookupDetail(detail); } def_LookupText text = formsRepo.GetLookupTextsByLookupDetail(detail.lookupDetailId).FirstOrDefault(); if (text == null) { text = new def_LookupText(); text.displayText = adapAdminModel.displayText; text.langId = 1; // English text.lookupDetailId = detail.lookupDetailId; formsRepo.AddLookupText(text); } else { text.displayText = adapAdminModel.displayText; formsRepo.SaveLookupText(text); } return RedirectToAction("Clinic", "ADAP"); }
public def_LookupText GetLookupTextByDisplayTextEnterpriseIdMasterLang(string displayText, int enterpriseId, int lookupMasterId, int langId) { def_LookupDetail lookupDetail = null; List <def_LookupDetail> lookupDetails = db.def_LookupDetail.Where(ld => (ld.EnterpriseID == enterpriseId) && (ld.lookupMasterId == lookupMasterId)).ToList(); def_LookupText lookupText = null; List <def_LookupText> lookupTexts = db.def_LookupText.Where(lt => lt.displayText == displayText && lt.langId == langId).ToList(); List <int> lookupDetailIds = new List <int>(); lookupDetailIds = lookupDetails.Select(ld => ld.lookupDetailId).ToList(); lookupText = lookupTexts.Where(lt => lookupDetailIds.Contains(lt.lookupDetailId)).FirstOrDefault(); return(lookupText); }
public ActionResult EditDetail(int lookupDetailId) { AdapAdmin model = new AdapAdmin(); model.ActiveUserName = SessionHelper.LoginStatus.FirstName + " " + SessionHelper.LoginStatus.LastName; def_LookupDetail detail = formsRepo.GetLookupDetailById(lookupDetailId); if (detail != null) { IUasSql uasSql = new UasSql(); if (detail.EnterpriseID != null) { Dictionary<int, string> groups = uasSql.getGroups(detail.EnterpriseID.Value); groups.Add(0, "Enterprise Wide"); model.groups = (new SelectList(groups.OrderBy(x => x.Key), "key", "value")).ToList(); } model.lookupDetailId = lookupDetailId; model.lookupMasterId = detail.lookupMasterId; model.enterpriseId = detail.EnterpriseID; model.groupId = detail.GroupID; model.dataValue = detail.dataValue; model.displayOrder = detail.displayOrder; model.statusFlag = (detail.StatusFlag == "A") ? true : false; def_LookupText text = formsRepo.GetLookupTextsByLookupDetail(lookupDetailId).FirstOrDefault(); if (text != null) { model.displayText = text.displayText; } } return View("~/Views/COADAP/ListItems/SaveDetail.cshtml", model); }
/// <summary> /// Update lookup detail and lookup text records in the database (add them, update existing not currently supported --LK 11/4/2015) /// </summary> /// <param name="dataValues"></param> /// <param name="formsRepo"></param> private void UpdateLookups(int enterpriseId, string[] dataValues, IFormsRepository formsRepo) { int lookupDetailId; bool newDetail = false; def_LookupMaster lookupMaster = formsRepo.GetLookupMastersByLookupCode("ADAP_CLINIC"); if (lookupMaster == null) { throw new Exception("Cannot find lookup master: code ADAP_CLINIC"); } def_LookupDetail lookupDetail = null; // Display Choice (required) if (String.IsNullOrEmpty(dataValues[1])) { throw new Exception("Display Text is required field."); } // Display Order (required) if (String.IsNullOrEmpty(dataValues[0])) { throw new Exception("Display Order is required field. Missing for: " + dataValues[1]); } short langId = 0; // Check that language ID is valid (or empty) if (!Int16.TryParse(dataValues[2], out langId) || (langId != 1 && langId != 2)) { throw new Exception("Invalid language ID for: " + dataValues[1]); } // Try to find lookup detail by ID if (Int32.TryParse(dataValues[6], out lookupDetailId)) { lookupDetail = formsRepo.GetLookupDetailById(lookupDetailId); } if (lookupDetail == null && !String.IsNullOrEmpty(dataValues[5])) // find by data value { lookupDetail = formsRepo.GetLookupDetailByEnterpriseMasterAndDataValue(enterpriseId, lookupMaster.lookupMasterId, dataValues[5]); } if (lookupDetail == null && !String.IsNullOrEmpty(dataValues[1])) // find by display text and language { def_LookupText tempLookupText = formsRepo.GetLookupTextByDisplayTextEnterpriseIdMasterLang(dataValues[1], enterpriseId, lookupMaster.lookupMasterId, langId); if (tempLookupText != null) { lookupDetail = formsRepo.GetLookupDetailById(tempLookupText.lookupDetailId); } } if (lookupDetail == null) { lookupDetail = new def_LookupDetail(); newDetail = true; } lookupDetail.lookupMasterId = lookupMaster.lookupMasterId; // Set detail's display order int dispOrder = 0; if (!Int32.TryParse(dataValues[0], out dispOrder)) { throw new Exception("Display Order is not valid for: " + dataValues[1]); } else { lookupDetail.displayOrder = dispOrder; } // Set detail's status flag if (String.IsNullOrEmpty(dataValues[4])) { lookupDetail.StatusFlag = "A"; } else if (dataValues[4].ToUpper() == "A" || dataValues[4].ToLower() == "active") { lookupDetail.StatusFlag = "A"; } else if (dataValues[4].ToUpper() == "I" || dataValues[4].ToLower() == "inactive") { lookupDetail.StatusFlag = "I"; } else { throw new Exception("Invalid value in Status Flag field for " + dataValues[1]); } // Set detail's data value (if data value field in spread sheet is blank, use display choice field instead (which is required)) string dataValue = dataValues[5]; if (String.IsNullOrEmpty(dataValues[5])) { dataValue = dataValues[1]; } lookupDetail.dataValue = dataValue; lookupDetail.EnterpriseID = enterpriseId; int groupId = 0; if (Int32.TryParse(dataValues[3], out groupId)) { lookupDetail.GroupID = groupId; UASEntities uasEntities = new UASEntities(); uas_Group group = uasEntities.uas_Group.Where(g => g.GroupID == groupId && g.EnterpriseID == enterpriseId).FirstOrDefault(); if (group == null) { throw new Exception("Group with ID " + groupId + " does not exist for " + dataValues[1]); } } else { throw new Exception("Missing group ID for " + dataValues[1]); } if (newDetail) { // Add new lookup detail formsRepo.AddLookupDetail(lookupDetail); } else { // Update existing lookup detail formsRepo.SaveLookupDetail(lookupDetail); } def_LookupText lookupText = null; bool newLookupText = false; lookupText = formsRepo.GetLookupTextsByLookupDetailLanguage(lookupDetail.lookupDetailId, langId).FirstOrDefault(); if (lookupText == null) { lookupText = new def_LookupText(); newLookupText = true; } // Set Display Choice (required) lookupText.displayText = dataValues[1]; // Set Language if (String.IsNullOrEmpty(dataValues[2])) { throw new Exception("Language ID is a required field."); } else { // Language ID is either 1 (English) or 2 (Spanish), so use value lookupText.langId = langId; } // Set lookup detail ID to be for the associated lookup detail (either just saved/added) lookupText.lookupDetailId = lookupDetail.lookupDetailId; if (newLookupText) { // Add new lookup text formsRepo.AddLookupText(lookupText); } else { // Update the lookup text formsRepo.SaveLookupText(lookupText); } }
public string DataTableDetails(int draw, int start, int length, string searchValue, string searchRegex, string order) { int masterId = 0; int ent = 0; int grp = 0; string result = String.Empty; Debug.WriteLine("Def3Maint Controller DataTableDetails draw:" + draw.ToString()); Debug.WriteLine("Def3Maint Controller DataTableDetails start:" + start.ToString()); Debug.WriteLine("Def3Maint Controller DataTableDetails searchValue:" + searchValue); Debug.WriteLine("Def3Maint Controller DataTableDetails searchRegex:" + searchRegex); Debug.WriteLine("Def3Maint Controller DataTableDetails order:" + order); try { string r = Request["masterId"]; if (!String.IsNullOrEmpty(r)) { masterId = Convert.ToInt32(r); } r = Request["entId"]; if (!String.IsNullOrEmpty(r)) { try { ent = Convert.ToInt32(r); } catch (FormatException excptn) { } } r = Request["grpId"]; if (!String.IsNullOrEmpty(r)) { try { grp = Convert.ToInt32(r); } catch (FormatException excptn) { } } // Lists all the Request parameters foreach (string s in Request.Params.Keys) { Debug.WriteLine(s.ToString() + ":" + Request.Params[s]); } try { // Initialize the DataTable response (later transformed to JSON) DataTableResult dtr = new DataTableResult() { draw = draw, recordsTotal = 1, recordsFiltered = 1, data = new List <string[]>(), error = String.Empty }; // rename to avoid language/library conflicts int iniIndex = start; int noDsplyRecs = length; int englishId = 0; foreach (def_Languages l in formsRepo.GetAllLanguages()) { if (l.title.Equals("English")) { englishId = l.langId; break; } } List <def_LookupDetail> query = formsRepo.GetLookupDetails(masterId, ent, grp); List <def_BaseTypes> types = formsRepo.GetBaseTypes(); dtr.recordsTotal = dtr.recordsFiltered = query.Count(); foreach (def_LookupDetail q in query.Skip(iniIndex).Take(noDsplyRecs).ToList()) { def_LookupText dl = formsRepo.GetLookupTextsByLookupDetailLanguage(q.lookupDetailId, englishId).FirstOrDefault(); string engText = (dl != null) ? dl.displayText : String.Empty; string[] data = new string[] { "<span id=\"dataValue[" + q.lookupDetailId + "]\">" + q.dataValue + "</span>", "<span id=\"order[" + q.lookupDetailId + "]\">" + q.displayOrder + "</span>", "<span id=\"english[" + q.lookupDetailId + "]\">" + engText + "</span>", "<span id=\"editDetail[" + q.lookupDetailId + "]\"><a href=\"#\" onclick=\"editDetail(" + q.lookupDetailId + ")\">Edit</a></span>" + "<span id=\"saveDetail[" + q.lookupDetailId + "]\" hidden=\"hidden\"><a href=\"#\" onclick=\"saveDetail(" + q.lookupDetailId + ")\">Save </a></span>", "<span id=\"textDetail[" + q.lookupDetailId + "]\"><a href=\"#\" onclick=\"textDetail(" + q.lookupDetailId + ", '" + q.dataValue + "')\">View Text </a></span>" + "<span id=\"cancelDetail[" + q.lookupDetailId + "]\" hidden=\"hidden\"><a href=\"#\" onclick=\"cancelDetail(" + q.lookupDetailId + ")\">Cancel </a></span>", "<span id=\"deleteDetail[" + q.lookupDetailId + "]\"><a href=\"#\" onclick=\"deleteDetail(" + q.lookupDetailId + ", '" + q.dataValue + "')\">Delete</a></span>" }; dtr.data.Add(data); } Debug.WriteLine("Def3Maint Controller DataTableDetails data populated."); // Output the JSON in DataTable format fastJSON.JSONParameters param = new fastJSON.JSONParameters(); param.EnableAnonymousTypes = true; result = fastJSON.JSON.ToJSON(dtr, param); Debug.WriteLine("Def3Maint Controller DataTableDetails result:" + result); } catch (Exception excptn) { Debug.WriteLine("Def3Maint Controller DataTableDetails exception:" + excptn.Message); result = excptn.Message + " - " + excptn.Message; } } catch (FormatException excptn) { Debug.WriteLine("Def3Maint Controller DataTableDetails masterId format exception:" + excptn.Message); } return(result); }
public void SaveLookupText(def_LookupText lkpTxt) { db.Entry(lkpTxt).State = EntityState.Modified; db.SaveChanges(); }
public void AddLookupText(def_LookupText lkpTxt) { db.def_LookupText.Add(lkpTxt); db.SaveChanges(); }
public void DeleteLookupText(def_LookupText lkpTxt) { db.def_LookupText.Remove(lkpTxt); db.SaveChanges(); }