예제 #1
0
        public override void Render()
        {
            base.m_TemplateName = @"\\CFileServer\Documents\ReportTemplates\XmlTemplates\PreauthorizationNotification.5.xml";
            base.OpenTemplate();
            this.SetDemographicsV2();

            Business.Test.ExtractAndHoldForPreauthorization.ExtractAndHoldForPreauthorizationTestOrder testOrder = (Business.Test.ExtractAndHoldForPreauthorization.ExtractAndHoldForPreauthorizationTestOrder) this.m_PanelSetOrder;
            Business.PanelSet.Model.PanelSetCollection panelSetCollection = Business.PanelSet.Model.PanelSetCollection.GetAll();
            Business.PanelSet.Model.PanelSet           panelSet           = panelSetCollection.GetPanelSet(testOrder.TestId.Value);

            this.SetXmlNodeData("additional_testing", panelSet.PanelSetName);
            this.SetXmlNodeData("cpt_codes", panelSet.PanelSetCptCodeCollection.GetCommaSeparatedString());
            this.SetXmlNodeData("report_comment", testOrder.Comment);

            if (this.m_AccessionOrder.PrimaryInsurance == "Medicare")
            {
                this.SetXmlNodeData("additional_testing_message", "The following additional testing needs an ABN");
            }
            else
            {
                this.SetXmlNodeData("additional_testing_message", "The following additional testing needs preauthorization:");
            }

            YellowstonePathology.Business.OrderIdParser orderIdParser = new YellowstonePathology.Business.OrderIdParser(this.m_PanelSetOrder.ReportNo);
            this.m_SaveFileName = Business.Document.CaseDocument.GetCaseFileNameXMLPreAuth(orderIdParser);
            this.m_ReportXml.Save(this.m_SaveFileName);
        }
예제 #2
0
        public AddFISHCPTCodePage(string reportNo, YellowstonePathology.Business.Test.AccessionOrder accessionOrder)
        {
            this.m_AccessionOrder = accessionOrder;
            this.m_PanelSetOrder  = this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(reportNo);

            Business.PanelSet.Model.PanelSetCollection allTests = Business.PanelSet.Model.PanelSetCollection.GetAll();
            Business.PanelSet.Model.PanelSet           panelSet = allTests.GetPanelSet(this.m_PanelSetOrder.PanelSetId);
            if (panelSet is Business.PanelSet.Model.FISHTest)
            {
                Business.PanelSet.Model.FISHTest fishTest = (Business.PanelSet.Model.FISHTest)panelSet;
                this.m_ProbeSetCount   = fishTest.ProbeSetCount;
                this.m_FISHCPTCodeList = new Business.Billing.Model.FISHCPTCodeList(this.m_ProbeSetCount);
            }
            else
            {
                this.m_ProbeSetCount = 0;
                MessageBox.Show("This FISH test does not have the Probe Set Count defined.");
            }

            this.m_PageHeaderText = "CPT Codes For " + this.m_PanelSetOrder.ReportNo + ": " + this.m_AccessionOrder.PatientDisplayName + " - " + this.m_AccessionOrder.PBirthdate.Value.ToShortDateString();

            DataContext = this;

            InitializeComponent();
        }
예제 #3
0
        private void MenuItemLinkPDF_Click(object sender, RoutedEventArgs e)
        {
            if (this.ListViewFiles.SelectedItem != null)
            {
                if (this.ListViewPanelSetOrders.SelectedItem != null)
                {
                    Business.Test.PanelSetOrder panelSetOrder = (Business.Test.PanelSetOrder) this.ListViewPanelSetOrders.SelectedItem;
                    Business.PanelSet.Model.PanelSetCollection panelSetCollection = Business.PanelSet.Model.PanelSetCollection.GetAll();
                    Business.PanelSet.Model.PanelSet           panelSet           = panelSetCollection.GetPanelSet(panelSetOrder.PanelSetId);

                    string sourcePDFFileName             = (string)this.ListViewFiles.SelectedItem;
                    Business.OrderIdParser orderIdParser = new Business.OrderIdParser(panelSetOrder.ReportNo);
                    string casePath = YellowstonePathology.Document.CaseDocumentPath.GetPath(orderIdParser);

                    if (panelSet.ResultDocumentSource == Business.PanelSet.Model.ResultDocumentSourceEnum.PublishedDocument)
                    {
                        string pdfCaseFilePath = Business.Document.CaseDocument.GetCaseFileNamePDF(orderIdParser);
                        System.IO.File.Copy(sourcePDFFileName, pdfCaseFilePath, true);

                        string xpsCaseFilePath = Business.Document.CaseDocument.GetCaseFileNameXPS(orderIdParser);
                        this.GhostPDFToPNG(sourcePDFFileName, xpsCaseFilePath);

                        string tifCaseFilePath = Business.Document.CaseDocument.GetCaseFileNameTif(orderIdParser);
                        Business.Helper.FileConversionHelper.ConvertXPSToTIF(xpsCaseFilePath, tifCaseFilePath);
                    }
                    else
                    {
                        string neoCaseFileName = Business.Document.CaseDocument.GetCaseFileNamePDF(orderIdParser).Replace(".pdf", ".neoreport.pdf");
                        System.IO.File.Copy(sourcePDFFileName, neoCaseFileName, true);
                    }

                    this.m_CaseDocuments = System.IO.Directory.GetFiles(casePath).ToList <string>();
                    this.NotifyPropertyChanged(string.Empty);
                    MessageBox.Show("The pdf has been linked to this case.");
                }
                else
                {
                    MessageBox.Show("You must have a Test selected to perform this operation.");
                }
            }
            else
            {
                MessageBox.Show("You must have a file selected to perform this operation.");
            }
        }