From 07e3dfe61e3bbe7bc02e45e96247d4d922dca380 Mon Sep 17 00:00:00 2001 From: sinake <sinake1@qq.com> Date: 星期一, 29 九月 2025 13:56:19 +0800 Subject: [PATCH] 新增随访数据查询 --- ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java | 118 +++++++++++++++++++++++++++-------------------------------- 1 files changed, 54 insertions(+), 64 deletions(-) diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java index d5101e7..7612fae 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java @@ -3,10 +3,8 @@ import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.SysUserDept; -import com.ruoyi.common.core.domain.entity.SysUserRole; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.quartz.mapper.CollectHISMapper; -import com.ruoyi.quartz.mapper.UtilsMapper; import com.ruoyi.quartz.service.ICollectHISService; import com.smartor.domain.*; import com.smartor.mapper.*; @@ -22,6 +20,7 @@ import java.time.ZoneId; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; @Slf4j @Service @@ -170,23 +169,28 @@ List<PatMedInhosp> patMedInhospList = chMapper.selectPatMedInhospList(patMedInhosp); log.info("鍙悓姝ュ嚭鍏ラ櫌鏁伴噺" + patMedInhospList.size()); for (PatMedInhosp pm : patMedInhospList) { + List<PatArchive> patArchives1=new ArrayList<>(); + try { //鎮h�呭熀鏈俊鎭� - PatArchive patArchive = new PatArchive(); - patArchive.setPatientno(pm.getPatno()); - List<PatArchive> patArchives = chMapper.selectPatArchiveList(patArchive); - if (patArchives.size() > 0) { - PatArchive pa1 = new PatArchive(); - pa1.setPatientno(pm.getPatno()); - List<PatArchive> patArchives1 = patArchiveMapper.selectPatArchiveList(pa1); - if (CollectionUtils.isNotEmpty(patArchives1)) { - patArchives.get(0).setId(patArchives1.get(0).getId()); - patArchives.get(0).setUpdateTime(new Date()); - count += patArchiveMapper.updatePatArchive(patArchives.get(0)); - } else { - patArchives.get(0).setCreateTime(new Date()); - count += patArchiveMapper.insertPatArchiveSingle(patArchives.get(0)); - + if(ObjectUtils.isNotEmpty(pm.getPatno())) { + PatArchive patArchive = new PatArchive(); + patArchive.setPatientno(pm.getPatno()); + patArchive.setPageSize(5); + List<PatArchive> patArchives = chMapper.selectPatArchiveList(patArchive); + if (patArchives.size() > 0) { + PatArchive pa1 = new PatArchive(); + pa1.setPatientno(pm.getPatno()); + patArchives1 = patArchiveMapper.selectPatArchiveList(pa1); + if (CollectionUtils.isNotEmpty(patArchives1)) { + patArchives.get(0).setId(patArchives1.get(0).getId()); + patArchives.get(0).setUpdateTime(new Date()); + count += patArchiveMapper.updatePatArchive(patArchives.get(0)); + } else { + patArchives.get(0).setCreateTime(new Date()); + count += patArchiveMapper.insertPatArchiveSingle(patArchives.get(0)); + patArchives1 = patArchiveMapper.selectPatArchiveList(pa1); + } } } }catch (Exception ex) { @@ -194,6 +198,9 @@ } try { + if(patArchives1.size()>0) { + pm.setPatid(patArchives1.get(0).getId()); + } //鍚屾鍑哄叆闄� PatMedInhosp pmi = new PatMedInhosp(); pmi.setSerialnum(pm.getSerialnum()); @@ -408,39 +415,41 @@ @Override public Integer selectUserList(SysUser sysUser) { List<SysUser> sysUserList = chMapper.selectUserList(sysUser); + SysUser suerTemp=new SysUser(); + List<SysUserDept> sysUserDeptAll = chMapper.yhyksxx(suerTemp); log.info("sysUserList鐨勯噰闆嗗埌鐨勬暟閲忎负锛歿}", sysUserList.size()); int i =0;// sysUser2Mapper.batchUser(sysUserList); for (SysUser sysUser1 : sysUserList) { // log.info("sysUser1鐨処D涓猴細{}", sysUser1.getUserId()); // log.info("sysUser1鐨凥ISUSERID涓猴細{}", sysUser1.getHisUserId()); -// //鏂板鐢ㄦ埛涓庤鑹� -// SysUserRole yhyjsxx = chMapper.yhyjsxx(sysUser1); -// if (yhyjsxx != null&&yhyjsxx.getUserId()!=null) { -// yhyjsxx.setUserId(sysUser1.getUserId()); -// List<SysUserRole> userRoleList = new ArrayList<>(); -// userRoleList.add(yhyjsxx); -// sysUserRoleMapper.batchUserRole(userRoleList); -// } if (StringUtils.isEmpty(sysUser1.getHisUserId())) continue; - SysUser suTemp=new SysUser(); + SysUser suTemp = new SysUser(); suTemp.setHisUserId(sysUser1.getHisUserId()); - List<SysUser> usersTemp= sysUser2Mapper.selectUserList(suTemp); - if (usersTemp.size()>0) { + List<SysUser> usersTemp = sysUser2Mapper.selectUserList(suTemp); + if (usersTemp.size() > 0) { sysUser1.setUserId(usersTemp.get(0).getUserId()); + sysUser1.setUserName(sysUser1.getHisUserId()); sysUser2Mapper.updateUser(sysUser1); - }else{ + } else { + sysUser1.setUserName(sysUser1.getHisUserId()); sysUser2Mapper.insertUser(sysUser1); - usersTemp= sysUser2Mapper.selectUserList(suTemp); + usersTemp = sysUser2Mapper.selectUserList(suTemp); } //鏂板鐢ㄦ埛涓庨儴闂� - List<SysUserDept> sysUserDept = chMapper.yhyksxx(sysUser1); - for(SysUserDept sud :sysUserDept) { - if (usersTemp.size()>0) { + //List<SysUserDept> sysUserDept = chMapper.yhyksxx(sysUser1); + List<SysUserDept> sysUserDept = sysUserDeptAll.stream() + .filter((SysUserDept b) -> b.getUserCode().equals(sysUser1.getHisUserId())) + .collect(Collectors.toList()); + + for (SysUserDept sud : sysUserDept) { + if (usersTemp.size() > 0) { sud.setUserId(usersTemp.get(0).getUserId()); + SysDept sysDeptTemp = sysDept2Mapper.selectDeptByCode(sud.getDeptCode()); + if (sysDeptTemp != null) + sud.setDeptId(sysDeptTemp.getDeptId()); sysUserDeptMapper.insertSysUserDept(sud); } - } } @@ -449,39 +458,20 @@ @Override public Integer selectDeptList(SysDept dept) { + int count=0; List<SysDept> sysDepts = chMapper.selectDeptList(dept); log.info("selectDeptList鐨勯噰闆嗗埌鐨勬暟閲忎负锛歿}", sysDepts.size()); - int i = sysDept2Mapper.batchDept(sysDepts); - return i; - } - - - /** - * 妫�鏌ュ苟鎵ц鍒嗚〃鐨勬牳蹇冩柟娉� - * - * @param tableName 瑕佹鏌ョ殑琛ㄥ悕 - */ - private synchronized void checkAndShard(String tableName) { - long currentCount = shardingMapper.getTableCount(tableName); - - if (currentCount >= SHARDING_THRESHOLD) { - log.warn("琛� '{}' 宸茶揪鍒板垎琛ㄩ槇鍊� {}锛屽噯澶囨墽琛屽垎琛ㄦ搷浣�...", tableName, SHARDING_THRESHOLD); - - String newTableName = tableName + "_" + java.time.LocalDate.now().format(java.time.format.DateTimeFormatter.ofPattern("yyyy_MM")); - Long maxId = shardingMapper.getMaxId(tableName); - if (maxId == null) maxId = 0L; - - shardingMapper.renameTable(tableName, newTableName); - log.info("宸插皢琛� '{}' 閲嶅懡鍚嶄负 '{}'", tableName, newTableName); - - shardingMapper.createLikeTable(tableName, newTableName); - log.info("宸插垱寤烘柊琛� '{}'", tableName); - - shardingMapper.setAutoIncrement(tableName, maxId + 1); - log.info("宸茶缃柊琛� '{}' 鐨勮嚜澧濱D璧峰鍊间负 {}", tableName, maxId + 1); - - log.info("琛� '{}' 鐨勫垎琛ㄦ搷浣滃畬鎴愶紒", tableName); + // count = sysDept2Mapper.batchDept(sysDepts); + for(SysDept row : sysDepts){ + SysDept sysDeptTemp= sysDept2Mapper.selectDeptByCode(row.getDeptCode()); + if(sysDeptTemp!=null&&sysDeptTemp.getDeptName()!=null){ + row.setDeptId(sysDeptTemp.getDeptId()); + count+=sysDept2Mapper.updateDept(row); + }else{ + count+=sysDept2Mapper.insertDept(row); + } } + return count; } } -- Gitblit v1.9.3