From c49fb826133d2e853e5d9a2558166ae223ff6fcc Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 12 Dec 2025 13:27:12 +0800
Subject: [PATCH] fix(okxNewPrice): 修复保证金和盈亏计算逻辑
---
src/main/java/com/xcong/excoin/modules/okxNewPrice/utils/WsMapBuild.java | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/modules/okxNewPrice/utils/WsMapBuild.java b/src/main/java/com/xcong/excoin/modules/okxNewPrice/utils/WsMapBuild.java
index c17fce5..50752e2 100644
--- a/src/main/java/com/xcong/excoin/modules/okxNewPrice/utils/WsMapBuild.java
+++ b/src/main/java/com/xcong/excoin/modules/okxNewPrice/utils/WsMapBuild.java
@@ -3,9 +3,11 @@
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
+import com.xcong.excoin.modules.okxNewPrice.okxWs.enums.CoinEnums;
import lombok.extern.slf4j.Slf4j;
import java.math.BigDecimal;
+import java.math.RoundingMode;
import java.util.Map;
/**
@@ -40,6 +42,19 @@
if (value == null || value.isEmpty()) {
return new BigDecimal(0);
}
- return new BigDecimal(value);
+ return new BigDecimal(value).setScale(Integer.parseInt(CoinEnums.TICKSZ.getCode()), RoundingMode.DOWN);
+ }
+
+ /**
+ * 安全地将字符串解析为 BigDecimal 类型
+ *
+ * @param value 字符串数值
+ * @return 解析后的 BigDecimal 对象,若解析失败则返回 null
+ */
+ public static String parseStringSafe(String value) {
+ if (value == null || value.isEmpty()) {
+ return "0";
+ }
+ return value;
}
}
--
Gitblit v1.9.1