private void butSelect_Click(object sender, EventArgs e) { int len = lvProductAll.SelectedItems.Count; QuantifyMenu qm = LqtUtil.GetComboBoxValue <QuantifyMenu>(comClass); IList <QuantificationMetric> templits = new List <QuantificationMetric>(); for (int i = 0; i < len; i++) { QuantificationMetric metric = new QuantificationMetric(); metric.ClassOfTest = qm.ClassOfTest; metric.CollectionSupplieAppliedTo = CollectionSupplieAppliedToEnum.Testing.ToString(); metric.Product = (MasterProduct)lvProductAll.SelectedItems[i].Tag; metric.QuantifyMenu = qm; metric.UsageRate = 1; qm.QuantificationMetrics.Add(metric); templits.Add(metric); } lstSelectedPro.BeginUpdate(); foreach (QuantificationMetric m in templits) { ListViewItem li = new ListViewItem(m.Product.ProductName) { Tag = m }; li.SubItems.Add(qm.DisplayTitle); lstSelectedPro.Items.Add(li); } lstSelectedPro.EndUpdate(); }
private void lbtRemove_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { QuantificationMetric qmetric = GetSelectedGeneralQM(); if (qmetric != null) { if (MessageBox.Show("Are you sure you want to delete this Quantification Metric?", "Delete Quantification Metric", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { QuantifyMenu qm = qmetric.QuantifyMenu; qm.QuantificationMetrics.Remove(qmetric); DataRepository.SaveOrUpdateQuantifyMenu(qm); PopGeneralQM(); lbtRemove.Enabled = false; MdiParentForm.ShowStatusBarInfo("Quantification Metric was deleted successfully."); } catch (Exception ex) { new FrmShowError(new ExceptionStatus() { ex = ex, message = "Sorry, there are an error to delete this Quantification Metric." }).ShowDialog(); } } } }
private void AddModifiedQMenu(QuantifyMenu qmenu) { if (!_modifiedQuantifyMenus.ContainsKey(qmenu.Id)) { _modifiedQuantifyMenus.Add(qmenu.Id, qmenu); } }
private static QuantifyMenu CreateNewQMenu(MorbidityTest morbidityTest) { QuantifyMenu qmenu = new QuantifyMenu(); qmenu.ClassOfTest = morbidityTest.ClassOfTest; qmenu.InstrumentId = morbidityTest.Instrument.Id; qmenu.MorbidityTest = morbidityTest; return(qmenu); }
private bool IsQMSelectedToSave(QuantifyMenu qm) { foreach (QuantifyMenu q in _qmtosave) { if (q.Id == qm.Id) { return(true); } } return(false); }
private static void CreateChemistryTestQM(MorbidityTest _morbidityTest) { ChemistryTestNameEnum[] chem = LqtUtil.EnumToArray <ChemistryTestNameEnum>(); for (int i = 0; i < chem.Length; i++) { QuantifyMenu qmenuTest = CreateNewQMenu(_morbidityTest); qmenuTest.ChemTestName = chem[i].ToString(); qmenuTest.Title = String.Format("{0} Tests - {1}", chem[i], _morbidityTest.Instrument.InstrumentName); qmenuTest.TestType = TestTypeEnum.Test.ToString(); _morbidityTest.QuantifyMenus.Add(qmenuTest); } }
private void lbtRemoveReagent_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if ((_sListView.SelectedItems.Count > 0) && MessageBox.Show("Are you sure, do you want to remove it?", "ART-Test Reagent", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { QuantificationMetric metric = _sListView.SelectedItems[0].Tag as QuantificationMetric; QuantifyMenu qm = _morbidityTest.GetQuantifyMenuById(metric.QuantifyMenu.Id); qm.QuantificationMetrics.Remove(metric); DataRepository.SaveOrUpdateMorbidityTest(_morbidityTest); PopListView(); } }
private void SearchSelectedPro() { if (_selectedPro == null) { _selectedPro = new List <int>(); } else { _selectedPro.Clear(); } QuantifyMenu qm = LqtUtil.GetComboBoxValue <QuantifyMenu>(comClass); foreach (QuantificationMetric m in qm.QuantificationMetrics) { _selectedPro.Add(m.Product.Id); } }
private void SaveRapidTests() { for (int i = 0; i <= 2; i++) { DataRepository.SaveOrUpdateRapidTestSpec(_scrtest[i]); if (_scrtest[i].Product != null && DataRepository.GetQuantifyMenuByProductId(_scrtest[i].Product.Id) == null) { QuantifyMenu qmenu = new QuantifyMenu(); qmenu.ClassOfTest = ClassOfMorbidityTestEnum.RapidTest.ToString(); qmenu.TestType = TestTypeEnum.Test.ToString(); qmenu.ProductId = _scrtest[i].Product.Id; qmenu.Title = "Screening - " + _scrtest[i].Product.ProductName; DataRepository.SaveOrUpdateQuantifyMenu(qmenu); } DataRepository.SaveOrUpdateRapidTestSpec(_contest[i]); if (_contest[i].Product != null && DataRepository.GetQuantifyMenuByProductId(_contest[i].Product.Id) == null) { QuantifyMenu qmenu = new QuantifyMenu(); qmenu.ClassOfTest = ClassOfMorbidityTestEnum.RapidTest.ToString(); qmenu.TestType = TestTypeEnum.Test.ToString(); qmenu.ProductId = _contest[i].Product.Id; qmenu.Title = "Confirmatory - " + _contest[i].Product.ProductName; DataRepository.SaveOrUpdateQuantifyMenu(qmenu); } DataRepository.SaveOrUpdateRapidTestSpec(_tietest[i]); if (_tietest[i].Product != null && DataRepository.GetQuantifyMenuByProductId(_tietest[i].Product.Id) == null) { QuantifyMenu qmenu = new QuantifyMenu(); qmenu.ClassOfTest = ClassOfMorbidityTestEnum.RapidTest.ToString(); qmenu.TestType = TestTypeEnum.Test.ToString(); qmenu.ProductId = _tietest[i].Product.Id; qmenu.Title = "Tie-Breaker - " + _tietest[i].Product.ProductName; DataRepository.SaveOrUpdateQuantifyMenu(qmenu); } } _paramNegative.ParmValue = comBothnegative.Text; _paramPositive.ParmValue = comBothpostive.Text; _paramDiscordant.ParmValue = comDiscordant.Text; DataRepository.SaveOrUpdateForlabParameter(_paramNegative); DataRepository.SaveOrUpdateForlabParameter(_paramPositive); DataRepository.SaveOrUpdateForlabParameter(_paramDiscordant); _edited = false; }
private void DoQuantification() { //DOES THIS SITE RECEIVE Chemistry SUPPLIES? if (ArtSite.ForecastVCT) { double value; foreach (QuantifyMenu qm in _platformObject.GeneralQuantifyMenus) { value = 0; if (qm.Title == GeneralQuantifyMenuEnum.Total_Rapid_Tests.ToString()) { value = _s1 + _s2 + _s3 + _c1 + _c2 + _c3 + _t1 + _t2 + _t3; } else if (qm.Title == GeneralQuantifyMenuEnum.Total_Screenings.ToString()) { value = _s1 + _s2 + _s3; } if (qm.Title == GeneralQuantifyMenuEnum.Total_Confirmatory_Tests.ToString()) { value = _c1 + _c2 + _c3; } if (qm.Title == GeneralQuantifyMenuEnum.Total_Tie_Breaker_Tests.ToString()) { value = _t1 + _t2 + _t3; } if (qm.Title == GeneralQuantifyMenuEnum.Total_Screenings_Plus_Confirmatory.ToString()) { value = _s1 + _s2 + _s3 + _c1 + _c2 + _c3; } if (qm.Title == GeneralQuantifyMenuEnum.Total_Screenings_Plus_Tie_Breaker.ToString()) { value = _s1 + _s2 + _s3 + _t1 + _t2 + _t3; } if (qm.Title == GeneralQuantifyMenuEnum.Total_Confirmatory_Plus_Tie_Breaker.ToString()) { value = _c1 + _c2 + _c3 + _t1 + _t2 + _t3; } if (value > 0) { QMenuWithValue qval = new QMenuWithValue(); qval.QuantifyMenuId = qm.Id; qval.SiteValue = value; qval.ReferalSiteValue = 0; _listOfQMenuWithValue.Add(qval); } } for (int i = 1; i <= 3; i++) { int prodcutId = RTestAlgorithm.GetProductId(TestingSpecificationGroup.Screening, i); if (prodcutId > 0) { QuantifyMenu pqm = _platformObject.GetQuantifyMenuByProductId(prodcutId); QMenuWithValue qval = new QMenuWithValue(); qval.QuantifyMenuId = pqm.Id; qval.ReferalSiteValue = 0; if (i == 1) { qval.SiteValue = _s1; } else if (i == 2) { qval.SiteValue = _s2; } else { qval.SiteValue = _s3; } _listOfQMenuWithValue.Add(qval); } prodcutId = RTestAlgorithm.GetProductId(TestingSpecificationGroup.Confirmatory, i); if (prodcutId > 0) { QuantifyMenu pqmC = _platformObject.GetQuantifyMenuByProductId(prodcutId); QMenuWithValue qvalC = new QMenuWithValue(); qvalC.QuantifyMenuId = pqmC.Id; qvalC.ReferalSiteValue = 0; if (i == 1) { qvalC.SiteValue = _c1; } else if (i == 2) { qvalC.SiteValue = _c2; } else { qvalC.SiteValue = _c3; } _listOfQMenuWithValue.Add(qvalC); } prodcutId = RTestAlgorithm.GetProductId(TestingSpecificationGroup.Tie_Breaker, i); if (prodcutId > 0) { QuantifyMenu pqmT = _platformObject.GetQuantifyMenuByProductId(prodcutId); QMenuWithValue qvalT = new QMenuWithValue(); qvalT.QuantifyMenuId = pqmT.Id; qvalT.ReferalSiteValue = 0; if (i == 1) { qvalT.SiteValue = _t1; } else if (i == 2) { qvalT.SiteValue = _t2; } else { qvalT.SiteValue = _t3; } _listOfQMenuWithValue.Add(qvalT); } } foreach (QMenuWithValue qm in _listOfQMenuWithValue) { IList <QuantificationMetric> list = _platformObject.GetQuanMetricByQuanMenuId(qm.QuantifyMenuId); foreach (QuantificationMetric r in list) { PrimeryQuantifyedReagent pqr = new PrimeryQuantifyedReagent(); pqr.ProductId = r.Product.Id; pqr.UnitCost = r.Product.GetActiveProductPrice(DateTime.Now).Price; pqr.PackSize = r.Product.GetActiveProductPrice(DateTime.Now).PackSize; pqr.Unit = r.Product.BasicUnit; double testperpack = r.Product.GetActiveProductPrice(DateTime.Now).PackSize / r.UsageRate; double valueofmetric = r.CollectionSupplieAppliedTo == CollectionSupplieAppliedToEnum.Collection.ToString() ? qm.SiteValue : qm.TotalValue; if (ArtSite.Site.CD4RefSite > 0 && r.CollectionSupplieAppliedTo == CollectionSupplieAppliedToEnum.Testing.ToString()) { valueofmetric = 0; } pqr.Value = testperpack > 0 ? valueofmetric / testperpack : 0; pqr.MinimumQuantity = r.Product.MinimumPackSize; _lstPrimaryQuanReagents.AddPrimeryQR(pqr); } } } }
public static void CreateQuantifyMenus(MorbidityTest morbidityTest) { QuantifyMenu qmenuTest = CreateNewQMenu(morbidityTest); qmenuTest.Title = BuildTestName(morbidityTest.Instrument.InstrumentName, morbidityTest.ClassOfTestEnum); if (morbidityTest.ClassOfTestEnum != ClassOfMorbidityTestEnum.Chemistry) { qmenuTest.TestType = TestTypeEnum.Test.ToString(); morbidityTest.QuantifyMenus.Add(qmenuTest); } else { qmenuTest.TestType = TestTypeEnum.SamplesRunOn.ToString(); morbidityTest.QuantifyMenus.Add(qmenuTest); CreateChemistryTestQM(morbidityTest); } QuantifyMenu qmenuCon = CreateNewQMenu(morbidityTest); qmenuCon.Title = String.Format("{0} Controls - {1}", morbidityTest.ClassOfTest, morbidityTest.Instrument.InstrumentName); qmenuCon.TestType = TestTypeEnum.ControlTest.ToString(); qmenuCon.Duration = TestingDurationEnum.TotalControl.ToString(); morbidityTest.QuantifyMenus.Add(qmenuCon); QuantifyMenu qmenuPertest = CreateNewQMenu(morbidityTest); qmenuPertest.Title = String.Format("{0} Controls Per Test-{1}", morbidityTest.ClassOfTest, morbidityTest.Instrument.InstrumentName); qmenuPertest.TestType = TestTypeEnum.ControlTest.ToString(); qmenuPertest.Duration = TestingDurationEnum.PerTest.ToString(); morbidityTest.QuantifyMenus.Add(qmenuPertest); QuantifyMenu qmenuDaily = CreateNewQMenu(morbidityTest); qmenuDaily.Title = String.Format("{0} Daily Controls-{1}", GetTestShortName(morbidityTest.ClassOfTestEnum), morbidityTest.Instrument.InstrumentName); qmenuDaily.TestType = TestTypeEnum.ControlTest.ToString(); qmenuDaily.Duration = TestingDurationEnum.Daily.ToString(); morbidityTest.QuantifyMenus.Add(qmenuDaily); QuantifyMenu qmenuWeekly = CreateNewQMenu(morbidityTest); qmenuWeekly.Title = String.Format("{0} Weekly Controls-{1}", GetTestShortName(morbidityTest.ClassOfTestEnum), morbidityTest.Instrument.InstrumentName); qmenuWeekly.TestType = TestTypeEnum.ControlTest.ToString(); qmenuWeekly.Duration = TestingDurationEnum.Weekly.ToString(); morbidityTest.QuantifyMenus.Add(qmenuWeekly); QuantifyMenu qmenuMonth = CreateNewQMenu(morbidityTest); qmenuMonth.Title = String.Format("{0} Monthly Controls-{1}", GetTestShortName(morbidityTest.ClassOfTestEnum), morbidityTest.Instrument.InstrumentName); qmenuMonth.TestType = TestTypeEnum.ControlTest.ToString(); qmenuMonth.Duration = TestingDurationEnum.Monthly.ToString(); morbidityTest.QuantifyMenus.Add(qmenuMonth); QuantifyMenu qmenuQua = CreateNewQMenu(morbidityTest); qmenuQua.Title = String.Format("{0} Quarterly Controls-{1}", GetTestShortName(morbidityTest.ClassOfTestEnum), morbidityTest.Instrument.InstrumentName); qmenuQua.TestType = TestTypeEnum.ControlTest.ToString(); qmenuQua.Duration = TestingDurationEnum.Quarterly.ToString(); morbidityTest.QuantifyMenus.Add(qmenuQua); QuantifyMenu qmenuPerins = CreateNewQMenu(morbidityTest); qmenuPerins.Title = String.Format("Per Instrument-{0}", morbidityTest.Instrument.InstrumentName); qmenuPerins.TestType = TestTypeEnum.PerInstrument.ToString(); morbidityTest.QuantifyMenus.Add(qmenuPerins); QuantifyMenu qmenuPerday = CreateNewQMenu(morbidityTest); qmenuPerday.Title = String.Format("Per Day-{0}", morbidityTest.Instrument.InstrumentName); qmenuPerday.TestType = TestTypeEnum.PerDay.ToString(); morbidityTest.QuantifyMenus.Add(qmenuPerday); }
public static void DeleteQuantifyMenu(QuantifyMenu mtest) { DaoFactory.GetDaoFactory().CreateQuantifyMenuDao().Delete(mtest); }
public static void SaveOrUpdateQuantifyMenu(QuantifyMenu mtest) { DaoFactory.GetDaoFactory().CreateQuantifyMenuDao().SaveOrUpdate(mtest); }
private IList <ImportQVariableData> GetDataRow(DataSet ds) { DataRepository.CloseSession(); int rowno = 0; IList <ImportQVariableData> rdlist = new List <ImportQVariableData>(); double usagerate; _modifiedQuantifyMenus = new Dictionary <int, QuantifyMenu>(); _listofQmenus = null; foreach (DataRow dr in ds.Tables[0].Rows) { rowno++; if (!DatarowValueToDouble(dr[1], out usagerate)) { usagerate = 1; } ImportQVariableData rd = new ImportQVariableData(Convert.ToString(dr[0]), usagerate, Convert.ToString(dr[2]), Convert.ToString(dr[3]), rowno); rdlist.Add(rd); } foreach (ImportQVariableData rd in rdlist) { if (!string.IsNullOrEmpty(rd.ProductName)) { rd.Product = DataRepository.GetProductByName(rd.ProductName); if (rd.Product != null) { if (!string.IsNullOrEmpty(rd.QuantifyMenu)) { QuantifyMenu qm = GetQuantifyMenuByTitle(rd.QuantifyMenu); if (qm != null) { if (qm.IsProductSelected(rd.Product.Id)) { rd.IsExist = true; rd.ErrorDescription = "Already this quantification variable is existed"; } else { QuantificationMetric qmetric = new QuantificationMetric(); qmetric.ClassOfTest = qm.ClassOfTest; qmetric.CollectionSupplieAppliedTo = rd.AppliedTo; qmetric.Product = rd.Product; qmetric.QuantifyMenu = qm; qmetric.UsageRate = rd.UsageRate; qm.QuantificationMetrics.Add(qmetric); AddModifiedQMenu(qm); } } else { rd.HasError = true; rd.ErrorDescription = "Error: unable to found Quantification variable"; } } else { rd.HasError = true; rd.ErrorDescription = "Error: Quantify according to is empty"; } } else { rd.HasError = true;; rd.ErrorDescription = "Error: unable to found a Product"; } } else { rd.HasError = true; rd.ErrorDescription = "Error: Product name is empty"; } } return(rdlist); }