新版仿ok交易所-后端
zyy
2025-10-28 e84b3c45f7ecef39926b582b10d03b30ff77ee95
trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimePushJob.java
@@ -12,6 +12,7 @@
import com.yami.trading.common.web.ResultObject;
import com.yami.trading.huobi.data.AdjustmentValueCache;
import com.yami.trading.huobi.data.DataCache;
import com.yami.trading.huobi.data.internal.DataDBService;
import com.yami.trading.service.item.ItemService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@@ -30,6 +31,8 @@
public class RealtimePushJob implements Runnable {
    @Autowired
    private ItemService itemService;
    @Autowired
    DataDBService dataDBService;
    public void start() {
        new Thread(this, "realtimePushJob").start();
@@ -114,7 +117,7 @@
        map.put("timestamp", realtime.getTs());
        map.put("current_time", realtime.getCurrentTime());
        map.put("name", realtime.getName());
        map.put("change_ratio", realtime.getChangeRatio());
        map.put("change_ratio", dataDBService.getChangeRatio(realtime, symbol));
        map.put("netChange", realtime.getNetChange());
        map.put("open", realtime.getOpen());
        map.put("close", realtime.getClose());
@@ -122,9 +125,16 @@
        map.put("low", realtime.getLow());
        BigDecimal currentValue = AdjustmentValueCache.getCurrentValue().get(symbol);
        if (currentValue != null) {
        /*if (currentValue != null) {
            map.put("low", realtime.getLow().add(currentValue));
        }
        if (currentValue != null) {
            BigDecimal newLow = realtime.getLow().add(currentValue);
            if (newLow.compareTo(realtime.getHigh()) > 0) {
                map.put("high", realtime.getHigh().add(currentValue));
            }
            map.put("low", newLow);
        }*/
        if( realtime.getVolume() != null){
            map.put("volume", realtime.getVolume().setScale(2, RoundingMode.HALF_UP));
@@ -171,9 +181,13 @@
                map.put("high", high != null ? high.setScale(decimal, RoundingMode.HALF_UP) : null);
                BigDecimal low = realtime.getLow();
                map.put("low", low != null ? low.setScale(decimal, RoundingMode.HALF_UP) : null);
                if (currentValue != null) {
                    map.put("low", low != null ? low.add(currentValue).setScale(decimal, RoundingMode.HALF_UP) : null);
                }
                /*if (currentValue != null) {
                    BigDecimal newLow = low != null ? low.add(currentValue).setScale(decimal, RoundingMode.HALF_UP) : BigDecimal.ZERO;
                    if (newLow.compareTo(high) > 0) {
                        map.put("high", high.add(currentValue).setScale(decimal, RoundingMode.HALF_UP));
                    }
                    map.put("low", newLow);
                }*/
            }
        }