2025-07-31 | zjh | ![]() |
2025-07-31 | zhaowenxuan | ![]() |
ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjPdfVO.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ltkj-hosp/src/main/java/com/ltkj/hosp/idutil/IdUtils.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java
@@ -2859,7 +2859,10 @@ doctorNameDefault = entry.getValue().get(0).getShys(); } Font doctorFonts = PdfUtils.setFont(9); if (key.equals("Y")) { if (entry.getValue().get(0).getIsShowYiShi() == null){ entry.getValue().get(0).setIsShowYiShi(true); } if (key.equals("Y") && entry.getValue().get(0).getIsShowYiShi()) { String qmImg = dictUserInfoMapper.selectQmImgInnerJoinUserByUserId(String.valueOf(sysUser.getUserId())); if (null != qmImg && StrUtil.isNotBlank(qmImg)) { Paragraph elements = new Paragraph(); @@ -2897,7 +2900,7 @@ df.setAlignment(Element.ALIGN_RIGHT); document1.add(df); } } else { } else if (entry.getValue().get(0).getIsShowYiShi()) { String doctorName = "主检医师:" + doctorNameDefault; if (createTime != null) doctorName = "检查时间:" + new SimpleDateFormat("yyyy-MM-dd").format(createTime) + " 主检医师:" + doctorNameDefault; @@ -3050,12 +3053,13 @@ } catch (Exception ignored) { } } String key = sysConfigService.selectConfigByKey("is_report_pdf_use_ysqm"); if (null != shys && null != shysmc && key.equals("Y")) { hashSet.add(shysmc + "|" + shys); } else { if (null != shysmc) hashSet.add(shysmc); } // 结果弃检重复去除医师打印 // String key = sysConfigService.selectConfigByKey("is_report_pdf_use_ysqm"); // if (null != shys && null != shysmc && key.equals("Y")) { // hashSet.add(shysmc + "|" + shys); // } else { // if (null != shysmc) hashSet.add(shysmc); // } ArrayList<String> strings = new ArrayList<>(); strings.add(xmmc); strings.add(groupOnceProResult); @@ -3068,10 +3072,11 @@ HashMap<String, Object> map = new HashMap<>(); map.put("data", lists); map.put("jyys", hashSet); if (StrUtil.isNotBlank(shsj)) { shsj = shsj.split(" ")[0]; } map.put("shsj", shsj); // if (StrUtil.isNotBlank(shsj)) { // shsj = shsj.split(" ")[0]; // } // map.put("shsj", shsj); map.put("shsj",""); data.put(xmmc, map); } } @@ -3313,6 +3318,7 @@ // LambdaQueryWrapper<LtkjExamJcbgd> wrapper = new LambdaQueryWrapper<>(); // wrapper.eq(LtkjExamJcbgd::getTjh, tjNumber); // wrapper.eq(LtkjExamJcbgd::getXmdm, String.valueOf(tjOrderDetail.getProject().getProParentId())); tjPdfVO.setIsShowYiShi(true); tjPdfVOS.add(tjPdfVO); } } @@ -3329,6 +3335,7 @@ tjPdfVO.setProId(String.valueOf(orderRemark.getProId())); tjPdfVO.setPid(String.valueOf(orderRemark.getProId())); tjPdfVO.setXh(1); tjPdfVO.setIsShowYiShi(false); tjPdfVOS.add(tjPdfVO); } } ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjPdfVO.java
@@ -50,4 +50,6 @@ private String pid; private Integer xh; private Boolean isShowYiShi; } ltkj-hosp/src/main/java/com/ltkj/hosp/idutil/IdUtils.java
@@ -1,6 +1,7 @@ package com.ltkj.hosp.idutil; import cn.hutool.core.util.StrUtil; import com.ltkj.db.DataSourceContextHolder; import com.ltkj.hosp.mapper.OrderNumberMapper; import lombok.extern.slf4j.Slf4j; import org.redisson.api.RLock; @@ -24,10 +25,9 @@ @Slf4j public class IdUtils { private static final String LIS_LAST_ID_KEY = "id:generate:lis:id"; private static final String TJH_LAST_ID_KEY = "id:generate:tjhs:tjh"; private static final String LIS_LAST_ID_INCR_KEY = "id:generate:lis:id:incr"; private static final String LIS_CURRENT_DATE_KEY = "id:generate:lis:currentDate"; private static String LIS_LAST_ID_KEY = "id:generate:lis:id"; private static String TJH_LAST_ID_KEY = "id:generate:tjhs:tjh"; private static String LIS_CURRENT_DATE_KEY = "id:generate:lis:currentDate"; @Autowired private StringRedisTemplate stringRedisTemplate; @@ -36,27 +36,14 @@ @Autowired private RedissonClient redissonClient; public synchronized String yuangenerateLisID(String prefix) { String currentDate = new SimpleDateFormat("yyyyMMdd").format(new Date()); String storedDate = stringRedisTemplate.opsForValue().get(LIS_CURRENT_DATE_KEY); String lastIdStr = stringRedisTemplate.opsForValue().get(LIS_LAST_ID_KEY); int lastId; if (storedDate == null || !storedDate.equals(currentDate)) { lastId = 1; stringRedisTemplate.opsForValue().set(LIS_LAST_ID_KEY, String.valueOf(lastId)); stringRedisTemplate.opsForValue().set(LIS_CURRENT_DATE_KEY, currentDate); } else { lastId = Integer.parseInt(lastIdStr) + 1; stringRedisTemplate.opsForValue().set(LIS_LAST_ID_KEY, String.valueOf(lastId)); } String yyMMdd = currentDate.substring(2); return String.format(prefix+"%s%05d", yyMMdd, lastId); } //redis分布式锁和MySQL公用 public String generateLisID(String prefix) { String lockKey = "lock:tmh:tj_tmh_lock"; RLock lock = redissonClient.getLock(lockKey); String string = DataSourceContextHolder.getDataSourceKey(); LIS_LAST_ID_KEY = "id:generate:lis:id:"+string; LIS_CURRENT_DATE_KEY = "id:generate:lis:currentDate:"+string; try { if (lock.tryLock(3, 5, TimeUnit.SECONDS)) { @@ -93,26 +80,6 @@ } } /** * 生成无限递增条码号 * @param prefix * @return */ public synchronized String generateLisNextId(String prefix){ String lastIdStr = stringRedisTemplate.opsForValue().get(LIS_LAST_ID_INCR_KEY); int current; if (StrUtil.isBlank(lastIdStr)) { current = 1; }else { current = Integer.parseInt(lastIdStr); } int numberLength = String.valueOf(99999).length(); String result = prefix + String.format("%0" + numberLength + "d", current); current++; stringRedisTemplate.opsForValue().set(LIS_LAST_ID_INCR_KEY,String.valueOf(current)); return result; } //生成体检号用 @@ -198,6 +165,11 @@ String lockKey = "lock:tjh:tj_number_lock"; RLock lock = redissonClient.getLock(lockKey); String string = DataSourceContextHolder.getDataSourceKey(); LIS_CURRENT_DATE_KEY = "id:generate:lis:currentDate:"+string; TJH_LAST_ID_KEY = "id:generate:tjhs:tjh:"+string; try { if (lock.tryLock(5, 10, TimeUnit.SECONDS)) { String currentDate = new SimpleDateFormat("yyyyMMdd").format(new Date());