From b7f0fb8eda40b6761b35a37f72eb5e8a3c836bed Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期五, 21 三月 2025 11:00:39 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ltkj-admin/src/main/java/com/ltkj/web/config/timer/AsyncResultTask.java |   48 +++++++++++++++++++++++++++++++-----------------
 1 files changed, 31 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 7a41f2b..2f5959d 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
@@ -114,16 +114,17 @@
     // 鎵ц鏃ュ織鍚屾浠诲姟鐨勬柟娉�
     public void executeTask(DictHosp dictHosp) {
         // 鑾峰彇閿侊紝纭繚鍚屼竴鏃堕棿鍙湁涓�涓换鍔℃墽琛�
-        log.info("{}鎵ц缁撴灉鍚屾", dictHosp.getCode());
-        dataSourceConfig.addDataSource(dictHosp.getDbname());
-        DataSourceContextHolder.setDataSourceKey(dictHosp.getDbname());
-        String dsqkssj = configService.selectConfigByKey("dsqkssj");
-        String dsqjssj = configService.selectConfigByKey("dsqjssj");
-        boolean panduandangqianshijian = panduandangqianshijian(dsqkssj, dsqjssj);
-
+        log.info("{}鎵ц缁撴灉鍚屾鍔犻攣鍓�",JSONUtil.toJsonStr(dictHosp));
         ReentrantLock reentrantLock = getLock(dictHosp.getCode());
         boolean lock = reentrantLock.tryLock();
         try {
+            log.info("{}鎵ц缁撴灉鍚屾鍔犻攣鍚�",JSONUtil.toJsonStr(dictHosp));
+            log.info("{}鎵ц缁撴灉鍚屾", dictHosp.getCode());
+            dataSourceConfig.addDataSource(dictHosp.getDbname());
+            DataSourceContextHolder.setDataSourceKey(dictHosp.getDbname());
+            String dsqkssj = configService.selectConfigByKey("dsqkssj");
+            String dsqjssj = configService.selectConfigByKey("dsqjssj");
+            boolean panduandangqianshijian = panduandangqianshijian(dsqkssj, dsqjssj);
             if (!panduandangqianshijian) {
                 if (lock) {
                     log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date()));
@@ -138,7 +139,7 @@
                     if (null != jy && !jy.isEmpty()) {
                         log.info("鍚屾妫�楠屼汉鍛� 鎵ц鏁伴噺->{}", jy.size());
                         for (String s : jy) {
-                            extractedjianyan(s);
+                            extractedjianyan(s,dictHosp.getCode());
                         }
                     }
 
@@ -146,7 +147,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<>();
@@ -222,7 +223,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()){
@@ -232,9 +233,22 @@
                 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);
+                    }
+                }
+            }
+
+            List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(s,hospId);
             if (null != hysqdList && !hysqdList.isEmpty()) {
                 for (LtkjHysqd hysqd : hysqdList) {
                     LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh());
@@ -244,8 +258,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);
                     }
                 }
@@ -260,16 +274,16 @@
     }
 
 
-    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);
             if (null != jcsqdList && !jcsqdList.isEmpty()) {
                 DynamicDataSourceContextHolder.clearDataSourceType();
                 jcsqdService.deletedLtkjJcsqdByTjhAndTmh(s);
                 jcbgdService.deletedLtkjJcbgdByTjhAndTmh(s);
                 jcsqdService.saveBatch(jcsqdList);
-                List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s);
+                List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s,hospId);
                 DynamicDataSourceContextHolder.clearDataSourceType();
                 if (null != jcbgdList && !jcbgdList.isEmpty()) jcbgdService.saveBatch(jcbgdList);
                 DynamicDataSourceContextHolder.clearDataSourceType();

--
Gitblit v1.8.0