From 8fe48679e2ebf929fb4a6a35b55d1e2401d61495 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Mon, 29 Dec 2025 17:36:40 +0800
Subject: [PATCH] 1
---
trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java | 25 +++++++++++++++++++++++--
1 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java
index e9e33e8..75e8321 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java
@@ -8,6 +8,7 @@
import com.yami.trading.common.web.ResultObject;
import com.yami.trading.huobi.constants.KlinePeriodEnum;
import com.yami.trading.huobi.data.TimeZoneConverterService;
+import com.yami.trading.huobi.data.internal.KlineService;
import com.yami.trading.huobi.tradingview.service.TradingViewService;
import com.yami.trading.service.data.DataService;
import com.yami.trading.service.item.ItemService;
@@ -50,6 +51,9 @@
@Autowired
RedisTemplate redisTemplate;
+ @Autowired
+ KlineService klineService;
+
@ApiOperation(value = "行情")
@GetMapping("/api/hobi!getKline.action")
@@ -62,13 +66,26 @@
// Fetch item details based on symbol
Item bySymbol = itemService.findBySymbol(symbol);
+ List<Kline> data;
// Handle non-cryptos separately
if (!Item.cryptos.equals(bySymbol.getType())) {
- return getKlineForNonCryptos(bySymbol, line, symbol);
+ if (bySymbol.getType().equalsIgnoreCase(Item.US_STOCKS)) {
+ data = klineService.getKData(bySymbol, line);
+ if (!data.isEmpty()) {
+ System.out.println(data.size());
+ formatKlineTimestamps(data, line);
+ return Result.succeed(this.build(data, line, symbol));
+ } else {
+ return Result.succeed(null);
+ }
+ } else {
+ return getKlineForNonCryptos(bySymbol, line, symbol);
+ }
}
+ data = this.dataService.kline(symbol, line);
// Fetch Kline data from service (for cryptos)
- List<Kline> data = this.dataService.kline(symbol, line);
+
// Return an empty response if no data is found
if (Objects.isNull(data)) {
@@ -169,8 +186,12 @@
case "1week":
case "quarter":
case "year":
+ case "d":
+ case "w":
+ case "m":
return "yyyy-MM-dd";
case "1min":
+ case "1":
return "HH:mm";
default:
return "MM-dd HH:mm";
--
Gitblit v1.9.3