Index: ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/gyey/PatientAdmissionInfoManagerImpl.java =================================================================== diff -u -r22629 -r24047 --- ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/gyey/PatientAdmissionInfoManagerImpl.java (.../PatientAdmissionInfoManagerImpl.java) (revision 22629) +++ ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/gyey/PatientAdmissionInfoManagerImpl.java (.../PatientAdmissionInfoManagerImpl.java) (revision 24047) @@ -115,25 +115,31 @@ public String updatePatientAdmissionInfo(Document document) { // 1.获得住院流水号 String hospitalSerialNumber = HL7ToXmlConverter.getText(document,"PID/PID.2"); - // 2.获得手术医生 - String doctorName = HL7ToXmlConverter.getText(document,"ARQ/ARQ.15/ARQ.15.2"); - // 3.获得手术名称 - String surgeryName = null; - @SuppressWarnings("unchecked") - List netList = HL7ToXmlConverter.getTexts(document,"NTE/NTE.3"); - if(netList.size() >= 2){ - Element e = (Element)netList.get(1); - surgeryName = e.getText();//获取第二个NTE.3为手术名称 - }else{ - logger.error("xml:NTE/NTE.3 获取不到第二个NTE.3为手术名称"); - return HL7ToXmlConverter.returnHl7(document,"AE","执行手术申请失败:xml:NTE/NTE.3 获取第二个NTE.3为手术名称"); - } - // 4.更新病人入院信息 + // 判断住院流水号是否为空 if(StringUtils.isNotBlank(hospitalSerialNumber)){ //根据住院流水号获得gyey病人入院信息 PatientAdmissionInfo patientAdmissionInfo = this.getForUpdate("hospitalSerialNumber", hospitalSerialNumber); if(patientAdmissionInfo !=null){ - //更新医生,手术名称 + // 2.获得手术医生 + String doctorName = HL7ToXmlConverter.getText(document,"ARQ/ARQ.15/ARQ.15.2"); + // 3.获得手术名称 + String surgeryName = null; + @SuppressWarnings("unchecked") + List netList = HL7ToXmlConverter.getTexts(document,"NTE/NTE.3"); + if(netList.size() >= 2){ + Element e = (Element)netList.get(1); + surgeryName = e.getText();//获取第二个NTE.3为手术名称 + }else{ + logger.error("xml:NTE/NTE.3 获取不到第二个NTE.3为手术名称"); + return HL7ToXmlConverter.returnHl7(document,"AE","执行手术申请失败:xml:NTE/NTE.3 获取第二个NTE.3为手术名称"); + } + String patientArea = HL7ToXmlConverter.getText(document,"PV1/PV1.3/PV1.3.1"); + String roomNumber = HL7ToXmlConverter.getText(document,"PV1/PV1.3/PV1.3.2"); + String bedNumber = HL7ToXmlConverter.getText(document,"PV1/PV1.3/PV1.3.3"); + //4.更新病区、病室、床号、医生,手术名称 + patientAdmissionInfo.setPatientArea(patientArea); + patientAdmissionInfo.setRoomNumber(roomNumber); + patientAdmissionInfo.setBedNumber(bedNumber); patientAdmissionInfo.setDoctorName(doctorName); patientAdmissionInfo.setSurgeryName(surgeryName); objectDao.update(patientAdmissionInfo);