1
zyy3
2025-11-05 91bbc719126310f09031e55967c059c0a01f20b1
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,21 @@
            // 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);
                    formatKlineTimestamps(data, line);
                    return Result.succeed(this.build(data, line, symbol));
                } 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)) {