From 7506f90e394eaee4a137cb071f8485204c39fbd1 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 26 Dec 2025 09:53:26 +0800
Subject: [PATCH] fix(symbols): 解决OKX-KLINE数据加载中instId大小写问题

---
 src/main/java/com/xcong/excoin/quartz/job/KlineDataUpdateJob.java |  125 +++++++++++------------------------------
 1 files changed, 35 insertions(+), 90 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/quartz/job/KlineDataUpdateJob.java b/src/main/java/com/xcong/excoin/quartz/job/KlineDataUpdateJob.java
index 29be0f6..1553646 100644
--- a/src/main/java/com/xcong/excoin/quartz/job/KlineDataUpdateJob.java
+++ b/src/main/java/com/xcong/excoin/quartz/job/KlineDataUpdateJob.java
@@ -1,6 +1,7 @@
 package com.xcong.excoin.quartz.job;
 
 import com.xcong.excoin.modules.symbols.service.SymbolsService;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
@@ -13,139 +14,83 @@
  * @date 2020-05-26
  **/
 @Component
+@ConditionalOnProperty(prefix = "app", name = "kline-update-job", havingValue = "true")
 public class KlineDataUpdateJob {
 
     @Resource
     private SymbolsService symbolsService;
 
 
-    private static boolean min1 = true;
-    private static boolean min5 = true;
-    private static boolean min30 = true;
-    private static boolean min60 = true;
-    private static boolean hour4 = true;
-    private static boolean day1 = true;
-    private static boolean week = true;
-
-
     /**
      * 定时更新每一分钟的K线数据
      */
-    @Scheduled(cron = "0/1 * * * * ? ")
+    @Scheduled(cron = "0/10 * * * * ? ")
     public void updateSymbolsKineOneMin() {
-        if (min1) {
-            min1 = false;
-            try {
-                symbolsService.updateSymbolsKine("1min");
-            } catch (Exception e) {
-                // e.printStackTrace();
-            } finally {
-                min1 = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("1m");
     }
 
     /**
-     * 定时更新每十分钟的K线数据
+     * 定时更新每5分钟的K线数据
      */
-    @Scheduled(cron = "0/10 * * * * ? ")
+    @Scheduled(cron = "0 0/5 * * * ?")
     public void updateSymbolsKineFiveMin() {
-        if (min5) {
-            min5 = false;
-            try {
-                symbolsService.updateSymbolsKine("5min");
-            } catch (Exception e) {
-                //e.printStackTrace();
-            } finally {
-                min5 = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("5m");
     }
 
     /**
      * 定时更新每30分钟的K线数据
      */
-    @Scheduled(cron = "0/120 * * * * ? ")
+    @Scheduled(cron = "0 0/15 * * * ?")
     public void updateSymbolsKineMin() {
-        if (min30) {
-            min30 = false;
-            try {
-                symbolsService.updateSymbolsKine("30min");
-            } catch (Exception e) {
-                //e.printStackTrace();
-            } finally {
-                min30 = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("15m");
+    }
+
+    /**
+     * 定时更新每30分钟的K线数据
+     */
+    @Scheduled(cron = "0 0/30 * * * ?")
+    public void updateSymbolsKineMin30() {
+        symbolsService.updateSymbolsKine("30m");
     }
 
     /**
      * 定时更新1小时的K线数据
      */
-    @Scheduled(cron = "* 0/2 * * * ? ")
+    @Scheduled(cron = "0 0 * * * ?")
     public void updateSymbolsKineOneHour() {
-        if (min60) {
-            min60 = false;
-            try {
-                symbolsService.updateSymbolsKine("60min");
-            } catch (Exception e) {
-                //e.printStackTrace();
-            } finally {
-                min60 = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("1H");
     }
 
     /**
-     * 定时更新4小时的K线数据
+     * 定时更新1小时的K线数据
      */
-    @Scheduled(cron = "* 0/1 * * * ? ")
-    public void updateSymbolsKineFourHour() {
-        if (hour4) {
-            hour4 = false;
-            try {
-                symbolsService.updateSymbolsKine("4hour");
-            } catch (Exception e) {
-                //e.printStackTrace();
-            } finally {
-                hour4 = true;
-            }
-        }
+    @Scheduled(cron = "0 0 * * * ?")
+    public void updateSymbolsKineTwoHour() {
+        symbolsService.updateSymbolsKine("2H");
     }
 
+    /**
+     * 定时更新1小时的K线数据
+     */
+    @Scheduled(cron = "0 0 * * * ?")
+    public void updateSymbolsKinefourHour() {
+        symbolsService.updateSymbolsKine("4H");
+    }
 
     /**
      * 定时更新1天的K线数据
      */
-    @Scheduled(cron = "* 0/1 * * * ? ")
+    @Scheduled(cron = "0 0 * * * ?")
     public void updateSymbolsKineOneDay() {
-        if (day1) {
-            day1 = false;
-            try {
-                symbolsService.updateSymbolsKine("1day");
-            } catch (Exception e) {
-                //e.printStackTrace();
-            } finally {
-                day1 = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("1D");
     }
 
     /**
-     * 定时更新1周的K线数据
+     * 定时更新1天的K线数据
      */
-    @Scheduled(cron = "* 0/1 * * * ? ")
+    @Scheduled(cron = "0 0 * * * ?")
     public void updateSymbolsKineOneWeek() {
-        if (week) {
-            week = false;
-            try {
-                symbolsService.updateSymbolsKine("1week");
-            } catch (Exception e) {
-                // e.printStackTrace();
-            } finally {
-                week = true;
-            }
-        }
+        symbolsService.updateSymbolsKine("1W");
     }
 
 }

--
Gitblit v1.9.1