新版仿ok交易所-后端
1
zj
2025-09-30 d4be4cc69f18b01cc39bd3f9dc9497a828848ca8
trading-order-huobi/src/main/java/com.yami.trading.huobi/data/job/StockGetDataJob.java
@@ -2,9 +2,11 @@
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yami.trading.bean.data.domain.Realtime;
import com.yami.trading.bean.data.domain.StockMarket;
import com.yami.trading.bean.item.domain.Item;
import com.yami.trading.common.domain.BaseEntity;
import com.yami.trading.common.util.*;
import com.yami.trading.huobi.data.AdjustmentValueCache;
import com.yami.trading.huobi.data.DataCache;
@@ -64,23 +66,24 @@
        }
        while (true) {
            try {
                List<Item> list = itemService.list().stream().filter(i->"0".equalsIgnoreCase(i.getFake())).collect(Collectors.toList());
                List<Item> list = itemService.list(new LambdaQueryWrapper<>(Item.class).eq(BaseEntity::getDelFlag,0)).stream().filter(i->"0".equalsIgnoreCase(i.getFake())).collect(Collectors.toList());
                // etf 和A股开盘时间是一样的
                String aStocSymbols = list.stream().filter(item ->item.getOpenCloseType() != null &&  item.getOpenCloseType().equalsIgnoreCase(Item.A_STOCKS))
                        .map(Item::getSymbol).collect(Collectors.joining(","));
                String hkStocSymbols = list.stream().filter(item -> item.getOpenCloseType() != null &&item.getOpenCloseType().equalsIgnoreCase(Item.HK_STOCKS)).map(Item::getSymbol).collect(Collectors.joining(","));
//                String aStocSymbols = list.stream().filter(item ->item.getOpenCloseType() != null &&  item.getOpenCloseType().equalsIgnoreCase(Item.A_STOCKS))
//                        .map(Item::getSymbol).collect(Collectors.joining(","));
//                String hkStocSymbols = list.stream().filter(item -> item.getOpenCloseType() != null &&item.getOpenCloseType().equalsIgnoreCase(Item.HK_STOCKS)).map(Item::getSymbol).collect(Collectors.joining(","));
                String usStocSymbols = list.stream().filter(item -> item.getOpenCloseType() != null &&item.getOpenCloseType().equalsIgnoreCase(Item.US_STOCKS)).map(Item::getSymbol).collect(Collectors.joining(","));
                String indicesymbols = list.stream().filter(item -> item.getOpenCloseType() != null &&item.getOpenCloseType().equalsIgnoreCase(Item.indices)).map(Item::getSymbol).collect(Collectors.joining(","));
                if(stockFirstFetch){
                    this.realtimeHandle(aStocSymbols);
                    this.realtimeHandle(hkStocSymbols);
//                    this.realtimeHandle(aStocSymbols);
                    this.realtimeHandle(indicesymbols);
                    this.realtimeHandle(usStocSymbols);
                    stockFirstFetch = false;
                }
                if(MarketOpenChecker.isMarketOpen(Item.A_STOCKS)){
                    this.realtimeHandle(aStocSymbols);
                }
                if(MarketOpenChecker.isMarketOpen(Item.HK_STOCKS)){
                    this.realtimeHandle(hkStocSymbols);
//                if(MarketOpenChecker.isMarketOpen(Item.A_STOCKS)){
//                    this.realtimeHandle(aStocSymbols);
//                }
                if(MarketOpenChecker.isMarketOpen(Item.indices)){
                    this.realtimeHandle(indicesymbols);
                }
                if(MarketOpenChecker.isMarketOpen(Item.US_STOCKS)){
                    this.realtimeHandle(usStocSymbols);