From af4db2407e7c60bdd4b250ecaa58454d29bab6a2 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 05 二月 2026 15:45:12 +0800
Subject: [PATCH] 【市一】报错处理
---
smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java | 124 +++++++++++++++++++++++++++++++++--------
1 files changed, 100 insertions(+), 24 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 16b192f..aed0d9c 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -89,6 +89,8 @@
}
SysDept sysDept = new SysDept();
sysDept.setOrgid(externalDept.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysDept.setCampusid("1");
sysDept.setHisDeptId(externalDept.getKeShiID());
sysDept.setHisParentId(externalDept.getFuKeSID());
//閫氳繃his鐨勭埗绉戝ID鍘绘壘鍒扮瀹D,濉厖parentId
@@ -117,10 +119,10 @@
}
if (StringUtils.isNotEmpty(externalDept.getShiJianDM()) && externalDept.getShiJianDM().equals("1")) {
int i = sysDeptMapper.insertDept(sysDept);
- log.info("ServiceExternalServiceImpl---addDeptInfo鏄惁鏂板鎴愬姛锛歿}", i);
+ log.info("ServiceExternalServiceImpl---addDeptInfo01鏄惁鏂板鎴愬姛锛歿}", i);
} else {
int i = sysDeptMapper.updateDept(sysDept);
- log.info("ServiceExternalServiceImpl---addDeptInfo鏄惁淇敼鎴愬姛锛歿}", i);
+ log.info("ServiceExternalServiceImpl---addDeptInfo02鏄惁淇敼鎴愬姛锛歿}", i);
}
return true;
}
@@ -137,17 +139,20 @@
SysUser sysUser = new SysUser();
sysUser.setUserName(externalUserInfo.getYongHuDLM());
sysUser.setOrgid(externalUserInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysUser.setCampusid("1");
//鏍规嵁userName鍒ゆ柇涓�涓嬶紝鏄笉鏄箣鍓嶆湁鏂板
- SysUser sysUser1 = sysUserMapper.selectUserByUserName(externalUserInfo.getYongHuDLM());
-
+ SysUser sysUser1 = null;
+ List<SysUser> sysUserList = sysUserMapper.selectUserList(sysUser);
+ if (CollectionUtils.isNotEmpty(sysUserList)) {
+ sysUser1 = sysUserList.get(0);
+ if (sysUserList.size() > 1) sysUser1 = getUser(sysUserList);
+ }
sysUser.setGuid(externalUserInfo.getZuZhiJGID());
sysUser.setNickName(externalUserInfo.getYongHuXM());
sysUser.setUserType("");
sysUser.setDeptId(null);
sysUser.setTitle(null);
-
- BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
- sysUser.setPassword(passwordEncoder.encode(defaultPwd));
sysUser.setHisUserId(externalUserInfo.getYongHuID());
sysUser.setPhonenumber(externalUserInfo.getLianXiDH());
@@ -163,15 +168,38 @@
}
sysUser.setBirthday(externalUserInfo.getChuShengRQ());
if (ObjectUtils.isEmpty(sysUser1)) {
+ BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
+ sysUser.setPassword(passwordEncoder.encode(defaultPwd));
int i = sysUserMapper.insertUser(sysUser);
log.info("ServiceExternalServiceImpl---addDeptInfo鏄惁鏂板鎴愬姛锛歿}", i);
} else {
+ sysUser.setUserId(sysUser1.getUserId());
int i = sysUserMapper.updateUser(sysUser);
- log.info("ServiceExternalServiceImpl---addDeptInfo鏄惁淇敼鎴愬姛锛歿}", i);
+ log.info("ServiceExternalServiceImpl---addDeptInfo鏄惁淇敼鎴愬姛03锛歿}", i);
}
return true;
}
+
+ private SysUser getUser(List<SysUser> sysUserList) {
+ SysUser sysUser = null;
+ if (CollectionUtils.isNotEmpty(sysUserList) && sysUserList.size() > 1) {
+ // 鎸塩reate_time闄嶅簭鎺掑簭锛岃幏鍙栨渶鏂扮殑璁板綍
+ List<SysUser> sortedList = sysUserList.stream().sorted(Comparator.comparing(SysUser::getCreateTime).reversed()).collect(Collectors.toList());
+
+ // 绗竴鏉★紙鏈�鏂扮殑锛夎祴鍊肩粰sysUser1
+ sysUser = sortedList.get(0);
+
+ // 鑾峰彇闇�瑕佸垹闄ょ殑ID锛堜粠绗簩鏉″紑濮嬶級
+ List<Long> idsToDelete = sortedList.stream().skip(1).map(SysUser::getUserId).collect(Collectors.toList());
+ Long[] idArray = idsToDelete.toArray(new Long[0]);
+ // 鎵归噺鍒犻櫎鍏朵粬璁板綍
+ if (!idsToDelete.isEmpty()) {
+ sysUserMapper.deleteUserByIds(idArray);
+ }
+ }
+ return sysUser;
+ }
@Override
public Boolean addOrganInfo(Map dataMap) {
@@ -190,6 +218,8 @@
baseOrganization.setUpdateTime(externalOrganInfo.getUpdateTime());
baseOrganization.setUpdateBy(externalOrganInfo.getUpdateBy());
baseOrganization.setOrgid(externalOrganInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ baseOrganization.setCampusid("1");
if (StringUtils.isNotEmpty(externalOrganInfo.getShiJianDM()) && externalOrganInfo.getShiJianDM().equals("1")) {
int i = baseOrganizationMapper.insertBaseOrganization(baseOrganization);
log.info("ServiceExternalServiceImpl---addOrganInfo鏄惁鏂板鎴愬姛锛歿}", i);
@@ -470,6 +500,8 @@
if (CollectionUtils.isNotEmpty(patMedInhospList)) {
patMedInhosp1.setUpdateTime(new Date());
patMedInhosp1.setOrgid(ObjectUtils.isNotEmpty(BingRenXX) && ObjectUtils.isNotEmpty(BingRenXX.get("ZuZhiJGID")) ? BingRenXX.get("ZuZhiJGID").toString() : null);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInhosp1.setCampusid("1");
if (CollectionUtils.isNotEmpty(noLongTask) && noLongTask.contains(patMedInhosp1.getOrgid())) {
//涓嶉渶瑕侀暱鏈熶换鍔¢殢璁�
patMedInhosp1.setFuflag("1");
@@ -483,6 +515,8 @@
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);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInhosp1.setCampusid("1");
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);
@@ -626,6 +660,8 @@
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);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInhosp1.setCampusid("1");
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);
@@ -830,6 +866,8 @@
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);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInhosp1.setCampusid("1");
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);
@@ -891,6 +929,20 @@
patMedOuthosp.setOuthospno(externalInHospPatientInfo.getBingAnHao());
patMedOuthosp.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
List<PatMedOuthosp> patMedOuthosps = patMedOuthospMapper.selectPatMedOuthospList(patMedOuthosp);
+ for (PatMedOuthosp patMedOuthosp1 : patMedOuthosps) {
+ PatArchive pa = patArchiveMapper.selectPatArchiveByPatid(patMedOuthosp1.getPatid());
+ if (patArchive.getBirthdate() != null) {
+ Map<String, String> map = calculateAge(pa.getBirthdate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), LocalDate.now());
+ pa.setAge(ObjectUtils.isNotEmpty(map.get("age")) ? Long.valueOf(map.get("age")) : null);
+ pa.setAgeUnit(map.get("ageUnit"));
+ pa.setAge2(ObjectUtils.isNotEmpty(map.get("age2")) ? Long.valueOf(map.get("age2")) : null);
+ pa.setAgeUnit2(map.get("ageUnit2"));
+ patMedOuthosp1.setAge(pa.getAge() + pa.getAgeUnit() + pa.getAge2() + pa.getAgeUnit2());
+ patMedOuthosp1.setSex(patArchive.getSex());
+ patMedOuthosp1.setTelcode(patArchive.getTelcode());
+ patMedOuthosp1.setIdcardno(patArchive.getIdcardno());
+ }
+ }
patMedOuthosp.setPatid(patArchive.getId());
patMedOuthosp.setPatno(externalInHospPatientInfo.getBingAnHao());
@@ -901,6 +953,8 @@
patMedOuthosp.setDeptcode(externalJZInfo.getJiuZhenKSID());
patMedOuthosp.setAdmitdate(externalJZInfo.getJiuZhenRQ());
patMedOuthosp.setOrgid(FaSongJGID);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedOuthosp.setCampusid("1");
patMedOuthosp.setHospitalname(FaSongJGMC);
patMedOuthosp.setIdcardno(patArchive.getIdcardno());
@@ -943,22 +997,22 @@
i = patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp);
}
- //鍏堥�氳繃韬唤璇佸拰绉戝鏌ヨ璇ユ偅鑰呮槸鍚︽湁闇�瑕侀殢璁跨殑(鏅畞鎻愬嚭鏉ョ殑)
- if (patMedOuthosp.getOrgid().equals("47255004333112711A1001") && StringUtils.isNotEmpty(patMedOuthosp.getIdcardno()) && StringUtils.isNotEmpty(patMedOuthosp.getDeptcode())) {
- ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
- serviceSubtaskVO.setSfzh(patMedOuthosp.getIdcardno());
- serviceSubtaskVO.setDeptcode(patMedOuthosp.getDeptcode());
- serviceSubtaskVO.setSendstate(2L);
- List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
- if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
- for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
- serviceSubtask.setSendstate(6L);
- serviceSubtask.setRemark("鎮h�呭凡缁忓洖鏉ュ璇�");
- serviceSubtask.setUpdateTime(new Date());
- serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
- }
- }
- }
+// //鍏堥�氳繃韬唤璇佸拰绉戝鏌ヨ璇ユ偅鑰呮槸鍚︽湁闇�瑕侀殢璁跨殑(鏅畞鎻愬嚭鏉ョ殑)
+// if (patMedOuthosp.getOrgid().equals("47255004333112711A1001") && StringUtils.isNotEmpty(patMedOuthosp.getIdcardno()) && StringUtils.isNotEmpty(patMedOuthosp.getDeptcode())) {
+// ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
+// serviceSubtaskVO.setSfzh(patMedOuthosp.getIdcardno());
+// serviceSubtaskVO.setDeptcode(patMedOuthosp.getDeptcode());
+// serviceSubtaskVO.setSendstate(2L);
+// List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+// if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
+// for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+// serviceSubtask.setSendstate(6L);
+// serviceSubtask.setRemark("鎮h�呭凡缁忓洖鏉ュ璇�");
+// serviceSubtask.setUpdateTime(new Date());
+// serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+// }
+// }
+// }
if (i > 0) {
return true;
@@ -1024,6 +1078,8 @@
icd10.setIcdcode(externalDiseaseInfo.getIcD10());
icd10.setDelFlag("0");
icd10.setOrgid(FaSongJGID);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ icd10.setCampusid("1");
//閫氳繃icdCode鏌ヨ涓�涓嬶紝鏄惁瀛樺湪
List<Icd10> icd10s = icd10Mapper.selectIcd10List(icd10);
icd10.setHisIcdid(externalDiseaseInfo.getJiBingID());
@@ -1050,6 +1106,8 @@
ExternalWardArea externalWardArea = BeanUtil.mapToBean(bqxx, ExternalWardArea.class, true);
SysDept sysDept = new SysDept();
sysDept.setOrgid(externalWardArea.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ sysDept.setCampusid("1");
sysDept.setHisDeptId(externalWardArea.getBingQuID());
sysDept.setDeptName(externalWardArea.getBingQuMC());
@@ -1157,6 +1215,8 @@
patMedOperation.setPatno(externalInHospPatientInfo.getBingRenID());
patMedOperation.setPatname(externalInHospPatientInfo.getXingMing());
patMedOperation.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedOperation.setCampusid("1");
patMedOperation.setSerialnum(externalInHospPatientInfo.getJiuZhenYWID());
patMedOperation.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedOperation.setHospitalname(externalInHospPatientInfo.getZuZhiJGMC());
@@ -1220,6 +1280,8 @@
patMedOperationItem.setOpposition(externalOperationDetail.getShouShuBW());
patMedOperationItem.setDelFlag("0");
patMedOperationItem.setOrgid(patMedOperation.getOrgid());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedOperationItem.setCampusid("1");
if (externalOperationDetail.getZhuShouSBZ().equals("1") && addMianTableFalg == true) {
patMedOperation.setOpcode(externalOperationDetail.getShouShuMCID());
patMedOperation.setOpdesc(externalOperationDetail.getShouShuMC());
@@ -1254,6 +1316,8 @@
if (StringUtils.isEmpty(externalInHospPatientInfo.getZhengJianHM()))
patArchive.setIdcardno(externalInHospPatientInfo.getJiuZhenKH());
patArchive.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patArchive.setCampusid("1");
List<PatArchive> patArchives = null;
if (ObjectUtils.isNotEmpty(patArchive.getIdcardno()))
patArchives = patArchiveMapper.selectPatArchiveList(patArchive);
@@ -1316,6 +1380,8 @@
patArchivecontact.setPatid(patArchive.getId());
patArchivecontact.setContactname(external.getLianXiRXM());
patArchivecontact.setOrgid(patArchive.getOrgid());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patArchivecontact.setCampusid("1");
List<PatArchivecontact> patArchivecontacts = patArchivecontactMapper.selectPatArchivecontactList(patArchivecontact);
patArchivecontact.setContactway(external.getLianXiRDH());
patArchivecontact.setRelation(external.getGuanXiMC());
@@ -1351,6 +1417,8 @@
//杩欓噷鏄簥浣嶅悕绉拌繕鏄簥浣嶇紪鍙凤紵锛燂紵锛�
patMedInhosp.setBedNo(externalInHospPatientInfo.getDangQianCWMC());
patMedInhosp.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInhosp.setCampusid("1");
patMedInhosp.setHospitaldistrictid(externalInHospPatientInfo.getDangQianBQID());
patMedInhosp.setGuid(externalInHospPatientInfo.getZuZhiJGID());
patMedInhosp.setInhospstate("0");
@@ -1467,6 +1535,8 @@
patMedInspection.setProjecttype(0);
}
patMedInspection.setOrgid(externalInHospPatientInfo.getZuZhiJGID());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInspection.setCampusid("1");
patMedInspection.setInhospno(externalInHospPatientInfo.getBingAnHao());
patMedInspection.setPatidHis(externalInHospPatientInfo.getBingRenID());
patMedInspection.setPatname(externalInHospPatientInfo.getXingMing());
@@ -1549,6 +1619,8 @@
if (CollectionUtils.isNotEmpty(patMedInspections)) {
patMedInspection.setUpdateDate(new Date());
patMedInspection.setOrgid(ObjectUtils.isNotEmpty(xiaoXiTou) && ObjectUtils.isNotEmpty(xiaoXiTou.get("FaSongJGID")) ? xiaoXiTou.get("FaSongJGID").toString() : null);
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInspection.setCampusid("1");
// 鏇存柊鎿嶄綔
int i = patMedInspectionMapper.updatePatMedInspection(patMedInspection);
if (i != 1) return false;
@@ -1574,6 +1646,8 @@
PatMedInspection patMedInspection = new PatMedInspection();
PatMedInspectionItem patMedInspectionItem = new PatMedInspectionItem();
patMedInspection.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInspection.setCampusid("1");
patMedInspection.setInhospno(BingRenXX.get("BingAnHao").toString());
patMedInspection.setPatidHis(BingRenXX.get("BingRenID").toString());
patMedInspection.setPatname(BingRenXX.get("XingMing").toString());
@@ -1589,6 +1663,8 @@
}
//妫�鏌ユ楠屾姤鍛婃暟鎹鐞�
patMedInspectionItem.setOrgid(BingRenXX.get("ZuZhiJGID").toString());
+ //涓芥按鏃犻櫌鍖猴紝榛樿鍊兼槸 1
+ patMedInspectionItem.setCampusid("1");
List<PatMedInspectionItem> patMedInspectionItems = patMedInspectionItemMapper.selectPatMedInspectionItemList(patMedInspectionItem);
if (ObjectUtils.isNotEmpty(JianChaBG)) {
patMedInspectionItem.setInspectionName(JianChaBG.get("JianChaHao").toString());
--
Gitblit v1.9.3