From d3b362de432a32c10ccd039dfc417d8c6233f543 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 28 三月 2025 18:10:21 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java |  257 ++++++++++++++++++++++++++++++--------------------
 1 files changed, 153 insertions(+), 104 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
index 9fd46d8..24b6751 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -3,6 +3,7 @@
 import cn.hutool.core.bean.BeanUtil;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.StringUtils;
 import com.smartor.domain.*;
 import com.smartor.mapper.*;
@@ -74,6 +75,9 @@
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
         Map<String, Object> keShiXX = (Map<String, Object>) yeWuXX.get("KeShiXX");
         ExternalDept externalDept = BeanUtil.mapToBean(keShiXX, ExternalDept.class, true);
+        if (ObjectUtils.isEmpty(externalDept)) {
+            throw new BaseException("externalDept鏄┖鐨勶紝娌℃湁鏁版嵁锛侊紒锛�");
+        }
         SysDept sysDept = new SysDept();
         sysDept.setOrgid(externalDept.getZuZhiJGID());
         sysDept.setHisDeptId(externalDept.getKeShiID());
@@ -118,6 +122,9 @@
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
         Map<String, Object> yongHuXX = (Map<String, Object>) yeWuXX.get("YongHuXX");
         ExternalUserInfo externalUserInfo = BeanUtil.mapToBean(yongHuXX, ExternalUserInfo.class, true);
+        if (ObjectUtils.isEmpty(externalUserInfo)) {
+            throw new BaseException("externalUserInfo鏄┖鐨勶紝娌℃湁鏁版嵁锛侊紒锛�");
+        }
         SysUser sysUser = new SysUser();
         sysUser.setGuid(externalUserInfo.getZuZhiJGID());
         sysUser.setUserName(externalUserInfo.getYongHuDLM());
@@ -159,6 +166,9 @@
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
         Map<String, Object> ZuZhiJGXX = (Map<String, Object>) yeWuXX.get("ZuZhiJGXX");
         ExternalOrganInfo externalOrganInfo = BeanUtil.mapToBean(ZuZhiJGXX, ExternalOrganInfo.class, true);
+        if (ObjectUtils.isEmpty(externalOrganInfo)) {
+            throw new BaseException("externalOrganInfo鏄┖鐨勶紝娌℃湁鏁版嵁锛侊紒锛�");
+        }
         BaseOrganization baseOrganization = new BaseOrganization();
         baseOrganization.setOrganizationID(externalOrganInfo.getZuZhiJGID());
         baseOrganization.setOrganizationName(externalOrganInfo.getZuZhiJGMC());
@@ -189,10 +199,10 @@
     public Boolean addInHospInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addInHospInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        List<HashMap<String, Object>> epai = (List<HashMap<String, Object>>) yeWuXX.get("DiZhiXXList");
-        List<HashMap<String, Object>> epli = (List<HashMap<String, Object>>) yeWuXX.get("LianXiRList");
-        List<HashMap<String, Object>> hospPatientDiagnoseInfos = (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList");
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        List<HashMap<String, Object>> epai = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("DiZhiXXList") : null;
+        List<HashMap<String, Object>> epli = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("LianXiRList") : null;
+        List<HashMap<String, Object>> hospPatientDiagnoseInfos = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList") : null;
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
         ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo = null;
         ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo = null;
@@ -247,7 +257,7 @@
     public Boolean cancelInHospInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---cancelInHospInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
         PatMedInhosp patMedInhosp = new PatMedInhosp();
         patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
@@ -257,12 +267,14 @@
             patMedInhosp1.setTagname(tagname);
         }
         if (CollectionUtils.isNotEmpty(patMedInhospList)) {
-            Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
+            Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null;
             PatMedInhosp patMedInhosp1 = patMedInhospList.get(0);
             patMedInhosp1.setSchemestatus(3L);
             patMedInhosp1.setDelFlag("1");
-            patMedInhosp1.setOperator(JiuZhenXX.get("CaoZuoRXM").toString());
-            patMedInhosp1.setOperatorId(JiuZhenXX.get("CaoZuoRID").toString());
+            if (ObjectUtils.isNotEmpty(JiuZhenXX)) {
+                patMedInhosp1.setOperator(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRXM")) ? JiuZhenXX.get("CaoZuoRXM").toString() : null);
+                patMedInhosp1.setOperatorId(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRID")) ? JiuZhenXX.get("CaoZuoRID").toString() : null);
+            }
             patMedInhosp1.setUpdateTime(new Date());
             int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
             if (i != 1) return false;
@@ -274,9 +286,12 @@
     public Boolean addOutHospInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addOutHospInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
-        List<HashMap<String, Object>> epai = (List<HashMap<String, Object>>) BingRenXX.get("DiZhiXXList");
-        List<HashMap<String, Object>> epli = (List<HashMap<String, Object>>) yeWuXX.get("LianXiRList");
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
+        Map<String, Object> ChuYuanJL = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ChuYuanJL") : null;
+        List<HashMap<String, Object>> epai = ObjectUtils.isNotEmpty(BingRenXX) ? (List<HashMap<String, Object>>) BingRenXX.get("DiZhiXXList") : null;
+        List<HashMap<String, Object>> epli = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("LianXiRList") : null;
+        Map<String, Object> SuiFangJH = ObjectUtils.isNotEmpty(ChuYuanJL) ? (Map<String, Object>) ChuYuanJL.get("SuiFangJH") : null;
+
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
         ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo = null;
         ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo = null;
@@ -323,7 +338,7 @@
             String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
             patMedInhosp1.setTagname(tagname);
         }
-        Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
+        Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null;
         PatMedInhosp patMedInhosp1 = new PatMedInhosp();
         if (CollectionUtils.isNotEmpty(patMedInhospList)) patMedInhosp1 = patMedInhospList.get(0);
         patMedInhosp1.setSchemestatus(2L);
@@ -332,14 +347,16 @@
         } catch (ParseException e) {
             e.printStackTrace();
         }
-        patMedInhosp1.setOperator(JiuZhenXX.get("CaoZuoRXM").toString());
-        patMedInhosp1.setOperatorId(JiuZhenXX.get("CaoZuoRID").toString());
+        if (ObjectUtils.isNotEmpty(JiuZhenXX)) {
+            patMedInhosp1.setOperator(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRXM")) ? JiuZhenXX.get("CaoZuoRXM").toString() : null);
+            patMedInhosp1.setOperatorId(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRID")) ? JiuZhenXX.get("CaoZuoRID").toString() : null);
+            patMedInhosp1.setDrname(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZhuZhiYSXM")) ? JiuZhenXX.get("ZhuZhiYSXM").toString() : null);
+            patMedInhosp1.setDrcode(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZhuZhiYSID")) ? JiuZhenXX.get("ZhuZhiYSID").toString() : null);
+            patMedInhosp1.setNurseName(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSXM")) ? JiuZhenXX.get("ZeRenHSXM").toString() : null);
+            patMedInhosp1.setNurseId(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSID")) ? JiuZhenXX.get("ZeRenHSID").toString() : null);
+            patMedInhosp1.setBedNo(ObjectUtils.isNotEmpty(JiuZhenXX.get("DangQianCWMC")) ? JiuZhenXX.get("DangQianCWMC").toString() : null);
+        }
         patMedInhosp1.setUpdateTime(new Date());
-        patMedInhosp1.setDrname(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZhuZhiYSXM")) ? JiuZhenXX.get("ZhuZhiYSXM").toString() : null);
-        patMedInhosp1.setDrcode(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZhuZhiYSID")) ? JiuZhenXX.get("ZhuZhiYSID").toString() : null);
-        patMedInhosp1.setNurseName(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSXM")) ? JiuZhenXX.get("ZeRenHSXM").toString() : null);
-        patMedInhosp1.setNurseId(ObjectUtils.isNotEmpty(JiuZhenXX.get("ZeRenHSID")) ? JiuZhenXX.get("ZeRenHSID").toString() : null);
-        patMedInhosp1.setBedNo(ObjectUtils.isNotEmpty(JiuZhenXX.get("DangQianCWMC")) ? JiuZhenXX.get("DangQianCWMC").toString() : null);
         patMedInhosp1.setTelcode(patArchive.getTelcode());
         patMedInhosp1.setLeavehospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID());
         patMedInhosp1.setLeavehospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC());
@@ -347,34 +364,57 @@
         patMedInhosp1.setDeptname(externalInHospPatientInfo.getDangQianKSMC());
         patMedInhosp1.setLeaveldeptcode(externalInHospPatientInfo.getDangQianKSID());
         patMedInhosp1.setDeptcode(externalInHospPatientInfo.getDangQianKSID());
-        List<HashMap<String, Object>> zhenDuanList = (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList");
-        List<ExternalInHospPatientDiagnoseInfo> hospPatientDiagnoseInfos2 = zhenDuanList.stream().map(map -> {
-            ExternalInHospPatientDiagnoseInfo info = new ExternalInHospPatientDiagnoseInfo();
-            info.setZhenDuanID((String) map.get("ZhenDuanID"));
-            info.setZhenDuanMC((String) map.get("ZhenDuanMC"));
-            return info;
-        }).collect(Collectors.toList());
-        patMedInhosp1.setLeaveicd10code(StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code()) ? patMedInhosp1.getLeaveicd10code() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanID() : hospPatientDiagnoseInfos2.get(0).getZhenDuanID());
-        patMedInhosp1.setLeavediagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
-        patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
-        //     patMedInhosp1.setIcd10code(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+
+        if (ObjectUtils.isNotEmpty(SuiFangJH)) {
+            patMedInhosp1.setFuflag(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangBS")) ? SuiFangJH.get("SuiFangBS").toString() : null);
+            if (ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangRQ"))) {
+                try {
+                    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                    patMedInhosp1.setFudate(simpleDateFormat.parse(SuiFangJH.get("SuiFangRQ").toString()));
+                } catch (ParseException e) {
+                    e.printStackTrace();
+                }
+            }
+            patMedInhosp1.setFuperiod(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangZQJY")) ? SuiFangJH.get("SuiFangZQJY").toString() : null);
+            patMedInhosp1.setFutypecode(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangFSDM")) ? SuiFangJH.get("SuiFangFSDM").toString() : null);
+            patMedInhosp1.setFutypedesc(ObjectUtils.isNotEmpty(SuiFangJH.get("SuiFangFSMC")) ? SuiFangJH.get("SuiFangFSMC").toString() : null);
+            patMedInhosp1.setFuadivce(ObjectUtils.isNotEmpty(SuiFangJH.get("FuZhenZD")) ? SuiFangJH.get("FuZhenZD").toString() : null);
+            patMedInhosp1.setFuspecialadvice(ObjectUtils.isNotEmpty(SuiFangJH.get("QiTaZKJBSF")) ? SuiFangJH.get("QiTaZKJBSF").toString() : null);
+        }
+
+        List<HashMap<String, Object>> zhenDuanList = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList") : null;
+        if (CollectionUtils.isNotEmpty(zhenDuanList)) {
+            List<ExternalInHospPatientDiagnoseInfo> hospPatientDiagnoseInfos2 = zhenDuanList.stream().map(map -> {
+                ExternalInHospPatientDiagnoseInfo info = new ExternalInHospPatientDiagnoseInfo();
+                info.setZhenDuanID((String) map.get("ZhenDuanID"));
+                info.setZhenDuanMC((String) map.get("ZhenDuanMC"));
+                return info;
+            }).collect(Collectors.toList());
+            patMedInhosp1.setLeaveicd10code(StringUtils.isNotEmpty(patMedInhosp1.getLeaveicd10code()) ? patMedInhosp1.getLeaveicd10code() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanID() : hospPatientDiagnoseInfos2.get(0).getZhenDuanID());
+            patMedInhosp1.setLeavediagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+            patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC());
+        }
+
         patMedInhosp1.setInhospstate("1");
         if (CollectionUtils.isNotEmpty(patMedInhospList)) {
             patMedInhosp1.setUpdateTime(new Date());
-            patMedInhosp1.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
+            patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
             int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
             if (i != 1) return false;
         } else {
-            patMedInhosp1.setHospitalname(BingRenXX.get("ZuZhiJGMC").toString());
-            patMedInhosp1.setHospitalcode(BingRenXX.get("ZuZhiJGID").toString());
-            patMedInhosp1.setLeavehospitaldistrictname(BingRenXX.get("DangQianBQMC").toString());
-            patMedInhosp1.setLeavehospitaldistrictcode(BingRenXX.get("DangQianBQID").toString());
+            if (ObjectUtils.isNotEmpty(BingRenXX)) {
+                patMedInhosp1.setHospitalname(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGMC")) ? BingRenXX.get("ZuZhiJGMC").toString() : null);
+                patMedInhosp1.setHospitalcode(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+                patMedInhosp1.setLeavehospitaldistrictname(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianBQMC")) ? BingRenXX.get("DangQianBQMC").toString() : null);
+                patMedInhosp1.setLeavehospitaldistrictcode(ObjectUtils.isNotEmpty(BingRenXX.get("DangQianBQID")) ? BingRenXX.get("DangQianBQID").toString() : null);
+                patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+                patMedInhosp1.setPatno(ObjectUtils.isNotEmpty(BingRenXX.get("BingRenID")) ? BingRenXX.get("BingRenID").toString() : null);
+                patMedInhosp1.setInhospno(ObjectUtils.isNotEmpty(BingRenXX.get("BingAnHao")) ? BingRenXX.get("BingAnHao").toString() : null);
+                patMedInhosp1.setSerialnum(ObjectUtils.isNotEmpty(BingRenXX.get("BingAnHao")) ? BingRenXX.get("BingAnHao").toString() : null);
+            }
             patMedInhosp1.setPatid(patArchive.getId());
             patMedInhosp1.setPatname(patArchive.getName());
-            patMedInhosp1.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
-            patMedInhosp1.setPatno(BingRenXX.get("BingRenID").toString());
-            patMedInhosp1.setInhospno(BingRenXX.get("BingAnHao").toString());
-            patMedInhosp1.setSerialnum(BingRenXX.get("BingAnHao").toString());
+
             patMedInhosp1.setCreateTime(new Date());
             int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1);
             if (i != 1) return false;
@@ -386,7 +426,7 @@
     public Boolean cancelOutHospInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---cancelOutHospInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
         PatMedInhosp patMedInhosp = new PatMedInhosp();
         patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao());
@@ -396,11 +436,13 @@
             patMedInhosp1.setTagname(tagname);
         }
         if (CollectionUtils.isNotEmpty(patMedInhospList)) {
-            Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
+            Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null;
             PatMedInhosp patMedInhosp1 = patMedInhospList.get(0);
             patMedInhosp1.setSchemestatus(4L);
-            patMedInhosp1.setOperator(JiuZhenXX.get("CaoZuoRXM").toString());
-            patMedInhosp1.setOperatorId(JiuZhenXX.get("CaoZuoRID").toString());
+            if (ObjectUtils.isNotEmpty(JiuZhenXX)) {
+                patMedInhosp1.setOperator(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRXM")) ? JiuZhenXX.get("CaoZuoRXM").toString() : null);
+                patMedInhosp1.setOperatorId(ObjectUtils.isNotEmpty(JiuZhenXX.get("CaoZuoRXM")) ? JiuZhenXX.get("CaoZuoRID").toString() : null);
+            }
             patMedInhosp1.setUpdateTime(new Date());
             int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1);
             if (i != 1) return false;
@@ -415,26 +457,28 @@
         Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou");
         String FaSongJGID = ObjectUtils.isNotEmpty(XiaoXiTou.get("FaSongJGID")) ? XiaoXiTou.get("FaSongJGID").toString() : null;
 
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
-        Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
-        List<HashMap<String, Object>> ZhenDuanList = (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList");
-        List<HashMap<String, Object>> externalWZInfos = (List<HashMap<String, Object>>) yeWuXX.get("WenZhenList");
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
+        Map<String, Object> JiuZhenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiuZhenXX") : null;
+        List<HashMap<String, Object>> ZhenDuanList = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("ZhenDuanList") : null;
+        List<HashMap<String, Object>> externalWZInfos = ObjectUtils.isNotEmpty(yeWuXX) ? (List<HashMap<String, Object>>) yeWuXX.get("WenZhenList") : null;
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
         //鐥呬汉淇℃伅閲屾病鏈夌粍缁囨満鏋処D
         externalInHospPatientInfo.setZuZhiJGID(FaSongJGID);
 
         ExternalJZInfo externalJZInfo = BeanUtil.mapToBean(JiuZhenXX, ExternalJZInfo.class, true);
-        List<ExternalDiagnosisInfo> externalDiagnosisInfoList = ZhenDuanList.stream().map(map -> {
-            ExternalDiagnosisInfo info = new ExternalDiagnosisInfo();
-            info.setZhenDuanYSID((String) map.get("ZhenDuanYSID"));
-            info.setZhenDuanYSXM((String) map.get("ZhenDuanYSXM"));
-            info.setZhenDuanID((String) map.get("ZhenDuanID"));
-            info.setZhenDuanMC((String) map.get("ZhenDuanMC"));
-            info.setZhenDuanLBDM((String) map.get("ZhenDuanLBDM"));
-            info.setZhenDuanLBMC((String) map.get("ZhenDuanLBMC"));
-            return info;
-        }).collect(Collectors.toList());
-
+        List<ExternalDiagnosisInfo> externalDiagnosisInfoList = null;
+        if (CollectionUtils.isNotEmpty(ZhenDuanList)) {
+            externalDiagnosisInfoList = ZhenDuanList.stream().map(map -> {
+                ExternalDiagnosisInfo info = new ExternalDiagnosisInfo();
+                info.setZhenDuanYSID((String) map.get("ZhenDuanYSID"));
+                info.setZhenDuanYSXM((String) map.get("ZhenDuanYSXM"));
+                info.setZhenDuanID((String) map.get("ZhenDuanID"));
+                info.setZhenDuanMC((String) map.get("ZhenDuanMC"));
+                info.setZhenDuanLBDM((String) map.get("ZhenDuanLBDM"));
+                info.setZhenDuanLBMC((String) map.get("ZhenDuanLBMC"));
+                return info;
+            }).collect(Collectors.toList());
+        }
         List<ExternalWZInfo> ExternalWZInfoList = externalWZInfos.stream().map(map -> {
             ExternalWZInfo info = new ExternalWZInfo();
             info.setWenZhenLXMC((String) map.get("WenZhenLXMC"));
@@ -459,7 +503,6 @@
         for (ExternalDiagnosisInfo externalDiagnosisInfo : externalDiagnosisInfoList) {
             if (externalDiagnosisInfo.getZhenDuanLBMC().equals("涓昏瘖鏂�")) {
                 patMedOuthosp.setDiagname(externalDiagnosisInfo.getZhenDuanMC());
-                patMedOuthosp.setIcd10code(externalDiagnosisInfo.getZhenDuanID());
                 patMedOuthosp.setDrcode(externalDiagnosisInfo.getZhenDuanYSID());
                 patMedOuthosp.setDrname(externalDiagnosisInfo.getZhenDuanYSXM());
                 patMedOuthosp.setIcd10code(externalDiagnosisInfo.getIcd10());
@@ -485,10 +528,10 @@
     public Boolean addDiseaseInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addDiseaseInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> JiBing = (Map<String, Object>) yeWuXX.get("JiBingMLXX");
+        Map<String, Object> JiBing = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("JiBingMLXX") : null;
         ExternalDiseaseInfo externalDiseaseInfo = BeanUtil.mapToBean(JiBing, ExternalDiseaseInfo.class, true);
         Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou");
-        String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString();
+        String FaSongJGID = ObjectUtils.isNotEmpty(XiaoXiTou) && ObjectUtils.isNotEmpty(XiaoXiTou.get("FaSongJGID")) ? XiaoXiTou.get("FaSongJGID").toString() : null;
         Icd10 icd10 = new Icd10();
         icd10.setIcdcode(externalDiseaseInfo.getIcD10());
         icd10.setDelFlag("0");
@@ -515,7 +558,7 @@
     public Boolean addWardAreaInfo(Map dataMap) {
         log.error("ServiceExternalServiceImpl---addWardAreaInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> bqxx = (Map<String, Object>) yeWuXX.get("BingQuXX");
+        Map<String, Object> bqxx = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingQuXX") : null;
         ExternalWardArea externalWardArea = BeanUtil.mapToBean(bqxx, ExternalWardArea.class, true);
         SysDept sysDept = new SysDept();
         sysDept.setGuid(externalWardArea.getZuZhiJGID());
@@ -549,18 +592,18 @@
         log.error("ServiceExternalServiceImpl---addOperationInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap);
 
         Map yeWuXX = (Map) dataMap.get("YeWuXX");
-        Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX");
+        Map<String, Object> BingRenXX = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("BingRenXX") : null;
         ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true);
 
         PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null);
 
 
         //鎵嬫湳淇℃伅鏂板
-        Map<String, Object> ssxx = (Map<String, Object>) yeWuXX.get("ShouShuSQ");
+        Map<String, Object> ssxx = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ShouShuSQ") : null;
         //鎵嬫湳鏇存柊
-        Map<String, Object> ssgx = (Map<String, Object>) yeWuXX.get("ShouShuGX");
+        Map<String, Object> ssgx = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ShouShuGX") : null;
         //鎵嬫湳鎾ら攢
-        Map<String, Object> sscx = (Map<String, Object>) yeWuXX.get("ShouShuCX");
+        Map<String, Object> sscx = ObjectUtils.isNotEmpty(yeWuXX) ? (Map<String, Object>) yeWuXX.get("ShouShuCX") : null;
         ExternalOperationInfo externalOperationInfo = null;
         if (ObjectUtils.isNotEmpty(ssxx))
             externalOperationInfo = BeanUtil.mapToBean(ssxx, ExternalOperationInfo.class, true);
@@ -572,30 +615,36 @@
         patMedOperation.setPatid(patArchive.getId());
         patMedOperation.setPatcode(externalInHospPatientInfo.getBingRenID());
         patMedOperation.setPaname(externalInHospPatientInfo.getXingMing());
-//        patMedOperation.setOpreqid(externalOperationInfo.getShenQingDID());
         patMedOperation.setOpreqcode(externalOperationInfo.getShenQingDID());
         //鏌ヨ涓�涓嬶紝璇ユ偅鑰呮槸鍚﹀凡缁忔湁杩欎簺鏁版嵁
         List<PatMedOperation> patMedOperations = patMedOperationMapper.selectPatMedOperationList(patMedOperation);
 
         patMedOperation.setOpsstatus(null);
-        patMedOperation.setOptypecode(externalOperationInfo.getShouShuLBDM());
-        patMedOperation.setOptypename(externalOperationInfo.getShouShuLBMC());
-        patMedOperation.setOperatortime(externalOperationInfo.getYaoQiuSJ());
-        patMedOperation.setOpreqtime(externalOperationInfo.getShenQingSJ());
-        patMedOperation.setReqdoccode(externalOperationInfo.getShenQingYSID());
-        patMedOperation.setReqdocname(externalOperationInfo.getShenQingYSXM());
-        patMedOperation.setReqdeptcode(externalOperationInfo.getShenQingKSID());
-        patMedOperation.setReqdeptname(externalOperationInfo.getShenQingKSMC());
-        patMedOperation.setReqloccode(externalOperationInfo.getShouShuKSID());
-        patMedOperation.setReqlocname(externalOperationInfo.getShouShuKSMC());
-        patMedOperation.setSurgeoncode(externalOperationInfo.getZhuDaoYSID());
-        patMedOperation.setSurgeonname(externalOperationInfo.getSanZhuYSXM());
-        patMedOperation.setFirasscode(externalOperationInfo.getYiZhuID());
-        patMedOperation.setFirassname(externalOperationInfo.getYiZhuMC());
-        patMedOperation.setSecasscode(externalOperationInfo.getErZhuYSID());
-        patMedOperation.setSecassname(externalOperationInfo.getErZhuYSXM());
-        patMedOperation.setThrasscode(externalOperationInfo.getSanZhuYSID());
-        patMedOperation.setThrassname(externalOperationInfo.getSanZhuYSXM());
+        if (ObjectUtils.isNotEmpty(externalOperationInfo)) {
+            patMedOperation.setOptypecode(externalOperationInfo.getShouShuLBDM());
+            patMedOperation.setOptypename(externalOperationInfo.getShouShuLBMC());
+            patMedOperation.setOperatortime(externalOperationInfo.getYaoQiuSJ());
+            patMedOperation.setOpreqtime(externalOperationInfo.getShenQingSJ());
+            patMedOperation.setReqdoccode(externalOperationInfo.getShenQingYSID());
+            patMedOperation.setReqdocname(externalOperationInfo.getShenQingYSXM());
+            patMedOperation.setReqdeptcode(externalOperationInfo.getShenQingKSID());
+            patMedOperation.setReqdeptname(externalOperationInfo.getShenQingKSMC());
+            patMedOperation.setReqloccode(externalOperationInfo.getShouShuKSID());
+            patMedOperation.setReqlocname(externalOperationInfo.getShouShuKSMC());
+            patMedOperation.setSurgeoncode(externalOperationInfo.getZhuDaoYSID());
+            patMedOperation.setSurgeonname(externalOperationInfo.getSanZhuYSXM());
+            patMedOperation.setFirasscode(externalOperationInfo.getYiZhuID());
+            patMedOperation.setFirassname(externalOperationInfo.getYiZhuMC());
+            patMedOperation.setSecasscode(externalOperationInfo.getErZhuYSID());
+            patMedOperation.setSecassname(externalOperationInfo.getErZhuYSXM());
+            patMedOperation.setThrasscode(externalOperationInfo.getSanZhuYSID());
+            patMedOperation.setThrassname(externalOperationInfo.getSanZhuYSXM());
+            patMedOperation.setDeptid(externalOperationInfo.getShouShuKSID());
+            patMedOperation.setDeptcode(externalOperationInfo.getShouShuKSID());
+            patMedOperation.setDeptname(externalOperationInfo.getShouShuKSMC());
+            patMedOperation.setDrcode(externalOperationInfo.getZhuDaoYSID());
+            patMedOperation.setDrname(externalOperationInfo.getZhuDaoYSXM());
+        }
         patMedOperation.setCanceltime(null);
         patMedOperation.setCancelreason(null);
         patMedOperation.setCancelcode(null);
@@ -607,24 +656,22 @@
         patMedOperation.setDelFlag("0");
         patMedOperation.setIsupload(null);
         patMedOperation.setUploadTime(null);
-        patMedOperation.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
-        patMedOperation.setInhospstate(null);
-        patMedOperation.setPatno(externalInHospPatientInfo.getBingRenID());
-        patMedOperation.setPatname(externalInHospPatientInfo.getXingMing());
         patMedOperation.setVisitid(null);
-        patMedOperation.setSerialnum(externalInHospPatientInfo.getZhuYuanHao());
-        patMedOperation.setInhospno(externalInHospPatientInfo.getBingAnHao());
-        patMedOperation.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
-        patMedOperation.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
-        patMedOperation.setDeptid(externalOperationInfo.getShouShuKSID());
-        patMedOperation.setDeptcode(externalOperationInfo.getShouShuKSID());
-        patMedOperation.setDeptname(externalOperationInfo.getShouShuKSMC());
+        patMedOperation.setInhospstate(null);
+        if (ObjectUtils.isNotEmpty(externalInHospPatientInfo)) {
+            patMedOperation.setPatno(externalInHospPatientInfo.getBingRenID());
+            patMedOperation.setPatname(externalInHospPatientInfo.getXingMing());
+            patMedOperation.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+            patMedOperation.setSerialnum(externalInHospPatientInfo.getZhuYuanHao());
+            patMedOperation.setInhospno(externalInHospPatientInfo.getBingAnHao());
+            patMedOperation.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
+            patMedOperation.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID());
+        }
         patMedOperation.setHospitaldistrictcode(null);
         patMedOperation.setHospitaldistrictname(null);
         patMedOperation.setRoomno(null);
         patMedOperation.setBedNo(null);
-        patMedOperation.setDrcode(externalOperationInfo.getZhuDaoYSID());
-        patMedOperation.setDrname(externalOperationInfo.getZhuDaoYSXM());
+
         patMedOperation.setNurseId(null);
         patMedOperation.setNurseName(null);
         if (CollectionUtils.isNotEmpty(patMedOperations)) {
@@ -647,7 +694,7 @@
         if (ObjectUtils.isNotEmpty(ssxx)) {
             List<HashMap<String, Object>> ShouShuMXList = (List<HashMap<String, Object>>) ssxx.get("ShouShuMXList");
 
-            List<ExternalOperationDetail> externalOperationDetails = ShouShuMXList.stream().map(map -> {
+            List<ExternalOperationDetail> externalOperationDetails = ObjectUtils.isNotEmpty(ShouShuMXList) ? ShouShuMXList.stream().map(map -> {
                 ExternalOperationDetail info = new ExternalOperationDetail();
                 info.setShouShuMCID((String) map.get("ShouShuMCID"));
                 info.setShouShuMC((String) map.get("ShouShuMC"));
@@ -661,7 +708,7 @@
                 info.setShouShuMCQZ((String) map.get("ShouShuMCQZ"));
                 info.setShouShuMCHZ((String) map.get("ShouShuMCHZ"));
                 return info;
-            }).collect(Collectors.toList());
+            }).collect(Collectors.toList()) : null;
 
             //addMianTableFalg鏄惁闇�瑕佸皢涓绘墜鏈殑淇℃伅鏀惧埌PatMedOperation琛ㄤ腑锛堝彧鏈夌涓�涓富鎵嬫湳淇℃伅闇�瑕佹斁锛屽悗闈㈢殑閮戒笉闇�瑕佹斁浜嗭紝涔熷氨鏄锛岀涓�涓斁瀹屽悗锛屽氨瑕佹妸杩欎釜flag鏀规垚false锛�
             Boolean addMianTableFalg = true;
@@ -719,7 +766,9 @@
             patArchive.setSex(Long.valueOf(externalInHospPatientInfo.getXingBieDM()));
         patArchive.setNation(externalInHospPatientInfo.getMinZuMC());
         patArchive.setNativePlace(externalInHospPatientInfo.getGuoJiMC());
-        if (ObjectUtils.isNotEmpty(externalInHospPatientAddrInfo)) {
+        if (ObjectUtils.isNotEmpty(externalInHospPatientInfo.getXianZhuZXX())) {
+            patArchive.setPlaceOfResidence(externalInHospPatientInfo.getXianZhuZXX());
+        } else if (ObjectUtils.isNotEmpty(externalInHospPatientAddrInfo)) {
             String por = null;
             if (StringUtils.isNotEmpty(externalInHospPatientAddrInfo.getDiZhiXX())) {
                 por = externalInHospPatientAddrInfo.getDiZhiXX();
@@ -727,7 +776,7 @@
                 por = externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX();
             }
             patArchive.setPlaceOfResidence(por.replace("null", ""));
-            patArchive.setBirthplace(por.replace("null", ""));
+//            patArchive.setBirthplace(por.replace("null", ""));
         }
 
         if (ObjectUtils.isNotEmpty(parse)) {
@@ -973,7 +1022,7 @@
         String ageUnit2 = null;
         Integer age2 = null;
 
-        if (totalDays < 30) {
+        if (totalDays < 90) {
             // 灏忎簬 1 涓湀锛屾寜澶╄绠�
             ageUnit = "澶�";
             age = (int) totalDays;
@@ -981,7 +1030,7 @@
             ageMap.put("ageUnit", ageUnit);
             ageMap.put("age2", null);
             ageMap.put("ageUnit2", null);
-        } else if (totalMonths < 12) {
+        } else if (totalMonths < 36) {
             // 灏忎簬 1 骞达紝鎸夋湀 + 澶╄绠�
             ageUnit = "鏈�";
             age = (int) totalMonths;

--
Gitblit v1.9.3