1
zj
yesterday 5e57de9b12ee136e45ce5754c7fe2e7eb12af05a
trading-order-admin/src/main/java/com/yami/trading/api/controller/KlineController.java
@@ -10,6 +10,7 @@
import com.yami.trading.huobi.data.TimeZoneConverterService;
import com.yami.trading.huobi.tradingview.service.TradingViewService;
import com.yami.trading.service.data.DataService;
import com.yami.trading.service.item.ItemPreMarketService;
import com.yami.trading.service.item.ItemService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -37,6 +38,8 @@
public class KlineController {
    @Autowired
    private ItemService itemService;
    @Autowired
    private ItemPreMarketService itemPreMarketService;
    @Autowired
    @Qualifier("dataService")
    private DataService dataService;
@@ -69,6 +72,7 @@
            // Fetch Kline data from service (for cryptos)
            List<Kline> data = this.dataService.kline(symbol, line);
            itemPreMarketService.applyPreMarketToLatestKline(symbol, data);
            // Return an empty response if no data is found
            if (Objects.isNull(data)) {
@@ -109,6 +113,7 @@
        if (cachedData != null && lastUpdateTime != null) {
            long currentTime = System.currentTimeMillis();
            if ((currentTime - lastUpdateTime) <= TimeUnit.MINUTES.toMillis(5)) {
                itemPreMarketService.applyPreMarketToLatestKline(symbol, cachedData);
                return Result.succeed(this.build(cachedData, twForLine, symbol));
            }
        }
@@ -122,6 +127,7 @@
        // Format Kline data timestamps
        formatKlineTimestamps(data, line);
        itemPreMarketService.applyPreMarketToLatestKline(symbol, data);
        return Result.succeed(this.build(data, line, symbol));
    }