From 82723ea5ecc5dd0e197d544a61bcfe86f63692a3 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期六, 02 三月 2024 16:08:44 +0800
Subject: [PATCH] 解决数据定时同步及上报不执行问题

---
 src/main/java/com/fzzy/api/entity/ApiConfs.java         |   26 +++---
 src/main/java/com/fzzy/api/timer/SyncDataScheduled.java |  124 +++++++++++++++---------------
 src/main/java/com/fzzy/api/timer/PushDataScheduled.java |   39 +++++++++
 3 files changed, 113 insertions(+), 76 deletions(-)

diff --git a/src/main/java/com/fzzy/api/entity/ApiConfs.java b/src/main/java/com/fzzy/api/entity/ApiConfs.java
index 56cf737..2349685 100644
--- a/src/main/java/com/fzzy/api/entity/ApiConfs.java
+++ b/src/main/java/com/fzzy/api/entity/ApiConfs.java
@@ -94,15 +94,15 @@
     @Column(name = "syncType_11", length = 2)
     private String syncType11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-澶�", description = "1-鍛ㄤ竴锛�2-鍛ㄤ簩锛�3-鍛ㄤ笁绛夌瓑锛�* 琛ㄧず姣忓ぉ")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鍚屾-澶�", description = "1-鍛ㄤ竴锛�2-鍛ㄤ簩锛�3-鍛ㄤ笁绛夌瓑锛�* 琛ㄧず姣忓ぉ")
     @Column(name = "syncDay_11")
     private String syncDay11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-鏃�", description = "0-23琛ㄧず鍏蜂綋灏忔椂锛�* 琛ㄧず姣忓皬鏃�")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鍚屾-鏃�", description = "0-23琛ㄧず鍏蜂綋灏忔椂锛�* 琛ㄧず姣忓皬鏃�")
     @Column(name = "syncHour_11", length = 4)
     private String syncHour11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-鍒�", description = "鍏蜂綋鎵ц鏃堕棿锛屽垎涓猴細0鍜�30涓や釜閫夋嫨锛岃〃绀烘暣鐐规墽琛�30鍒嗛挓鎵ц")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鍚屾-鍒�", description = "鍏蜂綋鎵ц鏃堕棿锛屽垎涓猴細0鍜�30涓や釜閫夋嫨锛岃〃绀烘暣鐐规墽琛�30鍒嗛挓鎵ц")
     @Column(name = "syncMinute_11", length = 4)
     private String syncMinute11;
 
@@ -110,15 +110,15 @@
     @Column(name = "pushType_11", length = 2)
     private String pushType11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-澶�")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鎺ㄩ��-澶�")
     @Column(name = "pushDay_11", length = 4)
     private String pushDay11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-鏃�")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鍚屾-鏃�")
     @Column(name = "pushHour_11", length = 4)
     private String pushHour11;
 
-    @PropertyDef(label = "鍩虹鎺ュ彛-鍒�")
+    @PropertyDef(label = "鍩虹鎺ュ彛-鍚屾-鍒�")
     @Column(name = "pushMinute_11", length = 4)
     private String pushMinute11;
 
@@ -126,31 +126,31 @@
     @Column(name = "syncType_99", length = 2)
     private String syncType99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-澶�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鍚屾-澶�")
     @Column(name = "syncDay_99", length = 4)
     private String syncDay99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-鏃�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鍚屾-鏃�")
     @Column(name = "syncHour_99", length = 4)
     private String syncHour99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-鍒�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鍚屾-鍒�")
     @Column(name = "syncMinute_99", length = 4)
     private String syncMinute99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-鎺ㄩ��", description = "鑷姩鍚屾锛岃嚜鍔ㄥ悓姝�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鎺ㄩ�佹柟寮�", description = "鑷姩鍚屾锛岃嚜鍔ㄥ悓姝�")
     @Column(name = "pushType_99", length = 2)
     private String pushType99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-澶�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鎺ㄩ��-澶�")
     @Column(name = "pushDay_99", length = 4)
     private String pushDay99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-鏃�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鎺ㄩ��-鏃�")
     @Column(name = "pushHour_99", length = 4)
     private String pushHour99;
 
-    @PropertyDef(label = "鍏朵粬鏁版嵁-鍒�")
+    @PropertyDef(label = "鍏朵粬鏁版嵁-鎺ㄩ��-鍒�")
     @Column(name = "pushMinute_99", length = 4)
     private String pushMinute99;
 
diff --git a/src/main/java/com/fzzy/api/timer/PushDataScheduled.java b/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
index 5dc67d9..e907a1d 100644
--- a/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
+++ b/src/main/java/com/fzzy/api/timer/PushDataScheduled.java
@@ -81,7 +81,7 @@
             isExecute = true;
         } else {
             int dayOfWeek = ContextUtil.getDayOfWeek(exeDate);
-            if (String.valueOf(dayOfWeek).equals(conf.getPushDay11())) {
+            if (String.valueOf(dayOfWeek).equals(conf.getPushDay99())) {
                 isExecute = true;
 
                 //寮�濮嬫椂闂存彁鍓�7澶�
@@ -97,6 +97,43 @@
             return;
         }
 
+        //鏍稿鏃堕棿鏄惁鍖归厤
+        if (conf.getPushHour99().equals(ApiConfs.TIME_ALL)) {
+            isExecute = true;
+        } else {
+            int hourOfDay = ContextUtil.getHourOfDay(exeDate);
+            if (String.valueOf(hourOfDay).equals(conf.getPushHour99())) {
+                isExecute = true;
+
+                if (!isUpdateStart) {
+                    start = DateUtils.addDays(start, -1);
+                    isUpdateStart = true;
+                }
+            } else {
+                isExecute = false;
+            }
+        }
+        if (!isExecute) {
+            log.debug("------->>>>>>>>>> 鍩虹鏁版嵁鎺ㄩ��---鏃堕棿閰嶇疆灏忔椂涓嶅尮閰�");
+            return;
+        }
+
+        //鏍稿鏃堕棿鍒嗛挓鏄惁鍖归厤
+        int minute = ContextUtil.getMinuteOfHour(exeDate);
+        if (String.valueOf(minute).equals(conf.getPushMinute99())) {
+            isExecute = true;
+            if (!isUpdateStart) {
+                start = DateUtils.addHours(start, -1);
+            }
+        } else {
+            isExecute = false;
+        }
+
+        if (!isExecute) {
+            log.debug("------->>>>>>>>>> 鍩虹鏁版嵁鎺ㄩ��---鏃堕棿閰嶇疆鍒嗛挓涓嶅尮閰�");
+            return;
+        }
+
         log.info("------->>>>>>>>>> 涓氬姟鏁版嵁鎺ㄩ��---寮�濮嬫煡璇㈢浉鍏充笟鍔℃暟鎹繘琛屾帹閫�");
         ApiParam param = new ApiParam();
         param.setPushProtocol(conf.getPushProtocol());
diff --git a/src/main/java/com/fzzy/api/timer/SyncDataScheduled.java b/src/main/java/com/fzzy/api/timer/SyncDataScheduled.java
index 1b5d45f..7e2f969 100644
--- a/src/main/java/com/fzzy/api/timer/SyncDataScheduled.java
+++ b/src/main/java/com/fzzy/api/timer/SyncDataScheduled.java
@@ -36,8 +36,7 @@
      * <p>
      * 鍥哄畾鏃堕棿锛�0鍒嗛挓鍜�30鍒嗛挓鎵ц
      */
-//    @Scheduled(cron = "0 0,30 * * * ? ")
-    @Scheduled(cron = "0 * * * * ? ")
+    @Scheduled(cron = "0 0,30 * * * ? ")
     public void scheduled() {
 
         log.info("绯荤粺鎵ц瀹氭椂鏁版嵁鍚屾鎿嶄綔<<<<<<<<<<<<<--------");
@@ -73,66 +72,67 @@
 
         Date start = exeDate;
 
-//        //鏄惁鎵ц
-//        boolean isExecute = false;
-//        boolean isUpdateStart = false;
-//        //鏍稿澶╂槸鍚﹀尮閰�
-//        if (conf.getSyncDay99().equals(ApiConfs.TIME_ALL)) {
-//            isExecute = true;
-//        } else {
-//            int dayOfWeek = ContextUtil.getDayOfWeek(exeDate);
-//            if (String.valueOf(dayOfWeek).equals(conf.getSyncDay11())) {
-//                isExecute = true;
-//
-//                //寮�濮嬫椂闂存彁鍓�7澶�
-//                start = DateUtils.addDays(start, -7);
-//                isUpdateStart = true;
-//            } else {
-//                isExecute = false;
-//            }
-//        }
-//
-//        if (!isExecute) {
-//            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆澶╀笉鍖归厤<<<<<<<<<<<<<-------");
-//            return;
-//        }
-//
-//        //鏍稿鏃堕棿鏄惁鍖归厤
-//        if (conf.getSyncHour99().equals(ApiConfs.TIME_ALL)) {
-//            isExecute = true;
-//        } else {
-//            int hourOfDay = ContextUtil.getHourOfDay(exeDate);
-//            if (String.valueOf(hourOfDay).equals(conf.getSyncHour11())) {
-//                isExecute = true;
-//
-//                if (!isUpdateStart) {
-//                    start = DateUtils.addDays(start, -1);
-//                    isUpdateStart = true;
-//                }
-//            } else {
-//                isExecute = false;
-//            }
-//        }
-//        if (!isExecute) {
-//            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆灏忔椂涓嶅尮閰�<<<<<<<<<<<<<-------");
-//            return;
-//        }
-//
-//        //鏍稿鏃堕棿鍒嗛挓鏄惁鍖归厤
-//        int minute = ContextUtil.getMinuteOfHour(exeDate);
-//        if (String.valueOf(minute).equals(conf.getSyncMinute99())) {
-//            isExecute = true;
-//            if (!isUpdateStart) {
-//                start = DateUtils.addHours(start, -1);
-//            }
-//        } else {
-//            isExecute = false;
-//        }
-//
-//        if (!isExecute) {
-//            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆鍒嗛挓涓嶅尮閰�<<<<<<<<<<<<<-------");
-//            return;
-//        }
+        //鏄惁鎵ц
+        boolean isExecute = false;
+        boolean isUpdateStart = false;
+
+        //鏍稿澶╂槸鍚﹀尮閰�
+        if (conf.getSyncDay99().equals(ApiConfs.TIME_ALL)) {
+            //姣忓ぉ鎵ц
+            isExecute = true;
+        } else {
+            int dayOfWeek = ContextUtil.getDayOfWeek(exeDate);
+            if (String.valueOf(dayOfWeek).equals(conf.getSyncDay99())) {
+                isExecute = true;
+
+                //寮�濮嬫椂闂存彁鍓�7澶�
+                start = DateUtils.addDays(start, -7);
+                isUpdateStart = true;
+            } else {
+                isExecute = false;
+            }
+        }
+        if (!isExecute) {
+            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆澶╀笉鍖归厤<<<<<<<<<<<<<-------");
+            return;
+        }
+
+        //鏍稿灏忔椂鏄惁鍖归厤
+        if (conf.getSyncHour99().equals(ApiConfs.TIME_ALL)) {
+            isExecute = true;
+        } else {
+            int hourOfDay = ContextUtil.getHourOfDay(exeDate);
+            if (String.valueOf(hourOfDay).equals(conf.getSyncHour99())) {
+                isExecute = true;
+
+                if (!isUpdateStart) {
+                    start = DateUtils.addDays(start, -1);
+                    isUpdateStart = true;
+                }
+            } else {
+                isExecute = false;
+            }
+        }
+        if (!isExecute) {
+            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆灏忔椂涓嶅尮閰�<<<<<<<<<<<<<-------");
+            return;
+        }
+
+        //鏍稿鏃堕棿鍒嗛挓鏄惁鍖归厤
+        int minute = ContextUtil.getMinuteOfHour(exeDate);
+        if (String.valueOf(minute).equals(conf.getSyncMinute99())) {
+            isExecute = true;
+            if (!isUpdateStart) {
+                start = DateUtils.addHours(start, -1);
+            }
+        } else {
+            isExecute = false;
+        }
+
+        if (!isExecute) {
+            log.debug("涓氬姟鏁版嵁鍚屾---鏃堕棿閰嶇疆鍒嗛挓涓嶅尮閰�<<<<<<<<<<<<<-------");
+            return;
+        }
 
         log.debug("涓氬姟鏁版嵁鍚屾---寮�濮嬫煡璇笟鍔℃暟鎹繘琛屽悓姝�<<<<<<<<<<<<<-------");
         ApiParam param = new ApiParam();

--
Gitblit v1.9.3