public virtual void PostTechnical(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); 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); } } } }
public void PostManualEntriesProfessional(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.HasBillableProfessionalComponent() == 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.Professional); if (this.m_AccessionOrder.PrimaryInsurance == "Medicare") { if (cptCode.HasMedicareQuantityLimit == true) { item.Quantity = cptCode.MedicareQuantityLimit; } } this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item); } } } }
public override void PostTechnical(string billTo, string billBy) { if (this.IsOkToPost() == true) { foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier); if (cptCode.IsBillable == true) { if (cptCode.HasTechnicalComponent == true) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill bill = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); bill.ClientId = this.m_AccessionOrder.ClientId; bill.FromPanelSetOrderCPTCode(panelSetOrderCPTCode); bill.BillTo = billTo; bill.BillBy = billBy; if (bill.Modifier == null) { bill.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical); } this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(bill); } } } } }
public override void PostProfessional(string billTo, string billby) { if (this.IsOkToPost() == true) { if (this.CanPostProfessionalCode() == true) { foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier); if (cptCode.IsBillable == true) { if (cptCode.HasProfessionalComponent == 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.Professional); this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item); } } } } } }
public virtual 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.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier); 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 override void PostProfessional(string billTo, string billBy) { if (this.IsOkToPost() == true) { if (this.CanPostProfessionalCode() == true) { foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier); if (cptCode.IsBillable == true) { if (cptCode.HasProfessionalComponent == true) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill bill = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); bill.FromPanelSetOrderCPTCode(panelSetOrderCPTCode); bill.BillTo = billTo; bill.BillBy = billBy; bill.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Professional); if (this.m_AccessionOrder.ICD9BillingCodeCollection.PapMedicareCodesExist() == true) { bill.CPTCode = cptCode.GCode; } if (this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Exists(bill.CPTCode, bill.Modifier) == false) { this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(bill); } } } } } } }
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.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 = 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); } } } else { base.PostTechnical(billTo, billBy); } } }
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); } } }
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); } } }
public override void PostTechnical(string billTo, string billBy) { int blockCount = this.m_AccessionOrder.SpecimenOrderCollection.GetBlockCount(); YellowstonePathology.Business.Billing.Model.CptCodeDefinition.AutopsyBlock autopsyBlock = new Business.Billing.Model.CptCodeDefinition.AutopsyBlock(); foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); item.FromPanelSetOrderCPTCode(panelSetOrderCPTCode); item.BillTo = billTo; item.BillBy = billBy; item.Quantity = blockCount; item.Modifier = autopsyBlock.Modifier; this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item); } }
public override void PostTechnical(string billTo, string billBy) { if (this.IsOkToPost() == true) { YellowstonePathology.Business.Billing.Model.CptCodeCollection cptCodeCollection = YellowstonePathology.Business.Billing.Model.CptCodeCollection.GetAll(); foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Billing.Model.CptCode cptCode = cptCodeCollection.GetCptCode(panelSetOrderCPTCode.CPTCode); if (cptCode.IsBillable == true) { if (cptCode.HasTechnicalComponent == true) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill bill = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); bill.ClientId = this.m_AccessionOrder.ClientId; bill.FromPanelSetOrderCPTCode(panelSetOrderCPTCode); bill.BillTo = billTo; bill.BillBy = billBy; if (panelSetOrderCPTCode.Modifier == null) { bill.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical); } else { bill.Modifier = panelSetOrderCPTCode.Modifier; } if (billTo == BillToEnum.Patient.ToString()) { if (this.m_AccessionOrder.ICD9BillingCodeCollection.PapMedicareCodesExist() == true) { bill.CPTCode = cptCode.GCode; } } if (this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Exists(bill.CPTCode, bill.Modifier) == false) { this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(bill); } } } } } }
public void PostPQRICodes() { if (this.IsOkToPost() == true) { foreach (YellowstonePathology.Business.Test.PanelSetOrderCPTCode panelSetOrderCPTCode in this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection) { YellowstonePathology.Business.Billing.Model.CptCode cptCode = Store.AppDataStore.Instance.CPTCodeCollection.GetClone(panelSetOrderCPTCode.CPTCode, panelSetOrderCPTCode.Modifier); if (cptCode is YellowstonePathology.Business.Billing.Model.PQRSCode == true) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill pqriCode = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); pqriCode.ClientId = this.m_AccessionOrder.ClientId; pqriCode.FromPanelSetOrderCPTCode(panelSetOrderCPTCode); pqriCode.BillTo = null; pqriCode.BillBy = null; this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(pqriCode); } } } }
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); } } } }
public override void PostTechnical(string billTo, string billBy) { int blockCount = this.m_AccessionOrder.SpecimenOrderCollection.GetBlockCount(); int billedCount = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetBilledCount("AUTOPSYBLOCK", "TC"); YellowstonePathology.Business.Billing.Model.CptCode autopsyBlock = Store.AppDataStore.Instance.CPTCodeCollection.GetClone("AUTOPSYBLOCK", null); if (billedCount < blockCount) { YellowstonePathology.Business.Test.PanelSetOrderCPTCodeBill item = this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.GetNextItem(this.m_PanelSetOrder.ReportNo); item.FromPanelSetOrderCPTCode(this.m_PanelSetOrder.PanelSetOrderCPTCodeCollection[0]); item.BillTo = billTo; item.BillBy = billBy; item.Quantity = blockCount - billedCount; item.Modifier = "TC"; this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item); } BillableObjectStains billableObjectStains = new BillableObjectStains(this.m_AccessionOrder, this.m_PanelSetOrder.ReportNo); billableObjectStains.PostTechnical(billTo, billBy); this.m_PanelSetOrder.TechnicalComponentBillingFacilityId = "YPIBLGS"; }
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.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 = "Client"; item.BillBy = "YPIBLGS"; item.Modifier = cptCode.GetModifier(YellowstonePathology.Business.Billing.Model.BillingComponentEnum.Technical); this.m_PanelSetOrder.PanelSetOrderCPTCodeBillCollection.Add(item); } } } }