From 30b4fe30d36b48a103b281aff631fc45af849636 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 18 三月 2025 16:58:59 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 153 +++++++++++++++++++++++++++++++++++++--------------
1 files changed, 111 insertions(+), 42 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 c20ac7b..1557d47 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -265,40 +265,100 @@
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");
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.getZhuYuanHao());
List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
- if (CollectionUtils.isNotEmpty(patMedInhospList)) {
- Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
- PatMedInhosp patMedInhosp1 = patMedInhospList.get(0);
- patMedInhosp1.setSchemestatus(2L);
- try {
- patMedInhosp1.setEndtime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(JiuZhenXX.get("ChuYuanSJ").toString()));
- } catch (ParseException e) {
- e.printStackTrace();
- }
- patMedInhosp1.setOperator(JiuZhenXX.get("CaoZuoRXM").toString());
- patMedInhosp1.setOperatorId(JiuZhenXX.get("CaoZuoRID").toString());
- patMedInhosp1.setUpdateTime(new Date());
- patMedInhosp1.setUpdateTime(new Date());
- patMedInhosp1.setLeavehospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID());
- patMedInhosp1.setLeavehospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC());
- patMedInhosp1.setLeaveldeptname(externalInHospPatientInfo.getDangQianKSMC());
- patMedInhosp1.setLeaveldeptcode(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.setInhospstate("1");
+ Map<String, Object> JiuZhenXX = (Map<String, Object>) yeWuXX.get("JiuZhenXX");
+ 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("ChuYuanSJ").toString()));
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+ patMedInhosp1.setOperator(JiuZhenXX.get("CaoZuoRXM").toString());
+ patMedInhosp1.setOperatorId(JiuZhenXX.get("CaoZuoRID").toString());
+ 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());
+ 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());
+ patMedInhosp1.setInhospstate("1");
+ if (CollectionUtils.isNotEmpty(patMedInhospList)) {
+ patMedInhosp1.setUpdateTime(new Date());
+ patMedInhosp1.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
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());
+ patMedInhosp1.setPatid(patArchive.getId());
+ patMedInhosp1.setPatname(patArchive.getName());
+ patMedInhosp1.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
+ patMedInhosp1.setPatno(BingRenXX.get("BingRenID").toString());
+ patMedInhosp1.setInhospno(BingRenXX.get("ZhuYuanHao").toString());
+ patMedInhosp1.setSerialnum(BingRenXX.get("BingAnHao").toString());
+ patMedInhosp1.setCreateTime(new Date());
+ int i = patMedInhospMapper.insertPatMedInhosp(patMedInhosp1);
if (i != 1) return false;
}
return true;
@@ -377,6 +437,7 @@
patMedOuthosp.setIcd10code(externalDiagnosisInfo.getZhenDuanID());
patMedOuthosp.setDrcode(externalDiagnosisInfo.getZhenDuanYSID());
patMedOuthosp.setDrname(externalDiagnosisInfo.getZhenDuanYSXM());
+ patMedOuthosp.setIcd10code(externalDiagnosisInfo.getIcd10());
}
}
for (ExternalWZInfo externalWZInfo : ExternalWZInfoList) {
@@ -405,19 +466,23 @@
String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString();
Icd10 icd10 = new Icd10();
icd10.setIcdcode(externalDiseaseInfo.getIcD10());
+ icd10.setDelFlag("0");
+ icd10.setOrgid(FaSongJGID);
+ //閫氳繃icdCode鏌ヨ涓�涓嬶紝鏄惁瀛樺湪
+ List<Icd10> icd10s = icd10Mapper.selectIcd10List(icd10);
icd10.setHisIcdid(externalDiseaseInfo.getJiBingID());
icd10.setIcdname(externalDiseaseInfo.getJiBingMC());
icd10.setGuid(externalDiseaseInfo.getZuZhiJGID());
icd10.setLastflag(externalDiseaseInfo.getMOJIBZ());
icd10.setChimedflag("" + externalDiseaseInfo.getZhongYiZDBZ());
- icd10.setOrgid(FaSongJGID);
-// icd10Association.setIcd10AssortName(externalDiseaseInfo.getJiBingFLMC());
-// icd10Association.setChineseMedicineDiagnoseSign(externalDiseaseInfo.getZhongYiZDBZ());
-// icd10Association.setChineseMedicineDiagnoseAssortCode(externalDiseaseInfo.getZhongYiZDFLDM());
-// icd10Association.setChineseMedicineDiagnoseAssortName(externalDiseaseInfo.getZhongYiZDFLMC());
-// icd10Association.setOutpatientUseAssort(externalDiseaseInfo.getMenZhenSYBZ());
-// icd10Association.setInpatientUseAssort(externalDiseaseInfo.getZhuYuanSYBZ());
- icd10Mapper.insertIcd10(icd10);
+ if (CollectionUtils.isNotEmpty(icd10s)) {
+ icd10.setUpdateTime(new Date());
+ icd10.setIcdid(icd10s.get(0).getIcdid());
+ icd10Mapper.updateIcd10(icd10);
+ } else {
+ icd10.setCreateTime(new Date());
+ icd10Mapper.insertIcd10(icd10);
+ }
return true;
}
@@ -586,8 +651,10 @@
private PatArchive addPatArchive(ExternalInHospPatientInfo externalInHospPatientInfo, ExternalInHospPatientAddrInfo externalInHospPatientAddrInfo, ExternalInHospPatientLiaisonInfo externalInHospPatientLiaisonInfo) {
PatArchive patArchive = new PatArchive();
patArchive.setIdcardno(externalInHospPatientInfo.getZhengJianHM());
+ patArchive.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
List<PatArchive> patArchives = patArchiveMapper.selectPatArchiveList(patArchive);
patArchive.setPatientno(externalInHospPatientInfo.getJiuZhenKH());
+ patArchive.setBirthdate(externalInHospPatientInfo.getChuShengRQ());
patArchive.setPatidHis(externalInHospPatientInfo.getBingRenID());
patArchive.setSourcefrom(1);
patArchive.setPattype("2");
@@ -597,10 +664,14 @@
patArchive.setNation(externalInHospPatientInfo.getMinZuMC());
patArchive.setNativePlace(externalInHospPatientInfo.getGuoJiMC());
if (ObjectUtils.isNotEmpty(externalInHospPatientAddrInfo)) {
- String por = externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX();
- patArchive.setPlaceOfResidence(por.replace(null, ""));
- String bp = externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX();
- patArchive.setBirthplace(bp.replace(null, ""));
+ String por = null;
+ if (StringUtils.isNotEmpty(externalInHospPatientAddrInfo.getDiZhiXX())) {
+ por = externalInHospPatientAddrInfo.getDiZhiXX();
+ } else {
+ por = externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX();
+ }
+ patArchive.setPlaceOfResidence(por.replace("null", ""));
+ patArchive.setBirthplace(por.replace("null", ""));
}
patArchive.setBirthdate(externalInHospPatientInfo.getChuShengRQ());
patArchive.setAge(externalInHospPatientInfo.getNianLing());
@@ -610,18 +681,16 @@
patArchive.setTelcode(externalInHospPatientInfo.getLianXiRDH());
patArchive.setRelativetelcode(externalInHospPatientInfo.getLianXiRDH());
patArchive.setGuid(externalInHospPatientInfo.getZuZhiJGID());
- patArchive.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
if (ObjectUtils.isNotEmpty(externalInHospPatientLiaisonInfo))
patArchive.setRelativetelcode(externalInHospPatientLiaisonInfo.getLianXiRDH());
patArchive.setInhospno(externalInHospPatientInfo.getZhuYuanHao());
patArchive.setCreateTime(new Date());
+ patArchive.setIdcardtype(externalInHospPatientInfo.getZhengJianLXMC());
if (CollectionUtils.isNotEmpty(patArchives)) {
//濡傛灉涓嶄负绌猴紝鐩存帴灏嗘煡璇㈠嚭鏉ョ殑瀵硅薄杩斿洖
PatArchive patArchive1 = patArchives.get(0);
String orgid = patArchive1.getOrgid();
if (StringUtils.isNotEmpty(orgid)) {
- orgid = orgid + "," + externalInHospPatientInfo.getZuZhiJGID();
- patArchive.setOrgid(orgid);
patArchive.setId(patArchive1.getId());
patArchiveMapper.updatePatArchive(patArchive);
return patArchive;
--
Gitblit v1.9.3