From 5fe107b01e611e03034efbb76b97c3faae539f6b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 25 四月 2025 11:03:01 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 151 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 148 insertions(+), 3 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 4fe3805..43cf52a 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java @@ -451,9 +451,8 @@ }).collect(Collectors.toList()); patMedInhosp1.setLeaveicd10code(hospPatientDiagnoseInfos2.get(0).getIcd10()); patMedInhosp1.setLeavediagname(hospPatientDiagnoseInfos2.get(0).getZhenDuanMC()); - patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() + "," + hospPatientDiagnoseInfos2.get(0).getZhenDuanMC() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC()); - //patMedInhosp1.setLeavediagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC()); - //patMedInhosp1.setDiagname(StringUtils.isNotEmpty(patMedInhosp1.getLeavediagname()) ? patMedInhosp1.getLeavediagname() : hospPatientDiagnoseInfos2.get(0).getZhenDuanMC()); + //patMedInhosp1.setDiagname(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()); } patMedInhosp1.setInhospstate("1"); @@ -536,6 +535,149 @@ } } + if (i != 1) return false; + } + return true; + } + + @Override + public Boolean addPreOutHospInfo(Map dataMap) { + log.error("ServiceExternalServiceImpl---addPreOutHospInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap); + Map yeWuXX = (Map) dataMap.get("YeWuXX"); + 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; + List<ExternalInHospPatientAddrInfo> epai2 = null; + if (CollectionUtils.isNotEmpty(epai)) { + epai2 = epai.stream().map(map -> { + ExternalInHospPatientAddrInfo info = new ExternalInHospPatientAddrInfo(); + info.setDiZhiLX((String) map.get("DiZhiLX")); // 鍋囪瀛楁绫诲瀷鏄� Integer + info.setDiZhiXX((String) map.get("DiZhiXX")); + info.setShengFenDM((String) map.get("ShengFenDM")); + info.setShengFenMC((String) map.get("ShengFenMC")); + info.setShiDiQDM((String) map.get("ShiDiQDM")); + info.setShiDiQMC((String) map.get("ShiDiQMC")); + info.setXianQuDM((String) map.get("XianQuDM")); + info.setXianQuMC((String) map.get("XianQuMC")); + info.setXiangZhenDM((String) map.get("XiangZhenDM")); + info.setXiangZhenMC((String) map.get("XiangZhenMC")); + info.setCunJiDM((String) map.get("CunJiDM")); + info.setQiTaXX((String) map.get("QiTaXX")); + info.setYouBian((String) map.get("YouBian")); + return info; + }).collect(Collectors.toList()); + } + List<ExternalInHospPatientLiaisonInfo> epli2 = null; + if (CollectionUtils.isNotEmpty(epli)) { + epli2 = epli.stream().map(map -> { + ExternalInHospPatientLiaisonInfo info = new ExternalInHospPatientLiaisonInfo(); + info.setLianXiRXM((String) map.get("LianXiRXM")); + info.setLianXiRDH((String) map.get("LianXiRDH")); + info.setGuanXiDM((String) map.get("GuanXiDM")); + info.setGuanXiMC((String) map.get("GuanXiMC")); + return info; + }).collect(Collectors.toList()); + } + if (CollectionUtils.isNotEmpty(epai)) externalInHospPatientAddrInfo = epai2.get(0); + if (CollectionUtils.isNotEmpty(epli)) externalInHospPatientLiaisonInfo = epli2.get(0); + //鏂板鎮h�呭熀鏈俊鎭柊澧炴垨淇敼 + PatArchive patArchive = addPatArchive(externalInHospPatientInfo, externalInHospPatientAddrInfo, externalInHospPatientLiaisonInfo); + + PatMedInhosp patMedInhosp = new PatMedInhosp(); + patMedInhosp.setInhospno(externalInHospPatientInfo.getBingAnHao()); + patMedInhosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID()); + List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); + for (PatMedInhosp patMedInhosp1 : patMedInhospList) { + String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); + patMedInhosp1.setTagname(tagname); + } + 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); + try { + patMedInhosp1.setEndtime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(JiuZhenXX.get("YuChuYSJ").toString())); + } catch (ParseException e) { + e.printStackTrace(); + } + 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.setTelcode(patArchive.getTelcode()); + patMedInhosp1.setLeavehospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID()); + patMedInhosp1.setLeavehospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC()); + patMedInhosp1.setLeaveldeptname(externalInHospPatientInfo.getDangQianKSMC()); + patMedInhosp1.setDeptname(externalInHospPatientInfo.getDangQianKSMC()); + patMedInhosp1.setLeaveldeptcode(externalInHospPatientInfo.getDangQianKSID()); + patMedInhosp1.setDeptcode(externalInHospPatientInfo.getDangQianKSID()); + + 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.setFuadvice(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")); + info.setIcd10((String) map.get("Icd10")); + return info; + }).collect(Collectors.toList()); + patMedInhosp1.setLeaveicd10code(hospPatientDiagnoseInfos2.get(0).getIcd10()); + patMedInhosp1.setLeavediagname(hospPatientDiagnoseInfos2.get(0).getZhenDuanMC()); + //patMedInhosp1.setDiagname(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()); + } + + patMedInhosp1.setInhospstate("3"); + if (CollectionUtils.isNotEmpty(patMedInhospList)) { + patMedInhosp1.setUpdateTime(new Date()); + 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 { + 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("JiuZhenYWID")) ? BingRenXX.get("JiuZhenYWID").toString() : null); + } + patMedInhosp1.setPatid(patArchive.getId()); + patMedInhosp1.setPatname(patArchive.getName()); + + patMedInhosp1.setCreateTime(new Date()); + int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1); if (i != 1) return false; } return true; @@ -1129,6 +1271,9 @@ case "JZ_ZY_QuXiaoCY": log.error("鍙栨秷鍑洪櫌鍏ュ弬绫诲瀷涓猴細{}", type); return cancelOutHospInfo(dataMap); + case "JZ_ZY_YuChuYuan": + log.error("鎮h�呴鍑洪櫌鍏ュ弬绫诲瀷涓猴細{}", type); + return addPreOutHospInfo(dataMap); case "JG_ZZ_BingQu": log.error("鐥呭尯淇℃伅鍏ュ弬绫诲瀷涓猴細{}", type); return addWardAreaInfo(dataMap); -- Gitblit v1.9.3