From 2a9583fd376451ca77a0400af7f3a02d1b80e7f5 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 24 六月 2025 18:04:34 +0800 Subject: [PATCH] 2025-06-24 --- ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java | 66 ++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 17 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java index 75ac273..a96d7a8 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java @@ -1,6 +1,6 @@ package com.ltkj.web.config.timer; -import cn.hutool.core.util.RandomUtil; +import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; import com.ltkj.common.enums.DataSourceType; import com.ltkj.db.DataSourceConfig; @@ -14,8 +14,6 @@ import com.ltkj.system.service.ISysConfigService; import jodd.util.StringUtil; import lombok.extern.slf4j.Slf4j; -import org.redisson.api.RLock; -import org.redisson.api.RedissonClient; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Profile; import org.springframework.scheduling.TaskScheduler; @@ -30,7 +28,6 @@ import java.time.temporal.ChronoUnit; import java.util.*; import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.ReentrantLock; @Slf4j @@ -130,7 +127,7 @@ log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date())); long start = System.currentTimeMillis(); // 鏌ヨ浠诲姟鏁版嵁 - log.info("寮�濮嬫墽琛屽悓姝� 鎵ц鏁伴噺->{}", 0); + log.info("寮�濮嬫墽琛屽悓姝� 鎵ц闄㈠尯->{}", dictHosp.getCode()); List<String> jy = orderService.getDingShiTongBuJianYanTjNum(); List<String> jc = orderService.getDingShiTongBuJianChaTjNum(); @@ -139,7 +136,7 @@ if (null != jy && !jy.isEmpty()) { log.info("鍚屾妫�楠屼汉鍛� 鎵ц鏁伴噺->{}", jy.size()); for (String s : jy) { - extractedjianyan(s); + extractedjianyan(s,dictHosp.getCode()); } } @@ -147,7 +144,7 @@ if (null != jc && !jc.isEmpty()) { log.info("鍚屾妫�鏌ヤ汉鍛� 鎵ц鏁伴噺->{}", jc.size()); for (String s : jc) { - extractedjiancha(s); + extractedjiancha(s,dictHosp.getCode()); } } Map<String, Object> map = new HashMap<>(); @@ -162,7 +159,9 @@ if(null !=list && !list.isEmpty()){ for (LtkjExamJcsqd jcsqd : list) { if(StringUtil.isNotBlank(jcsqd.getJgzt())){ - String[] split = jcsqd.getJgzt().replaceAll("\n", "").split("銆倈锛泑;"); + String regex = configService.selectConfigByKey("jcycxmzz"); + if(StringUtil.isBlank(regex)) regex= "銆倈锛泑;|,|锛�"; + String[] split = jcsqd.getJgzt().replaceAll("\n", "").split(regex); for (String jg : split) { if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父") && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈") @@ -223,7 +222,7 @@ taskScheduler.schedule(this::checkAndAddNewTasks, Instant.now().plus(2, ChronoUnit.MINUTES)); } - private void extractedjianyan(String s) { + private void extractedjianyan(String s,String hospId) { try { List<Aws> awsList = testMapper.getWsxmLtkjHysqdByLisViBySLAVEWS(s); if(null !=awsList && !awsList.isEmpty()){ @@ -233,9 +232,40 @@ awsService.saveBatch(awsList); log.info("淇濆瓨澶栭�侀」鐩垚鍔�"); } - List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(s); List<LtkjHysqd> wssq = testMapper.getWsxmLtkjHysqdByLisVi(s); - if(null !=wssq && !wssq.isEmpty())hysqdList.addAll(wssq); + if(null !=wssq && !wssq.isEmpty()){ + for (LtkjHysqd hysqd : wssq) { + LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + if (null != jybgid) { + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh()); + } + if (ltkjHysqdService.save(hysqd)) { + List<LtkjHybgd> wsbg = testMapper.getWsxmLtkjHybgdByLisVi(s); + ltkjHybgdService.saveBatch(wsbg); + } + } + } + + String isWsByView = configService.selectConfigByKey("is_ws_by_view"); + if (StrUtil.isNotBlank(isWsByView) && isWsByView.equals("Y")){ + List<LtkjHysqd> sqd = testMapper.getWsHySqdByView(s); + if (sqd != null && !sqd.isEmpty()){ + for (LtkjHysqd hysqd : sqd) { + LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + if (null != jybgid) { + ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); + ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh()); + } + if (ltkjHysqdService.save(hysqd)) { + List<LtkjHybgd> wsbg = testMapper.getWsHyBgdByView(hysqd.getTmh()); + ltkjHybgdService.saveBatch(wsbg); + } + } + } + } + + List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(s,hospId); if (null != hysqdList && !hysqdList.isEmpty()) { for (LtkjHysqd hysqd : hysqdList) { LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh()); @@ -245,8 +275,8 @@ } if (ltkjHysqdService.save(hysqd)) { List<LtkjHybgd> hybgdList = testMapper.getCcXZxYyLtkjHybgdByLisVi(hysqd.getTmh()); - List<LtkjHybgd> wsbg = testMapper.getWsxmLtkjHybgdByLisVi(s); - if(null !=wsbg && !wsbg.isEmpty())hybgdList.addAll(wsbg); +// List<LtkjHybgd> wsbg = testMapper.getWsxmLtkjHybgdByLisVi(s); +// if(null !=wsbg && !wsbg.isEmpty())hybgdList.addAll(wsbg); ltkjHybgdService.saveBatch(hybgdList); } } @@ -261,17 +291,19 @@ } - private void extractedjiancha(String s) { + private void extractedjiancha(String s,String hospId) { try { - List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(s); + List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(s,hospId); + log.info("鑷姩鍚屾妫�鏌ョ敵璇峰崟鏁版嵁:"+jcsqdList); if (null != jcsqdList && !jcsqdList.isEmpty()) { DynamicDataSourceContextHolder.clearDataSourceType(); jcsqdService.deletedLtkjJcsqdByTjhAndTmh(s); jcbgdService.deletedLtkjJcbgdByTjhAndTmh(s); jcsqdService.saveBatch(jcsqdList); - List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s); - DynamicDataSourceContextHolder.clearDataSourceType(); + List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s,hospId); +// DynamicDataSourceContextHolder.clearDataSourceType(); + log.info("鑷姩鍚屾妫�鏌ユ姤鍛婂崟鏁版嵁:"+jcbgdList); if (null != jcbgdList && !jcbgdList.isEmpty()) jcbgdService.saveBatch(jcbgdList); DynamicDataSourceContextHolder.clearDataSourceType(); } -- Gitblit v1.8.0