Exemplo n.º 1
0
        public override void Render()
        {
            PanelSetOrderMPNExtendedReflex panelSetOrderMPNExtendedReflex = (PanelSetOrderMPNExtendedReflex)this.m_PanelSetOrder;

            this.m_TemplateName = @"\\CFileServer\Documents\ReportTemplates\XmlTemplates\MPNExtendedReflex.3.xml";
            base.OpenTemplate();

            this.SetDemographicsV2();
            this.SetReportDistribution();
            this.SetCaseHistory();

            YellowstonePathology.Business.Amendment.Model.AmendmentCollection amendmentCollection = this.m_AccessionOrder.AmendmentCollection.GetAmendmentsForReport(m_PanelSetOrder.ReportNo);
            YellowstonePathology.Business.Document.AmendmentSection           amendmentSection    = new YellowstonePathology.Business.Document.AmendmentSection();
            amendmentSection.SetAmendment(amendmentCollection, this.m_ReportXml, this.m_NameSpaceManager, true);

            this.ReplaceText("panelset_name", panelSetOrderMPNExtendedReflex.PanelSetName);

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2V617FResult) == false)
            {
                this.ReplaceText("jak2v617_result", panelSetOrderMPNExtendedReflex.JAK2V617FResult);
            }
            else
            {
                this.DeleteRow("jak2v617_result");
            }

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2Exon1214Result) == false)
            {
                this.ReplaceText("jak2exon1214_result", panelSetOrderMPNExtendedReflex.JAK2Exon1214Result);
            }
            else
            {
                this.DeleteRow("jak2exon1214_result");
            }

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.CalreticulinMutationAnalysisResult) == false)
            {
                this.ReplaceText("calr_result", panelSetOrderMPNExtendedReflex.CalreticulinMutationAnalysisResult);
            }
            else
            {
                this.DeleteRow("calr_result");
            }

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.MPLResult) == false)
            {
                this.ReplaceText("mpl_result", panelSetOrderMPNExtendedReflex.MPLResult);
            }
            else
            {
                this.DeleteRow("mpl_result");
            }

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2Mutation) == false)
            {
                this.ReplaceText("jak2_mutation", panelSetOrderMPNExtendedReflex.JAK2Mutation);
            }
            else
            {
                this.DeleteRow("jak2_mutation");
            }

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.Comment) == false)
            {
                this.ReplaceText("report_comment", panelSetOrderMPNExtendedReflex.Comment);
            }
            else
            {
                this.DeleteRow("report_comment");
            }

            YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder = this.m_AccessionOrder.SpecimenOrderCollection.GetSpecimenOrder(this.m_PanelSetOrder.OrderedOn, this.m_PanelSetOrder.OrderedOnId);
            base.ReplaceText("specimen_description", specimenOrder.Description);

            string collectionDateTimeString = YellowstonePathology.Business.Helper.DateTimeExtensions.CombineDateAndTime(specimenOrder.CollectionDate, specimenOrder.CollectionTime);

            this.SetXmlNodeData("date_time_collected", collectionDateTimeString);

            this.ReplaceText("report_interpretation", panelSetOrderMPNExtendedReflex.Interpretation);
            this.ReplaceText("report_method", panelSetOrderMPNExtendedReflex.Method);
            this.ReplaceText("report_reference", panelSetOrderMPNExtendedReflex.ReportReferences);

            this.ReplaceText("report_date", BaseData.GetShortDateString(this.m_PanelSetOrder.FinalDate));
            this.ReplaceText("pathologist_signature", panelSetOrderMPNExtendedReflex.Signature);

            this.SaveReport();
        }
        public override void ToXml(XElement document)
        {
            PanelSetOrderMPNExtendedReflex panelSetOrderMPNExtendedReflex = (PanelSetOrderMPNExtendedReflex)this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(this.m_ReportNo);

            this.AddHeader(document, panelSetOrderMPNExtendedReflex, panelSetOrderMPNExtendedReflex.PanelSetName);
            this.AddNextObxElement("", document, "F");

            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2V617FResult) == false)
            {
                this.AddNextObxElement("JAK2 V617F Mutation Analysis: " + panelSetOrderMPNExtendedReflex.JAK2V617FResult, document, "F");
            }
            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2Mutation) == false)
            {
                this.AddNextObxElement("Mutation(s): " + panelSetOrderMPNExtendedReflex.JAK2Mutation, document, "F");
            }
            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.JAK2Exon1214Result) == false)
            {
                this.AddNextObxElement("JAK2 Exon 12-14 Mutation Analysis: " + panelSetOrderMPNExtendedReflex.JAK2Exon1214Result, document, "F");
            }
            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.CalreticulinMutationAnalysisResult) == false)
            {
                this.AddNextObxElement("Calreticulin Mutation Analysis: " + panelSetOrderMPNExtendedReflex.CalreticulinMutationAnalysisResult, document, "F");
            }
            if (string.IsNullOrEmpty(panelSetOrderMPNExtendedReflex.MPLResult) == false)
            {
                this.AddNextObxElement("MPL Mutation Analysis: " + panelSetOrderMPNExtendedReflex.MPLResult, document, "F");
            }
            this.AddNextObxElement(string.Empty, document, "F");

            this.AddNextObxElement("Pathologist: " + panelSetOrderMPNExtendedReflex.Signature, document, "F");
            if (panelSetOrderMPNExtendedReflex.FinalTime.HasValue == true)
            {
                this.AddNextObxElement("E-signed " + panelSetOrderMPNExtendedReflex.FinalTime.Value.ToString("MM/dd/yyyy HH:mm"), document, "F");
            }
            this.AddNextObxElement("", document, "F");
            this.AddAmendments(document);

            this.AddNextObxElement("Specimen Description:", document, "F");
            YellowstonePathology.Business.Specimen.Model.SpecimenOrder specimenOrder = this.m_AccessionOrder.SpecimenOrderCollection.GetSpecimenOrder(panelSetOrderMPNExtendedReflex.OrderedOn, panelSetOrderMPNExtendedReflex.OrderedOnId);
            this.HandleLongString(specimenOrder.Description, document, "F");
            this.AddNextObxElement(string.Empty, document, "F");

            this.AddNextObxElement("Comment: ", document, "F");
            this.HandleLongString(panelSetOrderMPNExtendedReflex.Comment, document, "F");
            this.AddNextObxElement("", document, "F");

            this.AddNextObxElement("Interpretation: ", document, "F");
            this.HandleLongString(panelSetOrderMPNExtendedReflex.Interpretation, document, "F");
            this.AddNextObxElement("", document, "F");

            this.AddNextObxElement("Method: ", document, "F");
            this.HandleLongString(panelSetOrderMPNExtendedReflex.Method, document, "F");
            this.AddNextObxElement("", document, "F");

            this.AddNextObxElement("References: ", document, "F");
            this.HandleLongString(panelSetOrderMPNExtendedReflex.ReportReferences, document, "F");
            this.AddNextObxElement("", document, "F");

            string locationPerformed = panelSetOrderMPNExtendedReflex.GetLocationPerformedComment();

            this.HandleLongString(locationPerformed, document, "F");
            this.AddNextObxElement(string.Empty, document, "F");
        }