From 69feff48c5b26b01d3d1849d476bc8cd6071b4cd Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 10 Dec 2025 17:33:34 +0800
Subject: [PATCH] feat(okx): 调整交易订单事件处理逻辑

---
 src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/AccountWs.java |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/AccountWs.java b/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/AccountWs.java
index 6254306..f3de1bb 100644
--- a/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/AccountWs.java
+++ b/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/AccountWs.java
@@ -94,6 +94,11 @@
                         JSONObject detail = detailsArray.getJSONObject(j);
 
                         String ccy = detail.getString(CCY_KEY);
+                        if (!CoinEnums.USDT.getCode().equals(ccy)) {
+                            log.warn("账户频道币种不匹配,跳过处理");
+                            continue;
+                        }
+
                         String availBalStr = detail.getString(AVAIL_BAL_KEY);
                         String cashBalStr = detail.getString(CASH_BAL_KEY);
                         String eq = detail.getString(EQ_KEY);
@@ -115,10 +120,11 @@
                         BigDecimal divide = availBal.divide(cashBal, 4, RoundingMode.DOWN);
 
                         String state = (String) redisUtils.get(InstrumentsWs.INSTRUMENTSWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":state");
+                        String out = (String) redisUtils.get(InstrumentsWs.INSTRUMENTSWS_CHANNEL + ":" + CoinEnums.HE_YUE.getCode() + ":out");
                         if (OrderParamEnums.STATE_4.getValue().equals(state)){
                             log.info(OrderParamEnums.STATE_4.getName());
                             state = OrderParamEnums.STATE_4.getValue();
-                        }else if(OrderParamEnums.STATE_3.getValue().equals(state)){
+                        }else if(OrderParamEnums.STATE_3.getValue().equals(state) && OrderParamEnums.OUT_YES.getValue().equals(out)){
                             log.info(OrderParamEnums.STATE_3.getName());
                             state = OrderParamEnums.STATE_3.getValue();
                         }else{

--
Gitblit v1.9.1