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/IServiceExternalService.java | 5 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java | 17 +++++
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 151 +++++++++++++++++++++++++++++++++++++++++++++++++-
3 files changed, 170 insertions(+), 3 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
index b315345..a0b4db6 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceExternalController.java
@@ -230,6 +230,23 @@
}
/**
+ * 鏂板鍑洪櫌鐧昏淇℃伅
+ */
+ @ApiOperation("鏂板棰勫嚭闄㈢櫥璁颁俊鎭�")
+ @PostMapping("/addPreOutHospInfo")
+ public Map<String, Object> addPreOutHospInfo(@RequestBody Map dataMap) {
+ Boolean aBoolean = true;
+ try {
+ aBoolean = serviceExternalService.addPreOutHospInfo(dataMap);
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("serviceExternal---addPreOutHospInfo锛歿}", e.getMessage());
+ aBoolean = false;
+ }
+ return returnParam(aBoolean, dataMap);
+ }
+
+ /**
* 鏂板瀹屾垚鎺ヨ瘖淇℃伅
*/
@ApiOperation("鏂板瀹屾垚鎺ヨ瘖淇℃伅")
diff --git a/smartor/src/main/java/com/smartor/service/IServiceExternalService.java b/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
index 570b90c..ee69b4e 100644
--- a/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
+++ b/smartor/src/main/java/com/smartor/service/IServiceExternalService.java
@@ -78,6 +78,11 @@
public Boolean cancelOutHospInfo(@RequestBody Map dataMap);
/**
+ * 鏂板棰勫嚭闄㈢櫥璁颁俊鎭�
+ */
+ public Boolean addPreOutHospInfo(@RequestBody Map dataMap);
+
+ /**
* 鏂板瀹屾垚鎺ヨ瘖淇℃伅
*/
public Boolean addFinshJZInfo(@RequestBody Map dataMap);
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