From 62dbd8169d8cad03e7a06f9b53b0a1928caf732f Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 06 三月 2025 18:13:45 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 189 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 161 insertions(+), 28 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 09fcb1a..f653469 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java @@ -49,7 +49,9 @@ @Autowired private PatMedOperationItemMapper patMedOperationItemMapper; @Autowired - private Icd10AssociationMapper icd10AssociationMapper; + private Icd10Mapper icd10Mapper; + @Autowired + private PatMedOuthospMapper patMedOuthospMapper; @Value("${defaultPwd}") private String defaultPwd; @@ -263,7 +265,41 @@ 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>>) yeWuXX.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 = 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 = 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�呭熀鏈俊鎭柊澧炴垨淇敼 + addPatArchive(externalInHospPatientInfo, externalInHospPatientAddrInfo, externalInHospPatientLiaisonInfo); PatMedInhosp patMedInhosp = new PatMedInhosp(); patMedInhosp.setInhospno(externalInHospPatientInfo.getZhuYuanHao()); @@ -295,7 +331,7 @@ }).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"); int i = patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); if (i != 1) return false; } @@ -326,31 +362,96 @@ @Override public Boolean addFinshJZInfo(Map dataMap) { - //杩欎釜鍏堢瓑绛� + log.error("ServiceExternalServiceImpl---addFinshJZInfo鐨勬柊澧炵殑鍊间负锛歿}", dataMap); + Map yeWuXX = (Map) dataMap.get("YeWuXX"); + 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"); + ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true); + 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()); - return null; + List<ExternalWZInfo> ExternalWZInfoList = externalWZInfos.stream().map(map -> { + ExternalWZInfo info = new ExternalWZInfo(); + info.setWenZhenLXMC((String) map.get("WenZhenLXMC")); + info.setNeiRong((String) map.get("NeiRong")); + return info; + }).collect(Collectors.toList()); + + PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null); + + PatMedOuthosp patMedOuthosp = new PatMedOuthosp(); + patMedOuthosp.setOuthospno(externalInHospPatientInfo.getBingAnHao()); + patMedOuthosp.setSerialnum(externalInHospPatientInfo.getBingAnHao()); + patMedOuthosp.setPatid(patArchive.getId()); + patMedOuthosp.setPatname(externalInHospPatientInfo.getXingMing()); + patMedOuthosp.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC()); + patMedOuthosp.setHospitalcode(externalInHospPatientInfo.getZuZhiJGID()); + patMedOuthosp.setDeptname(externalJZInfo.getJiuZhenKSMC()); + patMedOuthosp.setDeptcode(externalJZInfo.getJiuZhenKSID()); + patMedOuthosp.setAdmitdate(externalJZInfo.getJiuZhenRQ()); + + Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou"); + String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString(); + patMedOuthosp.setOrgid(FaSongJGID); + + for (ExternalDiagnosisInfo externalDiagnosisInfo : externalDiagnosisInfoList) { + if (externalDiagnosisInfo.getZhenDuanLBMC().equals("涓昏瘖鏂�")) { + patMedOuthosp.setDiagname(externalDiagnosisInfo.getZhenDuanMC()); + patMedOuthosp.setIcd10code(externalDiagnosisInfo.getZhenDuanID()); + patMedOuthosp.setDrcode(externalDiagnosisInfo.getZhenDuanYSID()); + patMedOuthosp.setDrname(externalDiagnosisInfo.getZhenDuanYSXM()); + } + } + for (ExternalWZInfo externalWZInfo : ExternalWZInfoList) { + if (externalWZInfo.getWenZhenLXMC().equals("鐜扮梾鍙�")) { + patMedOuthosp.setHpi(externalWZInfo.getNeiRong()); + } + if (externalWZInfo.getWenZhenLXMC().equals("涓昏瘔")) { + patMedOuthosp.setMainsuit(externalWZInfo.getNeiRong()); + } + } + int i = patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp); + if (i > 0) { + return true; + } + + return false; } @Override 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("JiBing"); + Map<String, Object> JiBing = (Map<String, Object>) yeWuXX.get("JiBingMLXX"); ExternalDiseaseInfo externalDiseaseInfo = BeanUtil.mapToBean(JiBing, ExternalDiseaseInfo.class, true); - Icd10Association icd10Association = new Icd10Association(); - icd10Association.setIcd10code(externalDiseaseInfo.getJiBingID()); - icd10Association.setIcd10name(externalDiseaseInfo.getJiBingMC()); - icd10Association.setGuid(externalDiseaseInfo.getZuZhiJGID()); - icd10Association.setOrgid(externalDiseaseInfo.getZuZhiJGID()); - icd10Association.setPid(externalDiseaseInfo.getFUJIBID()); - icd10Association.setIcd10AssortCode(externalDiseaseInfo.getJiBingFLDM()); - icd10Association.setIcd10AssortName(externalDiseaseInfo.getJiBingFLMC()); - icd10Association.setChineseMedicineDiagnoseSign(externalDiseaseInfo.getZhongYiZDBZ()); - icd10Association.setChineseMedicineDiagnoseAssortCode(externalDiseaseInfo.getZhongYiZDFLDM()); - icd10Association.setChineseMedicineDiagnoseAssortName(externalDiseaseInfo.getZhongYiZDFLMC()); - icd10Association.setOutpatientUseAssort(externalDiseaseInfo.getMenZhenSYBZ()); - icd10Association.setInpatientUseAssort(externalDiseaseInfo.getZhuYuanSYBZ()); - icd10AssociationMapper.insertIcd10Association(icd10Association); + Map XiaoXiTou = (Map) dataMap.get("XiaoXiTou"); + String FaSongJGID = XiaoXiTou.get("FaSongJGID").toString(); + Icd10 icd10 = new Icd10(); + icd10.setIcdcode(externalDiseaseInfo.getIcD10()); + 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); return true; } @@ -395,6 +496,9 @@ Map<String, Object> BingRenXX = (Map<String, Object>) yeWuXX.get("BingRenXX"); ExternalInHospPatientInfo externalInHospPatientInfo = BeanUtil.mapToBean(BingRenXX, ExternalInHospPatientInfo.class, true); + PatArchive patArchive = addPatArchive(externalInHospPatientInfo, null, null); + + //鎵嬫湳淇℃伅鏂板 Map<String, Object> ssxx = (Map<String, Object>) yeWuXX.get("ShouShuSQ"); //鎵嬫湳鏇存柊 @@ -409,7 +513,7 @@ else if (ObjectUtils.isNotEmpty(sscx)) externalOperationInfo = BeanUtil.mapToBean(sscx, ExternalOperationInfo.class, true); PatMedOperation patMedOperation = new PatMedOperation(); - patMedOperation.setPatid(null); + patMedOperation.setPatid(patArchive.getId()); patMedOperation.setPatcode(externalInHospPatientInfo.getBingRenID()); patMedOperation.setPaname(externalInHospPatientInfo.getXingMing()); // patMedOperation.setOpreqid(externalOperationInfo.getShenQingDID()); @@ -418,8 +522,8 @@ List<PatMedOperation> patMedOperations = patMedOperationMapper.selectPatMedOperationList(patMedOperation); patMedOperation.setOpsstatus(null); - patMedOperation.setOperationcode(externalOperationInfo.getShouShuLBDM()); - patMedOperation.setOperationname(externalOperationInfo.getShouShuLBMC()); + patMedOperation.setOptypecode(externalOperationInfo.getShouShuLBDM()); + patMedOperation.setOptypename(externalOperationInfo.getShouShuLBMC()); patMedOperation.setOperatortime(externalOperationInfo.getYaoQiuSJ()); patMedOperation.setOpreqtime(externalOperationInfo.getShenQingSJ()); patMedOperation.setReqdoccode(externalOperationInfo.getShenQingYSID()); @@ -470,6 +574,12 @@ if (CollectionUtils.isNotEmpty(patMedOperations)) { Long id = patMedOperations.get(0).getId(); patMedOperation.setId(id); + patMedOperation.setCheckFlag(patMedOperations.get(0).getCheckFlag()); + //濡傛灉鎵嬫湳鎾ら攢锛岀洿鎺ュ垹闄よ鏉℃墜鏈俊鎭� + if (ObjectUtils.isNotEmpty(sscx)) { + patMedOperation.setDelFlag("1"); + //鍚屾椂鍘绘煡璇紝鏄惁鍦╯ubtask涓敓鎴愪换鍔★紝濡傛灉鐢熸垚鍑哄緱绔嬮┈鍒犻櫎 + } patMedOperationMapper.updatePatMedOperation(patMedOperation); } else patMedOperationMapper.insertPatMedOperation(patMedOperation); log.error("-----patMedOperation鐨勪富閿甶d涓猴細{}", patMedOperation.getId()); @@ -477,6 +587,8 @@ if (ObjectUtils.isNotEmpty(ssxx)) { Map<String, Object> ShouShuMXList = (Map<String, Object>) ssxx.get("ShouShuMXList"); List<ExternalOperationDetail> externalOperationDetails = BeanUtil.mapToBean(ShouShuMXList, List.class, true); + //addMianTableFalg鏄惁闇�瑕佸皢涓绘墜鏈殑淇℃伅鏀惧埌PatMedOperation琛ㄤ腑锛堝彧鏈夌涓�涓富鎵嬫湳淇℃伅闇�瑕佹斁锛屽悗闈㈢殑閮戒笉闇�瑕佹斁浜嗭紝涔熷氨鏄锛岀涓�涓斁瀹屽悗锛屽氨瑕佹妸杩欎釜flag鏀规垚false锛� + Boolean addMianTableFalg = true; for (ExternalOperationDetail externalOperationDetail : externalOperationDetails) { PatMedOperationItem patMedOperationItem = new PatMedOperationItem(); patMedOperationItem.setOpid(patMedOperation.getId()); @@ -490,6 +602,14 @@ patMedOperationItem.setOpposition(externalOperationDetail.getShouShuBW()); patMedOperationItem.setDelFlag("0"); patMedOperationItem.setOrgid(patMedOperation.getOrgid()); + if (externalOperationDetail.getZhuShouSBZ().equals("1") && addMianTableFalg == true) { + patMedOperation.setOpcode(externalOperationDetail.getShouShuMCID()); + patMedOperation.setOpdesc(externalOperationDetail.getShouShuMC()); +// patMedOperation.setOpid(externalOperationDetail.getShouShuJBDM()); + patMedOperationMapper.updatePatMedOperation(patMedOperation); + addMianTableFalg = false; + } + patMedOperationItemMapper.insertPatMedOperationItem(patMedOperationItem); } } @@ -500,8 +620,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"); @@ -511,26 +633,35 @@ patArchive.setNation(externalInHospPatientInfo.getMinZuMC()); patArchive.setNativePlace(externalInHospPatientInfo.getGuoJiMC()); if (ObjectUtils.isNotEmpty(externalInHospPatientAddrInfo)) { - patArchive.setPlaceOfResidence(externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX()); - patArchive.setBirthplace(externalInHospPatientAddrInfo.getShengFenMC() + externalInHospPatientAddrInfo.getShiDiQMC() + externalInHospPatientAddrInfo.getXianQuMC() + externalInHospPatientAddrInfo.getXiangZhenMC() + externalInHospPatientAddrInfo.getCunJiMC() + externalInHospPatientAddrInfo.getQiTaXX()); + 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()); patArchive.setAgeUnit(externalInHospPatientInfo.getNianLingDW()); patArchive.setTelcode(externalInHospPatientInfo.getLianXiDH()); + if (StringUtils.isEmpty(externalInHospPatientInfo.getLianXiDH())) + 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); +// orgid = orgid + "," + externalInHospPatientInfo.getZuZhiJGID(); +// patArchive.setOrgid(orgid); patArchive.setId(patArchive1.getId()); patArchiveMapper.updatePatArchive(patArchive); return patArchive; @@ -564,6 +695,8 @@ patMedInhosp.setLeavehospitaldistrictcode(externalInHospPatientInfo.getDangQianBQID()); patMedInhosp.setHospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC()); patMedInhosp.setLeavehospitaldistrictname(externalInHospPatientInfo.getDangQianBQMC()); + patMedInhosp.setTelcode(patArchive.getTelcode()); + patMedInhosp.setDrname(""); } if (ObjectUtils.isNotEmpty(externalInHospPatientDiagnoseInfo)) { patMedInhosp.setIcd10code(StringUtils.isNotEmpty(patMedInhosp.getIcd10code()) ? patMedInhosp.getIcd10code() + "," + externalInHospPatientDiagnoseInfo.getZhenDuanID() : externalInHospPatientDiagnoseInfo.getZhenDuanID()); @@ -574,7 +707,7 @@ patMedInhosp.setPatid(patArchive.getId()); patMedInhosp.setPatno(patArchive.getPatientno()); patMedInhosp.setPatname(patArchive.getName()); - patMedInhosp.setDrname(""); + patMedInhosp.setSchemestatus(1L); patMedInhosp.setCreateTime(new Date()); } -- Gitblit v1.9.3