From 513e5442723f501525bf9ca6210b16561e5d3a2b Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Tue, 24 Mar 2026 11:41:07 +0800
Subject: [PATCH] 1
---
trading-order-admin/src/main/java/com/yami/trading/admin/task/InitHandle.java | 93 +++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 82 insertions(+), 11 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/admin/task/InitHandle.java b/trading-order-admin/src/main/java/com/yami/trading/admin/task/InitHandle.java
index 2b0ed70..a20823b 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/admin/task/InitHandle.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/admin/task/InitHandle.java
@@ -25,6 +25,7 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Component;
import java.util.Collections;
@@ -48,10 +49,10 @@
protected KlineService klineService;
@Autowired
protected HighLowHandleJob highLowHandleJob;
- @Autowired
- protected StockGetDataJob stockGetDataJob;
- @Autowired
- protected ForexGetDataJob forexGetDataJob;
+// @Autowired 外汇
+// protected StockGetDataJob stockGetDataJob;
+// @Autowired
+// protected ForexGetDataJob forexGetDataJob;
@Autowired
protected CryptosGetDataJob cryptosGetDataJob;
@Autowired
@@ -77,8 +78,8 @@
private RealtimePushJob realtimePushJob;
@Autowired
private CleanDataJob cleanDataJob;
- @Autowired
- private StockGetMarketJob stockGetMarketJob;
+// @Autowired etf
+// private StockGetMarketJob stockGetMarketJob;
/**
* 交割合约持仓单盈亏计算线程启动
*/
@@ -120,7 +121,10 @@
for (Item item : items) {
Realtime realtime = dataDBService.get(item.getSymbol());
if (realtime != null) {
- DataCache.putRealtime(item.getSymbol(), realtime);
+ //停牌时不更新
+ //if (!itemService.isSuspended(item.getSymbol())) {
+ DataCache.putRealtime(item.getSymbol(), realtime);
+ //}
}
}
@@ -135,10 +139,10 @@
klineInitService.klineInit(symbols);
// 高低修正
highLowHandleJob.start();
- stockGetMarketJob.start();
- // 获取realtime实时数据
- stockGetDataJob.start();
- forexGetDataJob.start();
+// stockGetMarketJob.start();
+// // 获取realtime实时数据
+// stockGetDataJob.start();
+// forexGetDataJob.start();
cryptosGetDataJob.start();
fakeSymbolGetDataJob.start();
// 实时数据批量保存线程
@@ -203,6 +207,73 @@
exchangeApplyOrderHandleJob.start();
}
+ @Async
+ public void init() {
+ log.info("开始Data初始化........");
+ itemService.reloadListAndCache();
+ List<Item> items = itemService.list();
+ for (Item item : items) {
+ AdjustmentValueCache.getCurrentValue().put(item.getSymbol(), item.getAdjustmentValue());
+ }
+
+ for (Item item : items) {
+ Realtime realtime = dataDBService.get(item.getSymbol());
+ if (realtime != null) {
+ //停牌时不更新
+ //if (!itemService.isSuspended(item.getSymbol())) {
+ DataCache.putRealtime(item.getSymbol(), realtime);
+ //}
+ }
+ }
+
+ for (Item item : items) {
+ List<Realtime> list = this.dataDBService.findRealtimeOneDay(item.getSymbol());
+ DataCache.getRealtimeHistory().put(item.getSymbol(), list);
+ }
+
+ klineLoadCache.loadCache();
+ String symbols = items.stream().map(Item::getSymbol).collect(Collectors.joining(","));
+ // 数据有问题初始化一下
+ klineInitService.klineInit(symbols);
+ // 高低修正
+ highLowHandleJob.start();
+ cryptosGetDataJob.start();
+ fakeSymbolGetDataJob.start();
+ // 实时数据批量保存线程
+ saveRealtimeServer.start();
+
+ // realtime推送JOB
+ realtimePushJob.start();
+ /**
+ * 最化5档和最新成交数据 火币数据线程
+ */
+ dataServer.start();
+ List<Item> item_list = itemService.list().stream().filter(i -> i.getType().equalsIgnoreCase(Item.cryptos)).collect(Collectors.toList());
+
+ for (int i = 0; i < item_list.size(); i++) {
+ Item item = item_list.get(i);
+ HandleObject depth = new HandleObject();
+ depth.setType(HandleObject.type_depth);
+ depth.setItem(item);
+ DataQueue.add(depth);
+
+ HandleObject trade = new HandleObject();
+ trade.setType(HandleObject.type_trade);
+ trade.setItem(item);
+ DataQueue.add(trade);
+ }
+
+ realtimeWebsocketServer.start();
+ realtimePushJob.start();
+ depthPushJob.start();
+ tradePushJob.start();
+
+ dataFrequencyServer.start();
+ cleanDataJob.taskJob();
+ log.info("完成Data初始化。");
+ }
+
+
public void bulidInit(Item item, String line) {
List<Kline> list = this.klineService.find(item.getSymbol(), line, Integer.MAX_VALUE);
--
Gitblit v1.9.3