From 53f4d74399565f76c94646b704a33f2c53808232 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期四, 19 十二月 2024 17:29:26 +0800
Subject: [PATCH] zjh202412019

---
 ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java |  115 +++++++++++++++++++++++++++++++++------------------------
 1 files changed, 66 insertions(+), 49 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
index 8a4043e..59a0f39 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/config/timer/DefaultScheduled.java
@@ -1,9 +1,7 @@
 package com.ltkj.web.config.timer;
 
 import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
-import com.ltkj.hosp.domain.TjOrder;
 import com.ltkj.hosp.mapper.TestMapper;
-import com.ltkj.hosp.mapper.TjOrderMapper;
 import com.ltkj.hosp.service.*;
 import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd;
 import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd;
@@ -18,6 +16,8 @@
 import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
 import java.text.SimpleDateFormat;
+import java.time.LocalTime;
+import java.time.ZonedDateTime;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -82,68 +82,85 @@
     }
 
     private void exec() {
-        log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date()));
+        String dsqkssj = configService.selectConfigByKey("dsqkssj");
+        String dsqjssj = configService.selectConfigByKey("dsqjssj");
+        boolean panduandangqianshijian = panduandangqianshijian(dsqkssj, dsqjssj);
+        log.info("褰撳墠鏃堕棿鏄惁鍦� " + dsqkssj + " 鐐瑰埌 " + dsqjssj + " 鐐逛箣闂�: " + panduandangqianshijian);
+            String dsrwsjjg = configService.selectConfigByKey("dsrwsjjg");
+            boolean lock = reentrantLock.tryLock();
+            try {
+                if (!panduandangqianshijian) {
+                    if (lock) {
+                        log.info("浠诲姟寮�濮嬫墽琛屾椂闂� -> {}", dateTimeFormat.format(new Date()));
+                        long start = System.currentTimeMillis();
+                        // 鏌ヨ浠诲姟鏁版嵁
+                        log.info("寮�濮嬫墽琛屽悓姝� 鎵ц鏁伴噺->{}", 0);
+                        List<String> jy = orderService.getDingShiTongBuJianYanTjNum();
 
-        String dsrwsjjg = configService.selectConfigByKey("dsrwsjjg");
-
-        boolean lock = reentrantLock.tryLock();
-        try {
-            if (lock) {
-                    long start = System.currentTimeMillis();
-                    // 鏌ヨ浠诲姟鏁版嵁
-                    log.info("寮�濮嬫墽琛屽悓姝� 鎵ц鏁伴噺->{}", 0);
-                 List<String> jy= orderService.getDingShiTongBuJianYanTjNum();
-
-                List<String> jc = orderService.getDingShiTongBuJianChaTjNum();
+                        List<String> jc = orderService.getDingShiTongBuJianChaTjNum();
 
 
-                if(null !=jy && !jy.isEmpty()){
-                    log.info("鍚屾妫�楠屼汉鍛� 鎵ц鏁伴噺->{}", jy.size());
-                    for (String s : jy) {
+                        if (null != jy && !jy.isEmpty()) {
+                            log.info("鍚屾妫�楠屼汉鍛� 鎵ц鏁伴噺->{}", jy.size());
+                            for (String s : jy) {
 //                        TjOrder order = orderService.getOrderByTjNum(s);
-                        extractedjianyan(s);
-                    }
-                }
+                                extractedjianyan(s);
+                            }
+                        }
 
 
-                if(null !=jc && !jc.isEmpty()){
-                    log.info("鍚屾妫�鏌ヤ汉鍛� 鎵ц鏁伴噺->{}", jc.size());
-                    for (String s : jc) {
+                        if (null != jc && !jc.isEmpty()) {
+                            log.info("鍚屾妫�鏌ヤ汉鍛� 鎵ц鏁伴噺->{}", jc.size());
+                            for (String s : jc) {
 //                        TjOrder order = orderService.getOrderByTjNum(s);
-                        extractedjiancha(s);
+                                extractedjiancha(s);
+                            }
+                        }
+                        Map<String, Object> map = new HashMap<>();
+                        testMapper.tjplUpdateDetatilByVi(map);
+                        Integer object = (Integer) map.get("total");
+                        log.info("鎵ц瀛樺偍杩囩▼鍚庡嚭鍙�->{}", object);
+                        if (null != object && object.equals(1)) {
+                            long end = System.currentTimeMillis();
+                            log.info("鍚屾缁撴潫 鑰楁椂锛歿}绉�", (end - start) / 1000);
+                            // 鍔ㄦ�佽幏鍙栦笅娆′换鍔$殑闂撮殧
+                            int minute = Integer.parseInt(dsrwsjjg);
+                            if (minute < 5) minute = 5;
+                            if (minute > 59) minute = 59;
+                            scheduleNextTask(minute);
+                        }else {
+                            log.info("鎵ц瀛樺偍杩囩▼鍑哄弬澶辫触");
+                            scheduleNextTask(Long.parseLong(dsrwsjjg));
+                        }
                     }
+                }else {
+                    log.info("涓嶅湪瀹氭椂鍣ㄦ墽琛屾椂闂磋寖鍥翠箣鍐�!!!");
+                    scheduleNextTask(Long.parseLong(dsrwsjjg));
                 }
-                Map<String,Object> map=new HashMap<>();
-                testMapper.tjplUpdateDetatilByVi(map);
-                Integer object = (Integer) map.get("total");
-                log.info("鎵ц瀛樺偍杩囩▼鍚庡嚭鍙�->{}",object);
-                if(null !=object && object.equals(1)){
-                    long end = System.currentTimeMillis();
-                    log.info("鍚屾缁撴潫 鑰楁椂锛歿}绉�", (end - start) / 1000);
-                    // 鍔ㄦ�佽幏鍙栦笅娆′换鍔$殑闂撮殧
-                    int minute = Integer.parseInt(dsrwsjjg);
-                    if (minute < 5) minute = 5;
-                    if (minute > 59) minute = 59;
-                    scheduleNextTask(minute);
-                }
+            } catch (Exception e) {
+                scheduleNextTask(Long.parseLong(dsrwsjjg));
+                log.error("瀹氭椂鍣ㄦ墽琛屾姤閿�");
+                e.printStackTrace();
+            } finally {
+                reentrantLock.unlock();
             }
-        } catch (Exception e) {
-            log.error("瀹氭椂鍣ㄦ墽琛屾姤閿�");
-            e.printStackTrace();
-        } finally {
-            scheduleNextTask(Long.parseLong(dsrwsjjg));
-            reentrantLock.unlock();
-        }
+
+    }
+
+    private boolean panduandangqianshijian(String kssj, String jssj) {
+        ZonedDateTime now = ZonedDateTime.now();
+        LocalTime time = now.toLocalTime();
+        return time.isAfter(LocalTime.of(Integer.parseInt(kssj), 0)) && time.isBefore(LocalTime.of(Integer.parseInt(jssj), 0));
     }
 
     private void extractedjianyan(String s) {
         try {
             List<LtkjHysqd> hysqdList = testMapper.getCcXZxYyLtkjHysqdByLisVi(s);
-            if(null != hysqdList && !hysqdList.isEmpty()){
+            if (null != hysqdList && !hysqdList.isEmpty()) {
                 for (LtkjHysqd hysqd : hysqdList) {
-                    LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(),hysqd.getTmh());
+                    LtkjHysqd jybgid = ltkjHysqdService.getLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh());
                     if (null != jybgid) {
-                        ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(),hysqd.getTmh());
+                        ltkjHysqdService.deletedLtkjHysqdByTjhAndTmh(hysqd.getTjh(), hysqd.getTmh());
                         ltkjHybgdService.deletedLtkjHybgdByTjhAndTmh(hysqd.getTmh());
                     }
                     if (ltkjHysqdService.save(hysqd)) {
@@ -164,14 +181,14 @@
 
         try {
             List<LtkjExamJcsqd> jcsqdList = testMapper.getCcXZxYyPacsLtkjExamJcsqd(s);
-            if(null !=jcsqdList && !jcsqdList.isEmpty()){
+            if (null != jcsqdList && !jcsqdList.isEmpty()) {
                 DynamicDataSourceContextHolder.clearDataSourceType();
                 jcsqdService.deletedLtkjJcsqdByTjhAndTmh(s);
                 jcbgdService.deletedLtkjJcbgdByTjhAndTmh(s);
                 jcsqdService.saveBatch(jcsqdList);
                 List<LtkjExamJcbgd> jcbgdList = testMapper.getCcXZxYyPacsLtkjExamJcbgd(s);
                 DynamicDataSourceContextHolder.clearDataSourceType();
-                if(null != jcbgdList && !jcbgdList.isEmpty())jcbgdService.saveBatch(jcbgdList);
+                if (null != jcbgdList && !jcbgdList.isEmpty()) jcbgdService.saveBatch(jcbgdList);
                 DynamicDataSourceContextHolder.clearDataSourceType();
             }
         } catch (Exception e) {

--
Gitblit v1.8.0