From 1e800a4bd40a30bbec8440d129fc16a6cd01c309 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Sat, 20 Dec 2025 00:39:17 +0800
Subject: [PATCH] feat(okxWs): 记录成交均价到账户映射中

---
 src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/OrderInfoWs.java |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/OrderInfoWs.java b/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/OrderInfoWs.java
index ba0ad6b..14f0079 100644
--- a/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/OrderInfoWs.java
+++ b/src/main/java/com/xcong/excoin/modules/okxNewPrice/okxWs/OrderInfoWs.java
@@ -104,15 +104,25 @@
                         accFillSz, avgPx,state, fillFee,posSide
                 );
 
-                String clOrdIdStr = TradeOrderWs.getAccountMap(accountName).get("clOrdId");
+
+                Map<String, String> accountMap = getAccountMap(accountName);
                 String stateStr = TradeOrderWs.getAccountMap(accountName).get("state");
+                boolean longSell = CoinEnums.POSSIDE_LONG.getCode().equals(posSide) && CoinEnums.SIDE_SELL.getCode().equals(side);
+                boolean shortBuy = CoinEnums.POSSIDE_SHORT.getCode().equals(posSide) && CoinEnums.SIDE_BUY.getCode().equals(side);
+                if (
+                        CoinEnums.ORDER_FILLED.getCode().equals(state)
+                            && (longSell || shortBuy)
+                ){
+                    WsMapBuild.saveStringToMap(accountMap, "orderPrice",avgPx);
+                }
+
+                String clOrdIdStr = TradeOrderWs.getAccountMap(accountName).get("clOrdId");
                 if (
                         StrUtil.isNotBlank(clOrdIdStr)
                                 && clOrdId.equals(clOrdIdStr)
                                 && StrUtil.isNotBlank(stateStr)
                                 && state.equals(stateStr)
                 ){
-                    Map<String, String> accountMap = getAccountMap(accountName);
                     //记录成交均价
                     if (accountMap.get("orderPrice") == null){
                         log.info("成交均价: {}", avgPx);

--
Gitblit v1.9.1