private XElement CreateDocument() { XElement document = new XElement("HL7Message"); this.m_ObxCount = 1; EpicHl7Client client = new EpicHl7Client(); OruR01 messageType = new OruR01(); string locationCode = "YPIIBILLINGS"; if (this.m_AccessionOrder.SvhMedicalRecord.StartsWith("A") == true) { locationCode = "SVHNPATH"; } EpicMshView msh = new EpicMshView(client, messageType, locationCode); msh.ToXml(document); EpicPidView pid = new EpicPidView(this.m_AccessionOrder.SvhMedicalRecord, this.m_AccessionOrder.PLastName, this.m_AccessionOrder.PFirstName, this.m_AccessionOrder.PBirthdate, this.m_AccessionOrder.PSex, this.m_AccessionOrder.SvhAccount, this.m_AccessionOrder.PSSN); pid.ToXml(document); EpicOrcView orc = new EpicOrcView(this.m_AccessionOrder.ExternalOrderId, this.m_OrderingPhysician, this.m_AccessionOrder.MasterAccessionNo, OrderStatusEnum.Complete, this.m_AccessionOrder.SystemInitiatingOrder, this.m_SendUnsolicited); orc.ToXml(document); YellowstonePathology.Business.Test.PanelSetOrder panelSetOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(this.m_PanelSetOrder.ReportNo); ResultStatus resultStatus = ResultStatusEnum.Final; if (panelSetOrder.AmendmentCollection.Count != 0) { resultStatus = ResultStatusEnum.Correction; } YellowstonePathology.Business.ClientOrder.Model.UniversalServiceCollection universalServiceIdCollection = YellowstonePathology.Business.ClientOrder.Model.UniversalServiceCollection.GetAll(); YellowstonePathology.Business.ClientOrder.Model.UniversalService universalService = universalServiceIdCollection.GetByUniversalServiceId(panelSetOrder.UniversalServiceId); EpicObrView obr = new EpicObrView(this.m_AccessionOrder.ExternalOrderId, this.m_AccessionOrder.MasterAccessionNo, this.m_PanelSetOrder.ReportNo, this.m_AccessionOrder.SpecimenOrderCollection[0].CollectionDate, this.m_AccessionOrder.SpecimenOrderCollection[0].CollectionTime, this.m_AccessionOrder.AccessionDateTime, panelSetOrder.FinalTime, this.m_OrderingPhysician, resultStatus.Value, universalService, this.m_SendUnsolicited); obr.ToXml(document); EpicObxView epicObxView = EpicObxViewFactory.GetObxView(panelSetOrder.PanelSetId, this.m_AccessionOrder, this.m_PanelSetOrder.ReportNo, this.m_ObxCount); epicObxView.ToXml(document); this.m_ObxCount = epicObxView.ObxCount; return(document); }
private XElement CreateDocument() { XElement document = new XElement("HL7Message"); this.m_ObxCount = 1; EpicHl7Client client = new EpicHl7Client(); OruR01 messageType = new OruR01(); string locationCode = "YPIIBILLINGS"; if (this.m_AccessionOrder.SvhMedicalRecord.StartsWith("A") == true) { locationCode = "SVHNPATH"; } EpicMshView msh = new EpicMshView(client, messageType, locationCode); msh.ToXml(document); EpicPidView pid = new EpicPidView(this.m_AccessionOrder.SvhMedicalRecord, this.m_AccessionOrder.PLastName, this.m_AccessionOrder.PFirstName, this.m_AccessionOrder.PBirthdate, this.m_AccessionOrder.PSex, this.m_AccessionOrder.SvhAccount, this.m_AccessionOrder.PSSN); pid.ToXml(document); EpicOrcView orc = new EpicOrcView(this.m_AccessionOrder.ExternalOrderId, this.m_OrderingPhysician, this.m_AccessionOrder.MasterAccessionNo, OrderStatusEnum.Complete, this.m_AccessionOrder.SystemInitiatingOrder, this.m_SendUnsolicited); orc.ToXml(document); YellowstonePathology.Business.Test.PanelSetOrder panelSetOrder = this.m_AccessionOrder.PanelSetOrderCollection.GetPanelSetOrder(this.m_PanelSetOrder.ReportNo); ResultStatus resultStatus = ResultStatusEnum.Final; if (panelSetOrder.AmendmentCollection.Count != 0) resultStatus = ResultStatusEnum.Correction; YellowstonePathology.Business.ClientOrder.Model.UniversalServiceCollection universalServiceIdCollection = YellowstonePathology.Business.ClientOrder.Model.UniversalServiceCollection.GetAll(); YellowstonePathology.Business.ClientOrder.Model.UniversalService universalService = universalServiceIdCollection.GetByUniversalServiceId(panelSetOrder.UniversalServiceId); EpicObrView obr = new EpicObrView(this.m_AccessionOrder.ExternalOrderId, this.m_AccessionOrder.MasterAccessionNo, this.m_PanelSetOrder.ReportNo, this.m_AccessionOrder.SpecimenOrderCollection[0].CollectionDate, this.m_AccessionOrder.SpecimenOrderCollection[0].CollectionTime, this.m_AccessionOrder.AccessionDateTime, panelSetOrder.FinalTime, this.m_OrderingPhysician, resultStatus.Value, universalService, this.m_SendUnsolicited); obr.ToXml(document); EpicObxView epicObxView = EpicObxViewFactory.GetObxView(panelSetOrder.PanelSetId, this.m_AccessionOrder, this.m_PanelSetOrder.ReportNo, this.m_ObxCount); epicObxView.ToXml(document); this.m_ObxCount = epicObxView.ObxCount; return document; }