`

【原】[HL7_V2.4] 申请检验检查的ORM_O01消息消息解析 NHapi

阅读更多
/// <summary>
        /// 将受到的消息进行处理
        /// 分解更新到数据库
        /// </summary>
        private void ManageReceiveMsg(AsyTcpSocketClient client, string msg)
        {
            /*
            #region 测试数据
            
           msg = "MSH|^~\\&|VERBENA|PRAEZISION|RIS|SYNCROMED|20070828135556+0000||ORM^O01|5366|P|2.4|\r"
                + "PID|||410379^^^SILVANI||GONZI^||19200202000000+0000|F|||VIA MARZO, 13 ^BG^MARCO^BG24027^100^M^ITALIA016144~VIA MARZO, 13 ^BG^MARCO^BG24027^100^H^ITALIA016144~^BG^MARCO^BG^^100^B^ITALIA016144|||||||AAAAAAAAAAAAAAAA|228PP272||||016144|||100^ITALIA|\r"
                + "PD1|||ASL DELLA PROVINCIA DI BERGAMO^^^^^^^^^301030|\r"
                + "PV1||E|||||133429^ROSSI^ENRICO|9PRZMARK^VERDI^MARCO^^^^^^^^^^9||114||||||||||||||||||||||||||||||||A02|||||||||V|\r"
                + "ORC|NW|67262|5189|2007100059|PR||1.000000^^^20070828135500+0000||20070828135500+0000|||9PRZMARK^VERDI^MARCO|||||114^PRONTO SOCCORSO|\r"
                + "OBR|1|67262|5189|1223^RX PELVI (bacino)||||||||3|RRR|||9PRZMARK^VERDI||||||||1|||1.000000^^^20070828135500+0000|\r"
                + "OBR|2|67262|5189|1220^RX SPALLA||||||||3|RRR|||9PRZMARK^VERDI||||||||1|||1.000000^^^20070828135500+0000|\r"
                + "OBR|2|67262|5189|1220^RX SPALLA||||||||3|RRR|||9PRZMARK^VERDI||||||||1|||1.000000^^^20070828135500+0000|\r"
                + "ORC|NW|67262|5190|2007100059|PR||1.000000^^^20070828135500+0000||20070828135500+0000|||9PRZMARK^VERDI^MARCO|||||114^PRONTO SOCCORSO|\r"
                + "OBR|1|67262|5190|8001^TAC CAPO||||||||3|RRR|||9PRZMARK^VERDI||||||||7|||1.000000^^^20070828135500+0000|\r";
              // + "ZDS|1.2.300.4005|a^b^c|Application|DICOM|"; 
           
            
            #endregion
            */


            try
            {
                NHapi.Base.Parser.PipeParser Parser = new NHapi.Base.Parser.PipeParser();
                NHapi.Base.Model.IMessage m = Parser.Parse(msg);
                NHapi.Model.V24.Message.ORM_O01 orm001 = m as NHapi.Model.V24.Message.ORM_O01;

                if (orm001 != null)
                {

                    MSGModel msgModel = new MSGModel();
                    MSGBLL msgBll = new MSGBLL();

                    msgModel.MSG_ID = getGUID();
                    msgModel.CONTEXT = msg;
                    msgModel.SERVER_MANAGE = 0;
                    msgModel.CREATE_ID = "HL7Server";
                    msgModel.CREATE_TIME = DateTime.Now;

                    msgBll.Add(msgModel);

                    PATIENT_INFOModel patientInfoModel = UpdatePatientInfo(client, orm001, msgModel);

                    UpdateRequisitions(orm001, patientInfoModel);
                }
                else
                {
                    WriteLog("服务器", "异常情况", "见详细说明", "客户端的数据格式不正确『" + msg + "』");
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        
        }


//-----------------------------------------------------------------

 private PATIENT_INFOModel UpdatePatientInfo(AsyTcpSocketClient client, AtlastigerHl7api.Model.V24.Message.ORM_O01 orm001, MSGModel msgModel)
        {
            PATIENT_INFOModel patientInfoModel = new PATIENT_INFOModel();
            PATIENT_INFOBLL patientInfoBll = new PATIENT_INFOBLL();

            patientInfoModel.PATIENT_INFO_ID = getGUID();
            patientInfoModel.MSG_ID = msgModel.MSG_ID;
            patientInfoModel.MSG_HL7ID = orm001.MSH.MessageControlID.Value;
            patientInfoModel.SETIDPID = orm001.PATIENT.PID.SetIDPID.Value;
            patientInfoModel.PATIENT_IDENTIFIER_LIST0 = orm001.PATIENT.PID.GetPatientIdentifierList(0).ID.Value;
            patientInfoModel.PATIENT_IDENTIFIER_LIST1 = orm001.PATIENT.PID.GetPatientIdentifierList(1).ID.Value;
            patientInfoModel.PATIENT_IDENTIFIER_LIST2 = orm001.PATIENT.PID.GetPatientIdentifierList(2).ID.Value;
            patientInfoModel.PATIENT_IDENTIFIER_LIST3 = orm001.PATIENT.PID.GetPatientIdentifierList(3).ID.Value;
            patientInfoModel.PATIENT_NAME = orm001.PATIENT.PID.GetPatientName(0).GivenName.Value;
            patientInfoModel.DATETIME_OF_BIRTH = orm001.PATIENT.PID.DateTimeOfBirth.TimeOfAnEvent.Value;
            patientInfoModel.ADMINISTRATIVE_SEX = orm001.PATIENT.PID.AdministrativeSex.Value;
            patientInfoModel.PATIENT_ADDRESS = orm001.PATIENT.PID.GetPatientAddress(0).OtherGeographicDesignation.Value;
            patientInfoModel.COUNTY_CODE = orm001.PATIENT.PID.CountyCode.Value;
            patientInfoModel.PHONE_NUMBER_HOME0 = orm001.PATIENT.PID.GetPhoneNumberHome(0).Get9999999X99999CAnyText.Value;
            patientInfoModel.PHONE_NUMBER_HOME = orm001.PATIENT.PID.GetPhoneNumberHome(1).Get9999999X99999CAnyText.Value;
            patientInfoModel.PHONE_NUMBER_BUSINESS0 = orm001.PATIENT.PID.GetPhoneNumberBusiness(0).Get9999999X99999CAnyText.Value;
            patientInfoModel.PHONE_NUMBER_BUSINESS1 = orm001.PATIENT.PID.GetPhoneNumberBusiness(1).Get9999999X99999CAnyText.Value;
            patientInfoModel.SSN_NUMBER_PATIENT = orm001.PATIENT.PID.SSNNumberPatient.Value;
            patientInfoModel.CITIZENSHIP_IDENTIFIER = orm001.PATIENT.PID.GetCitizenship(0).Identifier.Value;
            patientInfoModel.CITIZENSHIP_TEXT = orm001.PATIENT.PID.GetCitizenship(0).Text.Value;
            patientInfoModel.NATIONALITY_IDENTIFIER = orm001.PATIENT.PID.Nationality.Identifier.Value;
            patientInfoModel.NATIONALITY_TEXT = orm001.PATIENT.PID.Nationality.Text.Value;
            patientInfoModel.SETIDPV1 = orm001.PATIENT.PATIENT_VISIT.PV1.SetIDPV1.Value;
            patientInfoModel.PATIENT_CLASS = orm001.PATIENT.PATIENT_VISIT.PV1.PatientClass.Value;
            patientInfoModel.ASSIGNED_PATIENT_L_STATUS = orm001.PATIENT.PATIENT_VISIT.PV1.AssignedPatientLocation.LocationStatus.Value;
            patientInfoModel.ASSIGNED_PATIENT_L_POINTOFCARE = orm001.PATIENT.PATIENT_VISIT.PV1.AssignedPatientLocation.PointOfCare.Value;
            patientInfoModel.ASSIGNED_PATIENT_L_ROOM = orm001.PATIENT.PATIENT_VISIT.PV1.AssignedPatientLocation.Room.Value;
            patientInfoModel.ASSIGNED_PATIENT_L_BED = orm001.PATIENT.PATIENT_VISIT.PV1.AssignedPatientLocation.Bed.Value;
            patientInfoModel.ATTENDING_DOCTOR_IDNUM = orm001.PATIENT.PATIENT_VISIT.PV1.GetAttendingDoctor(0).IDNumber.Value;
            patientInfoModel.ATTENDING_DOCTOR_GIVENAME = orm001.PATIENT.PATIENT_VISIT.PV1.GetAttendingDoctor(0).GivenName.Value;
            patientInfoModel.READMISSION_INDICATOR = orm001.PATIENT.PATIENT_VISIT.PV1.ReAdmissionIndicator.Value;
            patientInfoModel.ADMIT_SOURCE = orm001.PATIENT.PATIENT_VISIT.PV1.AdmitSource.Value;
            patientInfoModel.VIP_INDICATOR = orm001.PATIENT.PATIENT_VISIT.PV1.VIPIndicator.Value;
            patientInfoModel.VISIT_NUMBER = orm001.PATIENT.PATIENT_VISIT.PV1.VisitNumber.ID.Value;
            patientInfoModel.ADMIT_DATETIME = orm001.PATIENT.PATIENT_VISIT.PV1.AdmitDateTime.TimeOfAnEvent.Value;
            patientInfoModel.DISCHARGE_DATETIME = orm001.PATIENT.PATIENT_VISIT.PV1.GetDischargeDateTime(0).TimeOfAnEvent.Value;
            patientInfoModel.SYSTEM_IP = client.RemoteIP;
            patientInfoModel.SYSTEM_SORT = client.RemotePort.ToString();
            //patientInfoModel.SYSTEM_SORT_SUB
            patientInfoModel.RIS_MANAGE = 0;
            patientInfoModel.SERVICE_MANAGE = 0;
            patientInfoModel.ACTIONTYPE = "1";

            patientInfoBll.Add(patientInfoModel);
            return patientInfoModel;
        }


//-------------------------------------------------------------------

        /// <summary>
        /// ORC OBR 申请单  REQUISITIONS
        /// 分解申请单信息
        /// </summary>
        /// <param name="orm001"></param>
        /// <param name="patientInfoModel"></param>
        private void UpdateRequisitions(AtlastigerHl7api.Model.V24.Message.ORM_O01 orm001, PATIENT_INFOModel patientInfoModel)
        {

            int ORC_NUM = orm001.ORDERRepetitionsUsed;

            List<REQUISITIONSModel> requisitionsModels = new List<REQUISITIONSModel>();

            REQUISITIONSModel requisitionsModel = new REQUISITIONSModel();
            REQUISITIONSBLL requisitionsBll = new REQUISITIONSBLL();

            for (int i = 0; i < ORC_NUM; i++)
            {
                requisitionsModel.REQUISITIONS_ID = getGUID();
                requisitionsModel.PATIENT_INFO_ID = patientInfoModel.PATIENT_INFO_ID;
                requisitionsModel.ORDER_CONTROL = orm001.GetORDER(i).ORC.OrderControl.Value;
                requisitionsModel.PLACER_ORDER_NUMBER = orm001.GetORDER(i).ORC.PlacerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.FILLER_ORDER_NUMBER = orm001.GetORDER(i).ORC.FillerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.PLACER_GROUP_NUMBER = orm001.GetORDER(i).ORC.PlacerGroupNumber.EntityIdentifier.Value;
                requisitionsModel.ORDER_STATUS = orm001.GetORDER(i).ORC.OrderStatus.Value;
                requisitionsModel.RESPONSE_FLAG = orm001.GetORDER(i).ORC.ResponseFlag.Value;
                requisitionsModel.QUANTITY_TIMING = orm001.GetORDER(i).ORC.GetQuantityTiming(0).CNVaule;
                requisitionsModel.TQ_QUANTITY = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Quantity.Quantity.Value;
                requisitionsModel.TQ_INTERVAL = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Interval.RepeatPattern.Value;
                requisitionsModel.TQ_DURATION = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Duration.Value;
                requisitionsModel.TQ_START_DATETIME = orm001.GetORDER(i).ORC.GetQuantityTiming(0).StartDateTime.TimeOfAnEvent.Value;
                requisitionsModel.TQ_END_DATETIME = orm001.GetORDER(i).ORC.GetQuantityTiming(0).EndDateTime.TimeOfAnEvent.Value;
                requisitionsModel.TQ_PRIORITY = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Priority.Value;
                requisitionsModel.TQ_CONDITION = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Condition.Value;
                requisitionsModel.TQ_TEXT = orm001.GetORDER(i).ORC.GetQuantityTiming(0).Text.Value;
                requisitionsModel.TQ_CONJUNCTION_COMPONENT = orm001.GetORDER(i).ORC.GetQuantityTiming(0).ConjunctionComponent.Value;
                requisitionsModel.TQ_ORDER_SEQUENCING = orm001.GetORDER(i).ORC.GetQuantityTiming(0).OrderSequencing.SequenceResultsFlag.Value;
                requisitionsModel.TQ_OCCURRENCE_DURATION = orm001.GetORDER(i).ORC.GetQuantityTiming(0).OccurrenceDuration.Identifier.Value;
                requisitionsModel.TQ_TOTAL_OCCURENCES = orm001.GetORDER(i).ORC.GetQuantityTiming(0).TotalOccurences.Value;
                requisitionsModel.PARENT = orm001.GetORDER(i).ORC.Parent.ParentSPlacerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.DATETIME_OF_TRANSACTION = orm001.GetORDER(i).ORC.DateTimeOfTransaction.TimeOfAnEvent.Value;
                requisitionsModel.ENTERED_BY = orm001.GetORDER(i).ORC.GetEnteredBy(0).IDNumber.Value;
                requisitionsModel.VERIFIED_BY = orm001.GetORDER(i).ORC.GetVerifiedBy(0).IDNumber.Value;
                requisitionsModel.ORDERING_PROVIDER = orm001.GetORDER(i).ORC.GetOrderingProvider(0).IDNumber.Value;
                requisitionsModel.ENTERER_LOCATION = orm001.GetORDER(i).ORC.EntererSLocation.CNVaule;
                requisitionsModel.ENTERER_LOCATION_STATUS = orm001.GetORDER(i).ORC.EntererSLocation.LocationStatus.Value;
                requisitionsModel.ENTERER_LOCATION_ROOM = orm001.GetORDER(i).ORC.EntererSLocation.Room.Value;
                requisitionsModel.ENTERER_LOCATION_POINT = orm001.GetORDER(i).ORC.EntererSLocation.PointOfCare.Value;
                requisitionsModel.CALL_BACK_PHONE_NUMBER = orm001.GetORDER(i).ORC.GetCallBackPhoneNumber(0).Get9999999X99999CAnyText.Value;
                requisitionsModel.ORDER_EFFECTIVE_DATETIME = orm001.GetORDER(i).ORC.OrderEffectiveDateTime.TimeOfAnEvent.Value;
                requisitionsModel.ORDER_CONTROL_CODE_REASON = orm001.GetORDER(i).ORC.OrderControlCodeReason.Identifier.Value;
                requisitionsModel.ENTERING_ORGANIZATION = orm001.GetORDER(i).ORC.EnteringOrganization.Identifier.Value;
                requisitionsModel.ENTERING_DEVICE = orm001.GetORDER(i).ORC.EnteringDevice.Identifier.Value;
                requisitionsModel.ACTION_BY = orm001.GetORDER(i).ORC.GetActionBy(0).IDNumber.Value;
                requisitionsModel.ADVANCED_BENEFICIARY_NOTICE_CODE = orm001.GetORDER(i).ORC.AdvancedBeneficiaryNoticeCode.Identifier.Value;
                requisitionsModel.ORDERING_FACILITY_NAME = orm001.GetORDER(i).ORC.GetOrderingFacilityName(0).IDNumber.Value;
                requisitionsModel.ORDERING_FACILITY_ADDRESS = orm001.GetORDER(i).ORC.GetOrderingFacilityAddress(0).OtherGeographicDesignation.Value;
                requisitionsModel.ORDERING_FACILITY_PHONE_NUMBER = orm001.GetORDER(i).ORC.GetOrderingFacilityPhoneNumber(0).Get9999999X99999CAnyText.Value;
                requisitionsModel.ORDERING_PROVIDER_ADDRESS = orm001.GetORDER(i).ORC.GetOrderingProviderAddress(0).OtherGeographicDesignation.Value;
                requisitionsModel.ORDER_STATUS_MODIFIER = orm001.GetORDER(i).ORC.OrderStatusModifier.Identifier.Value;
                requisitionsModel.SET_ID_OBR = orm001.GetORDER(i).ORDER_DETAIL.OBR.SetIDOBR.Value;
                requisitionsModel.PLACER_ORDER_NUMBER1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.PlacerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.FILLER_ORDER_NUMBER1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.FillerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.UNIVERSAL_SERVICE_IDENTIFIER = orm001.GetORDER(i).ORDER_DETAIL.OBR.UniversalServiceIdentifier.Identifier.Value;
                requisitionsModel.PRIORITY = orm001.GetORDER(i).ORDER_DETAIL.OBR.Priority.Value;
                requisitionsModel.REQUESTED_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.RequestedDateTime.TimeOfAnEvent.Value;
                requisitionsModel.OBSERVATION_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.ObservationDateTime.TimeOfAnEvent.Value;
                requisitionsModel.OBSERVATION_END_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.ObservationEndDateTime.TimeOfAnEvent.Value;
                requisitionsModel.COLLECTION_VOLUME = orm001.GetORDER(i).ORDER_DETAIL.OBR.CollectionVolume.Quantity.Value;
                requisitionsModel.COLLECTOR_IDENTIFIER = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetCollectorIdentifier(0).IDNumber.Value;
                requisitionsModel.SPECIMEN_ACTION_CODE = orm001.GetORDER(i).ORDER_DETAIL.OBR.SpecimenActionCode.Value;
                requisitionsModel.DANGER_CODE = orm001.GetORDER(i).ORDER_DETAIL.OBR.DangerCode.Identifier.Value;
                requisitionsModel.RELEVANT_CLINICAL_INFO = orm001.GetORDER(i).ORDER_DETAIL.OBR.RelevantClinicalInfo.Value;
                requisitionsModel.SPECIMEN_RECEIVED_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.SpecimenReceivedDateTime.TimeOfAnEvent.Value;
                requisitionsModel.SPECIMEN_SOURCE = orm001.GetORDER(i).ORDER_DETAIL.OBR.SpecimenSource.SpecimenSourceNameOrCode.Identifier.Value;
                requisitionsModel.ORDERING_PROVIDER1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetOrderingProvider(0).IDNumber.Value;
                requisitionsModel.ORDER_CALLBACK_PHONE_NUMBER = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetOrderCallbackPhoneNumber(0).Get9999999X99999CAnyText.Value;
                requisitionsModel.PLACER_FIELD_1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.PlacerField1.Value;
                requisitionsModel.PLACER_FIELD_2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.PlacerField2.Value;
                requisitionsModel.FILLER_FIELD_1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.FillerField1.Value;
                requisitionsModel.FILLER_FIELD_2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.FillerField2.Value;
                requisitionsModel.RESULTS_STATUS_CHNG_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.ResultsRptStatusChngDateTime.TimeOfAnEvent.Value;
                requisitionsModel.CHARGE_TO_PRACTICE = orm001.GetORDER(i).ORDER_DETAIL.OBR.ChargeToPractice.DollarAmount.Quantity.Value;
                requisitionsModel.DIAGNOSTIC_SERV_SECT_ID = orm001.GetORDER(i).ORDER_DETAIL.OBR.DiagnosticServSectID.Value;
                requisitionsModel.RESULT_STATUS = orm001.GetORDER(i).ORDER_DETAIL.OBR.ResultStatus.Value;
                requisitionsModel.PARENT_RESULT = orm001.GetORDER(i).ORDER_DETAIL.OBR.ParentResult.OBX3ObservationIdentifierOfParentResult.Identifier.Value;
                requisitionsModel.QUANTITY_TIMING2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).CNVaule;
                requisitionsModel.TQ_QUANTITY2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Quantity.Quantity.Value;
                requisitionsModel.TQ_INTERVAL2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Interval.RepeatPattern.Value;
                requisitionsModel.TQ_DURATION2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Duration.Value;
                requisitionsModel.TQ_START_DATETIME2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).StartDateTime.TimeOfAnEvent.Value;
                requisitionsModel.TQ_END_DATETIME2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).EndDateTime.TimeOfAnEvent.Value;
                requisitionsModel.TQ_PRIORITY2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Priority.Value;
                requisitionsModel.TQ_CONDITION2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Condition.Value;
                requisitionsModel.TQ_TEXT2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).Text.Value;
                requisitionsModel.TQ_CONJUNCTION_COMPONENT1 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).ConjunctionComponent.Value;
                requisitionsModel.TQ_ORDER_SEQUENCING2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).OrderSequencing.SequenceResultsFlag.Value;
                requisitionsModel.TQ_OCCURRENCE_DURATION2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).OccurrenceDuration.Identifier.Value;
                requisitionsModel.TQ_TOTAL_OCCURENCES2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetQuantityTiming(0).TotalOccurences.Value;
                requisitionsModel.RESULT_COPIES_TO = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetResultCopiesTo(0).IDNumber.Value;
                requisitionsModel.PARENT2 = orm001.GetORDER(i).ORDER_DETAIL.OBR.Parent.ParentSPlacerOrderNumber.EntityIdentifier.Value;
                requisitionsModel.TRANSPORTATION_MODE = orm001.GetORDER(i).ORDER_DETAIL.OBR.TransportationMode.Value;
                requisitionsModel.REASON_FOR_STUDY = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetReasonForStudy(0).Identifier.Value;
                requisitionsModel.PRINCIPAL_RESULT_INTERPRETER = orm001.GetORDER(i).ORDER_DETAIL.OBR.PrincipalResultInterpreter.CNVaule;
                requisitionsModel.ASSISTANT_RESULT_INTERPRETER = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetAssistantResultInterpreter(0).CNVaule;
                requisitionsModel.TECHNICIAN = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTechnician(0).CNVaule;
                requisitionsModel.TECHNICIAN_STATUS = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTechnician(0).LocationStatus.Value;
                requisitionsModel.TECHNICIAN_ROOM = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTechnician(0).Room.Value;
                requisitionsModel.TECHNICIAN_POINT = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTechnician(0).PointOfCare.Value;
                requisitionsModel.TRANSCRIPTIONIST = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTranscriptionist(0).CNVaule;
                requisitionsModel.SCHEDULED_DATETIME = orm001.GetORDER(i).ORDER_DETAIL.OBR.ScheduledDateTime.TimeOfAnEvent.Value;
                requisitionsModel.NUMBER_OF_SAMPLE_CONTAINERS = orm001.GetORDER(i).ORDER_DETAIL.OBR.NumberOfSampleContainers.Value;
                requisitionsModel.TRANSPORT_LOGISTICS_OF_COLLECTED_SAMPLE = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetTransportLogisticsOfCollectedSample(0).Identifier.Value;
                requisitionsModel.COLLECTOR_COMMENT = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetCollectorSComment(0).Identifier.Value;
                requisitionsModel.TRANSPORT_ARRANGEMENT_RESPONSIBILITY = orm001.GetORDER(i).ORDER_DETAIL.OBR.TransportArrangementResponsibility.Identifier.Value;
                requisitionsModel.TRANSPORT_ARRANGED = orm001.GetORDER(i).ORDER_DETAIL.OBR.TransportArranged.Value;
                requisitionsModel.ESCORT_REQUIRED = orm001.GetORDER(i).ORDER_DETAIL.OBR.EscortRequired.Value;
                requisitionsModel.PLANNED_PATIENT_TRANSPORT_COMMENT = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetPlannedPatientTransportComment(0).Identifier.Value;
                requisitionsModel.PROCEDURE_CODE = orm001.GetORDER(i).ORDER_DETAIL.OBR.ProcedureCode.Identifier.Value;
                requisitionsModel.PROCEDURE_CODE_MODIFIER = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetProcedureCodeModifier(0).Identifier.Value;
                requisitionsModel.PLACER_SUPPLEMENTAL_SERVICE_INFORMATION = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetPlacerSupplementalServiceInformation(0).Identifier.Value;
                requisitionsModel.FILLER_SUPPLEMENTAL_SERVICE_INFORMATION = orm001.GetORDER(i).ORDER_DETAIL.OBR.GetFillerSupplementalServiceInformation(0).Identifier.Value;

                requisitionsBll.Add(requisitionsModel);
            }
        }


0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics