Beispiel #1
0
        public FISHProbeComment(YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection)
        {
            this.m_PanelSetOrderCPTCodeCollection = panelSetOrderCPTCodeCollection;
            Business.Billing.Model.CptCodeCollection allCPTCodes = Store.AppDataStore.Instance.CPTCodeCollection.Clone();
            this.m_FISHCPTCodes = allCPTCodes.GetFISHCPTCodeCollection();

            if (this.IsOKToCreateComment() == true)
            {
                StringBuilder result = new StringBuilder();
                StringBuilder temp   = new StringBuilder();

                int quantity88374 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88374");
                int quantity88377 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88377");
                int quantity88368 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88368");
                int quantity88369 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88369");
                int quantity88367 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88367");
                int quantity88373 = panelSetOrderCPTCodeCollection.GetCodeQuantity("88373");

                GetCodeResult(temp, quantity88374, " of computer assisted, multiplex stains or probe sets");
                GetCodeResult(temp, quantity88377, " of manual, multiplex stains or probe sets");
                GetCodeResult(temp, quantity88368 + quantity88369, " of manual, single stains or probe sets");
                GetCodeResult(temp, quantity88367 + quantity88373, " of computer assisted, single stains or probe sets");

                if (temp.Length > 0)
                {
                    result.Append("This analysis was performed using ");
                    result.Append(temp);
                    result.Append(".");
                }

                this.m_Comment = result.ToString();
            }
        }
Beispiel #2
0
        public override void PostTechnical(string billTo, string billBy)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.PanelSet.Model.PanelSetCollection allPanelSets = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll();
                YellowstonePathology.Business.PanelSet.Model.PanelSet           panelSet     = allPanelSets.GetPanelSet(this.m_PanelSetOrder.PanelSetId);

                YellowstonePathology.Business.Billing.Model.CptCodeCollection     cptCodeCollection = YellowstonePathology.Business.Billing.Model.CptCodeCollection.GetAll();
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();

                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Billing.Model.CptCode cptCode = cptCodeCollection.GetCptCode(panelSetOrderCPTCode.CPTCode);
                    if (cptCode.HasTechnicalComponent == true)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        item.BillTo   = "Client";
                        item.BillBy   = "YPIBLGS";
                        item.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);
                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                    }
                }
            }
        }
Beispiel #3
0
        public void PostManualEntriesTechnical(string billTo, string billBy)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.Billing.Model.CptCodeCollection     cptCodeCollection = YellowstonePathology.Business.Billing.Model.CptCodeCollection.GetAll();
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetManualEntrySummaryCollection();

                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Billing.Model.CptCode cptCode = cptCodeCollection.GetNewInstance(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier);
                    if (cptCode.HasBillableTechnicalComponent() == true)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        item.ClientId = this.m_AccessionOrder.ClientId;
                        item.BillTo   = billTo;
                        item.BillBy   = billBy;
                        item.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);

                        if (this.m_AccessionOrder.PrimaryInsurance == "Medicare")
                        {
                            if (cptCode.HasMedicareQuantityLimit == true)
                            {
                                item.Quantity = cptCode.MedicareQuantityLimit;
                            }
                        }

                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                    }
                }
            }
        }
Beispiel #4
0
        public override void PostTechnical(string billTo, string billBy)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.PanelSet.Model.PanelSetCollection    allPanelSets = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll();
                YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest panelSet     = (YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest)allPanelSets.GetPanelSet(this.m_PanelSetOrder.PanelSetId);

                YellowstonePathology.Business.Billing.Model.CptCodeCollection     cptCodeCollection = YellowstonePathology.Business.Billing.Model.CptCodeCollection.GetAll();
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();

                if (panelSet.HasSplitCPTCode == true)
                {
                    foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                    {
                        YellowstonePathology.Business.Billing.Model.CptCode cptCode = cptCodeCollection.GetCptCode(panelSetOrderCPTCode.CPTCode);
                        if (cptCode.HasTechnicalComponent == true)
                        {
                            YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                            item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                            item.BillTo   = billTo;
                            item.BillBy   = billBy;
                            item.Modifier = null;
                            this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                        }
                    }
                }
                else
                {
                    base.PostTechnical(billTo, billBy);
                }
            }
        }
Beispiel #5
0
        public virtual void PostGlobal(string billTo, string billby)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.Billing.Model.CptCodeCollection     cptCodeCollection = YellowstonePathology.Business.Billing.Model.CptCodeCollection.GetAll();
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();
                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Billing.Model.CptCode cptCode = cptCodeCollection.GetCptCode(panelSetOrderCPTCode.CPTCode);

                    YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                    item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                    item.BillTo = billTo;
                    item.BillBy = billby;

                    if (this.m_AccessionOrder.PrimaryInsurance == "Medicare")
                    {
                        if (cptCode.HasMedicareQuantityLimit == true)
                        {
                            item.Quantity = cptCode.MedicareQuantityLimit;
                        }
                    }

                    this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                }
            }
        }
 public BillingSpecimenViewCollection(YellowstonePathology.Business.Test.Surgical.SurgicalSpecimenCollection surgicalSpecimenCollection,
                                      YellowstonePathology.Business.Specimen.Model.SpecimenOrderCollection specimenOrderCollection,
                                      YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection,
                                      YellowstonePathology.Business.Billing.Model.ICD9BillingCodeCollection icd9BillingCodeCollection)
 {
     this.Refresh(surgicalSpecimenCollection, specimenOrderCollection, panelSetOrderCPTCodeCollection, icd9BillingCodeCollection);
 }
Beispiel #7
0
        public virtual void PostTechnical(string billTo, string billby)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();

                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier);
                    if (cptCode.HasTechnicalComponent == true)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        item.BillTo   = billTo;
                        item.BillBy   = billby;
                        item.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);

                        if (this.m_AccessionOrder.PrimaryInsurance == "Medicare" && cptCode.HasMedicareQuantityLimit == true && billTo == "Patient")
                        {
                            item.Quantity = cptCode.MedicareQuantityLimit;
                        }
                        else
                        {
                            item.Quantity = panelSetOrderCPTCode.Quantity;
                        }

                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                    }
                }
            }
        }
Beispiel #8
0
 public BillingSpecimenView(YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen,
                            YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder,
                            YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection,
                            YellowstonePathology.Business.Billing.Model.ICD9BillingCodeCollection icd9BillingCodeCollection)
 {
     this.m_SurgicalSpecimen = surgicalSpecimen;
     this.m_SpecimenOrder    = specimenOrder;
     this.m_PanelSetOrderCPTCodeCollection = panelSetOrderCPTCodeCollection;
     this.m_ICD9BillingCodeCollection      = icd9BillingCodeCollection;
 }
        public BillingSpecimenView(YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen,
			YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder,
			YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection,
			YellowstonePathology.Business.Billing.ICD9BillingCodeCollection icd9BillingCodeCollection)
        {
            this.m_SurgicalSpecimen = surgicalSpecimen;
            this.m_SpecimenOrder = specimenOrder;
            this.m_PanelSetOrderCPTCodeCollection = panelSetOrderCPTCodeCollection;
            this.m_ICD9BillingCodeCollection = icd9BillingCodeCollection;
            this.m_SpecimenCollection = YellowstonePathology.Business.Specimen.Model.SpecimenCollection.GetAll();
        }
 private void PQRSSignoutPage_Loaded(object sender, RoutedEventArgs e)
 {
     YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection = this.m_SurgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(this.m_SurgicalSpecimen.SpecimenOrderId);
     for (int idx = 0; idx < this.m_PQRSMeasure.PQRSCodeCollection.Count; idx++)
     {
         if (panelSetOrderCPTCodeCollection.Exists(this.m_PQRSMeasure.PQRSCodeCollection[idx].Code, 1) == true)
         {
             this.RadioButtonList.SelectedIndex = idx;
             break;
         }
     }
 }
Beispiel #11
0
        private bool AllCPTCodesArePresent(YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection)
        {
            bool result = true;

            foreach (YellowstonePathology.Business.Billing.Model.CptCode cptCode in this.m_CptCodeCollection)
            {
                if (panelSetOrderCPTCodeCollection.GetPanelSetOrderCPTCodeByCPTCode(cptCode.Code) == null)
                {
                    result = false;
                    break;
                }
            }

            return(result);
        }
 public void Refresh(YellowstonePathology.Business.Test.Surgical.SurgicalSpecimenCollection surgicalSpecimenCollection,
                     YellowstonePathology.Business.Specimen.Model.SpecimenOrderCollection specimenOrderCollection,
                     YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection,
                     YellowstonePathology.Business.Billing.Model.ICD9BillingCodeCollection icd9BillingCodeCollection)
 {
     this.Clear();
     foreach (YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen in surgicalSpecimenCollection)
     {
         YellowstonePathology.Business.Specimen.Model.SpecimenOrder            specimenOrder  = specimenOrderCollection.GetSpecimenOrderById(surgicalSpecimen.SpecimenOrderId);
         YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection     codeCollection = panelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(specimenOrder.SpecimenOrderId);
         YellowstonePathology.Business.Billing.Model.ICD9BillingCodeCollection icd9Collection = icd9BillingCodeCollection.GetSurgicalSpecimenCollection(surgicalSpecimen.SurgicalSpecimenId);
         BillingSpecimenView billingSpecimenView = new BillingSpecimenView(surgicalSpecimen, specimenOrder, codeCollection, icd9Collection);
         this.Add(billingSpecimenView);
     }
 }
Beispiel #13
0
        public virtual bool DoesMeasureApply(YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder surgicalTestOrder,
                                             YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen, int patientAge)
        {
            bool result = false;

            if (this.m_PQRIKeyWordCollection.WordsExistIn(surgicalSpecimen.SpecimenOrder.Description) == true)
            {
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollectionForThisSpecimen = surgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(surgicalSpecimen.SpecimenOrder.SpecimenOrderId);
                if (panelSetOrderCPTCodeCollectionForThisSpecimen.DoesCollectionHaveCodes(this.m_CptCodeCollection) == true)
                {
                    result = true;
                }
            }
            return(result);
        }
Beispiel #14
0
        public override bool DoesMeasureApply(YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder surgicalTestOrder,
                                              YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen, int patientAge)
        {
            bool result = false;

            if (this.CancerSummaryApplies(surgicalTestOrder) == true || this.DiagnosisApplies(surgicalSpecimen) == true)
            {
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollectionForThisSpecimen = surgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(surgicalSpecimen.SpecimenOrder.SpecimenOrderId);
                if (panelSetOrderCPTCodeCollectionForThisSpecimen.DoesCollectionHaveCodes(this.m_CptCodeCollection) == true)
                {
                    result = true;
                }
            }
            return(result);
        }
Beispiel #15
0
        private bool IndicatorExists(string description, string diagnosis, YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollection)
        {
            bool result = false;

            if (this.m_DescriptionKeyWords.WordsExistIn(description) == true)
            {
                if (this.m_DiagnosisKeyWords.WordsExistIn(diagnosis) == true)
                {
                    if (panelSetOrderCPTCodeCollection.DoesCollectionHaveCodes(this.m_CptCodeCollection) == true)
                    {
                        result = true;
                    }
                }
            }
            return(result);
        }
        public override void PostGlobal(string billTo, string billBy)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();

                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                    item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                    item.BillTo = billTo;
                    item.BillBy = billBy;
                    this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                }
            }
        }
Beispiel #17
0
        public BillingPage(string reportNo, YellowstonePathology.Business.Test.AccessionOrder accessionOrder)
        {
            this.m_AccessionOrder = accessionOrder;
            this.m_ReportNo       = reportNo;

            this.m_FacilityCollection = YellowstonePathology.Business.Facility.Model.FacilityCollection.GetAllFacilities();
            this.m_FacilityCollection.Insert(0, new Business.Facility.Model.NullFacility());

            this.m_PanelSetOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(this.m_ReportNo);
            this.m_PanelSetOrderCPTCodeCollection     = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection;
            this.m_PanelSetOrderCPTCodeBillCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection;

            this.m_CaseDocumentCollection = new Business.Document.CaseDocumentCollection(this.m_ReportNo);
            this.m_PageHeaderText         = "Billing For: " + this.m_AccessionOrder.PatientDisplayName + " - " + this.m_AccessionOrder.PBirthdate.Value.ToShortDateString();

            InitializeComponent();

            DataContext  = this;
            this.Loaded += new RoutedEventHandler(BillingPage_Loaded);
            Unloaded    += BillingPage_Unloaded;
        }
        public override void PostTechnical(string billTo, string billby)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();

                foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                {
                    YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier);
                    if (cptCode.HasTechnicalComponent == true)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        item.BillTo   = billTo;
                        item.BillBy   = billby;
                        item.Modifier = null;
                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);
                    }
                }
            }
        }
Beispiel #19
0
        public BillingPage(string reportNo, YellowstonePathology.Business.Test.AccessionOrder accessionOrder)
        {
            this.m_AccessionOrder = accessionOrder;
            this.m_ReportNo = reportNo;

            this.m_FacilityCollection = YellowstonePathology.Business.Facility.Model.FacilityCollection.GetAllFacilities();
            this.m_FacilityCollection.Insert(0, new Business.Facility.Model.NullFacility());

            this.m_PanelSetOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(this.m_ReportNo);
            this.m_PanelSetOrderCPTCodeCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection;
            this.m_PanelSetOrderCPTCodeBillCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection;

            this.m_CaseDocumentCollection = new Business.Document.CaseDocumentCollection(this.m_ReportNo);
            this.m_PageHeaderText = "Billing For: " + this.m_AccessionOrder.PatientDisplayName + " - " + this.m_AccessionOrder.PBirthdate.Value.ToShortDateString();

            InitializeComponent();

            DataContext = this;
            this.Loaded += new RoutedEventHandler(BillingPage_Loaded);
            Unloaded += BillingPage_Unloaded;
        }
Beispiel #20
0
        public PanelSetOrder(string masterAccessionNo, string reportNo, string objectId, YellowstonePathology.Business.PanelSet.Model.PanelSet panelSet, bool distribute)
        {
            this.MasterAccessionNo = masterAccessionNo;
            this.ReportNo = reportNo;
            this.m_ObjectId = objectId;
            this.m_OrderedById = Business.User.SystemIdentity.Instance.User.UserId;
            this.m_OrderedByInitials = Business.User.SystemIdentity.Instance.User.Initials;
            this.OrderDate = DateTime.Today;
            this.OrderTime = DateTime.Now;
            this.m_ResearchTesting = panelSet.ResearchTesting;
            this.m_PanelSetId = panelSet.PanelSetId;
            this.m_CaseType = panelSet.CaseType;
            this.m_PanelSetName = panelSet.PanelSetName;

            this.m_HasTechnicalComponent = false;
            if (panelSet.HasTechnicalComponent == true)
            {
                this.m_HasTechnicalComponent = true;
                this.m_TechnicalComponentFacilityId = panelSet.TechnicalComponentFacility.FacilityId;
                this.m_TechnicalComponentBillingFacilityId = panelSet.TechnicalComponentBillingFacility.FacilityId;
            }

            this.m_HasProfessionalComponent = false;
            if (panelSet.HasProfessionalComponent == true)
            {
                this.m_HasProfessionalComponent = true;
                this.m_ProfessionalComponentFacilityId = panelSet.ProfessionalComponentFacility.FacilityId;
                this.m_ProfessionalComponentBillingFacilityId = panelSet.ProfessionalComponentBillingFacility.FacilityId;
            }

            this.m_ResultDocumentSource = panelSet.ResultDocumentSource.ToString();
            this.m_IsBillable = panelSet.IsBillable;
            this.m_ExpectedFinalTime = YellowstonePathology.Business.Helper.DateTimeExtensions.GetEndDateConsideringWeekends(this.m_OrderTime.Value, panelSet.ExpectedDuration);

            this.m_Distribute = distribute;
            if (panelSet.NeverDistribute == true)
            {
                this.m_Distribute = false;
            }

            this.m_PanelOrderCollection = new PanelOrderCollection();
            this.m_PanelSetOrderCPTCodeCollection = new PanelSetOrderCPTCodeCollection();
            this.m_PanelSetOrderCPTCodeBillCollection = new PanelSetOrderCPTCodeBillCollection();
            this.m_TestOrderReportDistributionCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionCollection();
            this.m_TestOrderReportDistributionLogCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionLogCollection();

            this.m_AmendmentCollection = new YellowstonePathology.Business.Amendment.Model.AmendmentCollection();

            YellowstonePathology.Business.ClientOrder.Model.UniversalService universalService = panelSet.UniversalServiceIdCollection.GetByApplicationName(YellowstonePathology.Business.ClientOrder.Model.UniversalServiceApplicationNameEnum.EPIC);
            this.m_UniversalServiceId = universalService.UniversalServiceId;

            this.m_Final = false;
            this.m_Accepted = false;
            this.m_HoldBilling = false;
            this.m_Audited = false;
            this.m_Published = false;
            this.m_PublishNotificationSent = false;
            this.m_NoCharge = false;
            this.m_Ordered14DaysPostDischarge = false;
            this.m_IsPosted = false;
            this.m_IsDelayed = false;
            this.m_HoldForPeerReview = false;
            this.m_HoldDistribution = false;
            this.m_AdditionalTestingEmailSent = false;
        }
Beispiel #21
0
        public override bool DoesMeasureApply(YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder surgicalTestOrder,
                                              YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen, int patientAge)
        {
            bool result = false;

            if (string.IsNullOrEmpty(surgicalSpecimen.SpecimenOrder.Description) == false)
            {
                string specimenKeyWord = "Lung";
                if (surgicalSpecimen.SpecimenOrder.Description.ToUpper().Contains(specimenKeyWord.ToUpper()) == true)
                {
                    string diagnosisKeyWord = "Carcinoma";
                    if (string.IsNullOrEmpty(surgicalSpecimen.Diagnosis) == false && surgicalSpecimen.Diagnosis.ToUpper().Contains(diagnosisKeyWord.ToUpper()) == true)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollectionForThisSpecimen = surgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(surgicalSpecimen.SpecimenOrder.SpecimenOrderId);
                        if (panelSetOrderCPTCodeCollectionForThisSpecimen.DoesCollectionHaveCodes(this.m_CptCodeCollection) == true)
                        {
                            result = true;
                        }
                    }
                }
            }
            return(result);
        }
Beispiel #22
0
        public override void Run()
        {
            this.m_Status = AuditStatusEnum.OK;
            this.m_Message.Clear();

            YellowstonePathology.Business.Test.ComprehensiveColonCancerProfile.ComprehensiveColonCancerProfileTest comprehensiveColonCancerProfileTest = new Test.ComprehensiveColonCancerProfile.ComprehensiveColonCancerProfileTest();
            if (this.m_AccessionOrder.PanelSetOrderCollection.Exists(comprehensiveColonCancerProfileTest.PanelSetId) == false)
            {
                YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder surgicalTestOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetSurgical();
                foreach (YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen in surgicalTestOrder.SurgicalSpecimenCollection)
                {
                    YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollectionForThisSpecimen = surgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(surgicalSpecimen.SpecimenOrder.SpecimenOrderId);
                    if (this.IndicatorExists(surgicalSpecimen.SpecimenOrder.Description, surgicalSpecimen.Diagnosis, panelSetOrderCPTCodeCollectionForThisSpecimen) == true)
                    {
                        this.m_Status = AuditStatusEnum.Failure;
                        this.m_Message.Append(comprehensiveColonCancerProfileTest.PanelSetName);
                        break;
                    }
                }
            }
        }
Beispiel #23
0
        public override void PostGlobal(string billTo, string billBy)
        {
            if (this.IsOkToPost() == true)
            {
                YellowstonePathology.Business.PanelSet.Model.PanelSetCollection    allPanelSets = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll();
                YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest panelSet     = (YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest)allPanelSets.GetPanelSet(this.m_PanelSetOrder.PanelSetId);

                if (panelSet.HasSplitCPTCode == true)
                {
                    YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeSummaryCollection = this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection.GetSummaryCollection();
                    foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in panelSetOrderCPTCodeSummaryCollection)
                    {
                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        item.BillTo = billTo;
                        item.BillBy = billBy;
                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item);

                        YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill bill26 = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo);
                        bill26.FromPanelSetOrderCPTCode(panelSetOrderCPTCode);
                        bill26.BillTo   = billTo;
                        bill26.BillBy   = YellowstonePathology.Business.Facility.Model.FacilityCollection.GetBillBy(m_PanelSetOrder.ProfessionalComponentBillingFacilityId, this.m_PanelSetOrder.TechnicalComponentBillingFacilityId, "Global", billTo);
                        bill26.Modifier = "26";
                        this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(bill26);
                    }
                }
                else
                {
                    base.PostGlobal(billTo, billBy);
                }
            }
        }
Beispiel #24
0
        public PanelSetOrder(string masterAccessionNo, string reportNo, string objectId, YellowstonePathology.Business.PanelSet.Model.PanelSet panelSet, YellowstonePathology.Business.Interface.IOrderTarget orderTarget, bool distribute)
        {
            this.MasterAccessionNo = masterAccessionNo;
            this.ReportNo = reportNo;
            this.m_ObjectId = objectId;
            this.m_OrderedById = Business.User.SystemIdentity.Instance.User.UserId;
            this.m_OrderedByInitials = Business.User.SystemIdentity.Instance.User.Initials;
            this.OrderDate = DateTime.Today;
            this.OrderTime = DateTime.Now;
            this.m_CaseType = panelSet.CaseType;

            if (orderTarget != null)
            {
                this.m_OrderedOnId = orderTarget.GetId();
                this.m_OrderedOn = orderTarget.GetOrderedOnType();
            }

            this.m_PanelSetId = panelSet.PanelSetId;
            this.m_PanelSetName = panelSet.PanelSetName;

            if (panelSet.HasTechnicalComponent == true)
            {
                this.m_HasTechnicalComponent = true;
                this.m_TechnicalComponentFacilityId = panelSet.TechnicalComponentFacility.FacilityId;
                this.m_TechnicalComponentBillingFacilityId = panelSet.TechnicalComponentBillingFacility.FacilityId;
            }

            if (panelSet.HasProfessionalComponent == true)
            {
                this.m_HasProfessionalComponent = true;
                this.m_ProfessionalComponentFacilityId = panelSet.ProfessionalComponentFacility.FacilityId;
                this.m_ProfessionalComponentBillingFacilityId = panelSet.ProfessionalComponentBillingFacility.FacilityId;
            }

            this.m_ExpectedFinalTime = YellowstonePathology.Business.Helper.DateTimeExtensions.GetExpectedFinalTime(this.m_OrderTime.Value, panelSet.ExpectedDuration);
            this.m_IsBillable = panelSet.IsBillable;
            this.m_ResultDocumentSource = panelSet.ResultDocumentSource.ToString();

            this.m_Distribute = distribute;
            if (panelSet.NeverDistribute == true)
            {
                this.m_Distribute = false;
            }

            this.m_PanelOrderCollection = new PanelOrderCollection();
            this.m_PanelSetOrderCPTCodeCollection = new PanelSetOrderCPTCodeCollection();
            this.m_PanelSetOrderCPTCodeBillCollection = new PanelSetOrderCPTCodeBillCollection();
            this.m_TestOrderReportDistributionCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionCollection();
            this.m_TestOrderReportDistributionLogCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionLogCollection();

            this.m_AmendmentCollection = new YellowstonePathology.Business.Amendment.Model.AmendmentCollection();

            YellowstonePathology.Business.ClientOrder.Model.UniversalService universalService = panelSet.UniversalServiceIdCollection.GetByApplicationName(YellowstonePathology.Business.ClientOrder.Model.UniversalServiceApplicationNameEnum.EPIC);
            this.m_UniversalServiceId = universalService.UniversalServiceId;
        }
Beispiel #25
0
        public PanelSetOrder()
        {
            this.m_PanelOrderCollection = new PanelOrderCollection();
            this.m_PanelSetOrderCPTCodeCollection = new PanelSetOrderCPTCodeCollection();
            this.m_PanelSetOrderCPTCodeBillCollection = new PanelSetOrderCPTCodeBillCollection();
            this.m_TestOrderReportDistributionCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionCollection();
            this.m_TestOrderReportDistributionLogCollection = new YellowstonePathology.Business.ReportDistribution.Model.TestOrderReportDistributionLogCollection();

            this.m_AmendmentCollection = new YellowstonePathology.Business.Amendment.Model.AmendmentCollection();
        }
Beispiel #26
0
        public override void Run()
        {
            this.m_Status = AuditStatusEnum.OK;
            this.m_Message.Clear();

            YellowstonePathology.Business.Test.LynchSyndrome.LynchSyndromeEvaluationTest lynchSyndromeEvaluationTest = new Test.LynchSyndrome.LynchSyndromeEvaluationTest();
            if (this.m_AccessionOrder.PanelSetOrderCollection.Exists(lynchSyndromeEvaluationTest.PanelSetId) == false)
            {
                YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder surgicalTestOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetSurgical();
                foreach (YellowstonePathology.Business.Test.Surgical.SurgicalSpecimen surgicalSpecimen in surgicalTestOrder.SurgicalSpecimenCollection)
                {
                    YellowstonePathology.Business.Test.PanelSetOrderCPTCodeCollection panelSetOrderCPTCodeCollectionForThisSpecimen = surgicalTestOrder.PanelSetOrderCPTCodeCollection.GetSpecimenOrderCollection(surgicalSpecimen.SpecimenOrder.SpecimenOrderId);
                    if (this.ColorectalIndicatorExists(surgicalSpecimen.SpecimenOrder.Description, surgicalSpecimen.Diagnosis, panelSetOrderCPTCodeCollectionForThisSpecimen) == true)
                    {
                        this.m_Status = AuditStatusEnum.Failure;
                        this.m_Message.Append(lynchSyndromeEvaluationTest.PanelSetName);
                        break;
                    }
                    else if (this.EndometrialIndicatorExists(surgicalSpecimen.SpecimenOrder.Description, surgicalSpecimen.Diagnosis, panelSetOrderCPTCodeCollectionForThisSpecimen) == true)
                    {
                        this.m_Status = AuditStatusEnum.Failure;
                        this.m_Message.Append(lynchSyndromeEvaluationTest.PanelSetName);
                        break;
                    }
                    else if (this.UterineIndicatorExists(surgicalSpecimen.SpecimenOrder.Description, surgicalSpecimen.Diagnosis, panelSetOrderCPTCodeCollectionForThisSpecimen) == true)
                    {
                        this.m_Status = AuditStatusEnum.Failure;
                        this.m_Message.Append(lynchSyndromeEvaluationTest.PanelSetName);
                        break;
                    }
                }
            }
        }