From b28a97e1bf66e3279e78f31ce58122427787ceec Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Thu, 11 Jun 2026 09:44:20 +0800
Subject: [PATCH] 1
---
trading-order-huobi/src/main/java/com.yami.trading.huobi/data/internal/AdjustmentValueServiceImpl.java | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/trading-order-huobi/src/main/java/com.yami.trading.huobi/data/internal/AdjustmentValueServiceImpl.java b/trading-order-huobi/src/main/java/com.yami.trading.huobi/data/internal/AdjustmentValueServiceImpl.java
index 9f6f207..73847dc 100644
--- a/trading-order-huobi/src/main/java/com.yami.trading.huobi/data/internal/AdjustmentValueServiceImpl.java
+++ b/trading-order-huobi/src/main/java/com.yami.trading.huobi/data/internal/AdjustmentValueServiceImpl.java
@@ -35,7 +35,7 @@
BigDecimal new_price = realtime.getClose();
BigDecimal plus = value.abs();
// if (plus.divide(new_price, 2, RoundingMode.HALF_UP).compareTo(new BigDecimal("0.1")) > 0) {
-// throw new YamiShopBindException("调整偏差过大,超过10%");
+// throw new YamiShopBindException("Adjustment deviation too large, exceeds 10%");
// }
if (second <= 0) {
@@ -50,15 +50,17 @@
} else {
AdjustmentValueCache.getCurrentValue().put(symbol, currentValue.add(value));
}
- // 马上扣除价格,避免因为数据没有拉取导致加不正确
- realtime.setClose(realtime.getClose().add(value));
/*
- * 持久化缓存
+ * 持久化到品种表(重启后 InitHandle 会加载到 AdjustmentValueCache)
*/
Item item = this.itemService.findBySymbol(symbol);
- if (item.getAdjustmentValue().compareTo(AdjustmentValueCache.getCurrentValue().get(symbol)) != 0) {
- item.setAdjustmentValue(AdjustmentValueCache.getCurrentValue().get(symbol));
- itemService.saveOrUpdate(item);
+ BigDecimal cachedAdjust = AdjustmentValueCache.getCurrentValue().get(symbol);
+ if (item != null && cachedAdjust != null) {
+ BigDecimal itemAdjust = item.getAdjustmentValue();
+ if (itemAdjust == null || itemAdjust.compareTo(cachedAdjust) != 0) {
+ item.setAdjustmentValue(cachedAdjust);
+ itemService.saveOrUpdate(item);
+ }
}
} else {
--
Gitblit v1.9.3