trading-order-admin/src/main/java/com/yami/trading/admin/task/RealtimePushJob.java
@@ -10,6 +10,7 @@ import com.yami.trading.common.util.MarketOpenChecker; import com.yami.trading.common.util.ThreadUtils; 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.service.item.ItemService; import lombok.extern.slf4j.Slf4j; @@ -119,6 +120,12 @@ map.put("close", realtime.getClose()); map.put("high", realtime.getHigh()); map.put("low", realtime.getLow()); BigDecimal currentValue = AdjustmentValueCache.getCurrentValue().get(symbol); if (currentValue != null) { map.put("low", realtime.getLow().add(currentValue)); } if( realtime.getVolume() != null){ map.put("volume", realtime.getVolume().setScale(2, RoundingMode.HALF_UP)); }else{ trading-order-admin/src/main/java/com/yami/trading/admin/task/TradePushJob.java
@@ -149,8 +149,13 @@ tradeEntry_map.put("direction", direction); tradeEntry_map.put("ts", tradeEntry.getTs()); tradeEntry_map.put("current_time", tradeEntry.getCurrent_time()); double addPriceValue = getRandomValue((int)tradeEntry.getPrice().doubleValue()); double addPriceValue; if ((int)tradeEntry.getPrice().doubleValue() == 0) { addPriceValue = 0; } else { addPriceValue = getRandomValue((int)tradeEntry.getPrice().doubleValue()); } double addAmountValue = getRandomValue((int)tradeEntry.getAmount().doubleValue()); double price = Arith.add(tradeEntry.getPrice(), addPriceValue); trading-order-admin/src/main/java/com/yami/trading/api/controller/RealtimeController.java
@@ -29,6 +29,7 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -80,9 +81,30 @@ d.setAmount(d.getAmount().setScale(2, RoundingMode.HALF_UP)); } d.setSymbolData(bySymbol.getSymbolData()); }); return Result.ok(data); List<Realtime> result = new ArrayList<>(); if (!data.isEmpty()) { Realtime realtime = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("btcusdt")).findFirst().orElse(null); if (realtime != null) { result.add(realtime); data.remove(realtime); } Realtime realtime2 = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("ethusdt")).findFirst().orElse(null); if (realtime2 != null) { result.add(realtime2); data.remove(realtime2); } Realtime realtime3 = data.stream().filter(x -> x.getSymbol().equalsIgnoreCase("xrpusdt")).findFirst().orElse(null); if (realtime3 != null) { result.add(realtime3); data.remove(realtime3); } if (!data.isEmpty()) { result.addAll(data); } } return Result.ok(result); } catch (Exception e) { log.error("c", e); throw new YamiShopBindException("生成实时数据失败");