From deda94f94f5af2c820c6b600f0f7e2b041248434 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 27 Jan 2026 19:03:23 +0800
Subject: [PATCH] 1

---
 src/main/resources/mapper/UserPositionMapper.xml       |    5 +++++
 src/main/java/com/nq/dao/UserPositionMapper.java       |    1 +
 src/main/java/com/nq/service/impl/UserServiceImpl.java |    3 ++-
 3 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/nq/dao/UserPositionMapper.java b/src/main/java/com/nq/dao/UserPositionMapper.java
index ca19bed..65765e3 100644
--- a/src/main/java/com/nq/dao/UserPositionMapper.java
+++ b/src/main/java/com/nq/dao/UserPositionMapper.java
@@ -51,4 +51,5 @@
 
   List<UserPosition> synchronizePrice();
 
+  BigDecimal CountPositionAllProfitAndLoseByUserId(@Param("userId") Integer userId);
 }
diff --git a/src/main/java/com/nq/service/impl/UserServiceImpl.java b/src/main/java/com/nq/service/impl/UserServiceImpl.java
index 9f6512e..b647890 100644
--- a/src/main/java/com/nq/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserServiceImpl.java
@@ -1830,7 +1830,8 @@
         PositionVO positionVO = this.iUserPositionService.findUserPositionAllProfitAndLose(user.getId());
         userInfoVO.setAllFreezAmt(positionVO.getAllFreezAmt());
         BigDecimal allProfitAndLose = positionVO.getAllProfitAndLose();
-        userInfoVO.setAllProfitAndLose(allProfitAndLose);
+        BigDecimal profitAndLose = this.userPositionMapper.CountPositionAllProfitAndLoseByUserId(user.getId());
+        userInfoVO.setAllProfitAndLose(allProfitAndLose.add(profitAndLose));
 
 //        BigDecimal userAllAmt = user.getUserAmt();
         BigDecimal userAllAmt = user.getEnableAmt();
diff --git a/src/main/resources/mapper/UserPositionMapper.xml b/src/main/resources/mapper/UserPositionMapper.xml
index 67df1d3..507576f 100644
--- a/src/main/resources/mapper/UserPositionMapper.xml
+++ b/src/main/resources/mapper/UserPositionMapper.xml
@@ -549,6 +549,11 @@
     WHERE sell_order_id is not null
   </select>
 
+  <select id="CountPositionAllProfitAndLoseByUserId" resultType="decimal" parameterType="integer">
+    SELECT sum(all_profit_and_lose) FROM user_position
+    WHERE sell_order_id is not null and user_id = #{userId}
+  </select>
+
 
   <delete id="deleteByUserId" parameterType="integer">
     DELETE FROM user_position WHERE user_id = #{userId}

--
Gitblit v1.9.3