public override void Post(BillableObject billableObject)
 {
     switch (this.m_PanelSetOrder.BillingType)
     {
         case "Global":
         case "Split":
             billableObject.PostProfessional("Patient", "YPIBLGS");
             billableObject.PostClientGCodes(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);
             break;
         case "Client":
             billableObject.PostProfessional("Client", "YPBLGS");
             billableObject.PostClientGCodes(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);
             billableObject.PanelSetOrder.ProfessionalComponentBillingFacilityId = "YPBLGS";
             break;
     }
 }
        public static BillableObject GetStandardBillableObject(YellowstonePathology.Business.Test.AccessionOrder accessionOrder, string reportNo)
        {
            BillableObject result = null;

            YellowstonePathology.Business.Test.PanelSetOrder panelSetOrder = accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportNo);
            YellowstonePathology.Business.PanelSet.Model.PanelSetCollection panelSetCollection = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll();
            YellowstonePathology.Business.PanelSet.Model.PanelSet           panelSet           = panelSetCollection.GetPanelSet(panelSetOrder.PanelSetId);

            if (panelSetOrder is YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder == true)
            {
                result = new BillableObjectSurgicalPathology(accessionOrder, reportNo);
            }
            else if (panelSetOrder is YellowstonePathology.Business.Test.ThinPrepPap.PanelSetOrderCytology == true)
            {
                if (accessionOrder.PrimaryInsurance == "Medicare")
                {
                    result = new BillableObjectThinPrepPapMedicare(accessionOrder, reportNo);
                }
                else
                {
                    result = new BillableObjectThinPrepPap(accessionOrder, reportNo);
                }
            }
            else if (panelSet is YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest == true)
            {
                result = new BillableObjectInHouseMolecular(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTest == true)
            {
                result = new BillableObjectKRASWithBRAFReflex(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.LLP.LeukemiaLymphomaTest == true)
            {
                result = new BillableObjectLeukemiaLymphoma(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.TechnicalOnly.TechnicalOnlyTest == true || panelSet is YellowstonePathology.Business.Test.IHCQC.IHCQCTest == true)
            {
                result = new BillableObjectTechnicalOnly(accessionOrder, reportNo);
            }
            else
            {
                result = new BillableObject(accessionOrder, reportNo);
            }

            return(result);
        }
        public static BillableObject GetStandardBillableObject(YellowstonePathology.Business.Test.AccessionOrder accessionOrder, string reportNo)
        {
            BillableObject result = null;

            YellowstonePathology.Business.Test.PanelSetOrder panelSetOrder = accessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportNo);
            YellowstonePathology.Business.PanelSet.Model.PanelSetCollection panelSetCollection = YellowstonePathology.Business.PanelSet.Model.PanelSetCollection.GetAll();
            YellowstonePathology.Business.PanelSet.Model.PanelSet panelSet = panelSetCollection.GetPanelSet(panelSetOrder.PanelSetId);

            if (panelSetOrder is YellowstonePathology.Business.Test.Surgical.SurgicalTestOrder == true)
            {
                result = new BillableObjectSurgicalPathology(accessionOrder, reportNo);
            }
            else if (panelSetOrder is YellowstonePathology.Business.Test.ThinPrepPap.PanelSetOrderCytology == true)
            {
                if (accessionOrder.PrimaryInsurance == "Medicare")
                {
                    result = new BillableObjectThinPrepPapMedicare(accessionOrder, reportNo);
                }
                else
                {
                    result = new BillableObjectThinPrepPap(accessionOrder, reportNo);
                }
            }
            else if (panelSet is YellowstonePathology.Business.PanelSet.Model.PanelSetMolecularTest == true)
            {
                result = new BillableObjectInHouseMolecular(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.KRASStandardReflex.KRASStandardReflexTest == true)
            {
                result = new BillableObjectKRASWithBRAFReflex(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.LLP.LeukemiaLymphomaTest == true)
            {
                result = new BillableObjectLeukemiaLymphoma(accessionOrder, reportNo);
            }
            else if (panelSet is YellowstonePathology.Business.Test.TechnicalOnly.TechnicalOnlyTest == true || panelSet is YellowstonePathology.Business.Test.IHCQC.IHCQCTest == true)
            {
                result = new BillableObjectTechnicalOnly(accessionOrder, reportNo);
            }
            else
            {
                result = new BillableObject(accessionOrder, reportNo);
            }

            return result;
        }
Beispiel #4
0
        public override void Post(BillableObject billableObject)
        {
            switch (this.m_PanelSetOrder.BillingType)
            {
            case "Global":
            case "Split":
                billableObject.PostProfessional("Patient", "YPIBLGS");
                billableObject.PostClientGCodes(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);
                break;

            case "Client":
                billableObject.PostProfessional("Client", "YPBLGS");
                billableObject.PostClientGCodes(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical);
                billableObject.PanelSetOrder.ProfessionalComponentBillingFacilityId = "YPBLGS";
                break;
            }
        }
        public static BillableObject GetBillableObject(YellowstonePathology.Business.Test.AccessionOrder accessionOrder, string reportNo)
        {
            BillableObject result = null;

            if (IsMountainViewNeo(accessionOrder, reportNo) == true)
            {
                result = new BillableObjectMountainViewNeo(accessionOrder, reportNo);
            }
            else if (IsMedicareProstateNeedleBiopsy(accessionOrder, reportNo) == true)
            {
                result = new BillableObjectMedicareProstateNeedleBiopsy(accessionOrder, reportNo);
            }
            else if (IsAutopsyTechnicalOnly(accessionOrder, reportNo) == true)
            {
                result = new BillableObjectTechnicalOnlyAutopsy(accessionOrder, reportNo);
            }
            else
            {
                result = GetStandardBillableObject(accessionOrder, reportNo);
            }
            return(result);
        }
 public override void Post(BillableObject billableObject)
 {
     //Do Nothing
 }
Beispiel #7
0
 public override void Post(BillableObject billableObject)
 {
     //Do Nothing
 }
Beispiel #8
0
 public virtual void Post(BillableObject billableObject)
 {
 }