From 539f733f62f4a368eb90a07a729b5d948378a705 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Sat, 19 Jul 2025 18:29:07 +0800
Subject: [PATCH] 后台新增建仓列表 新股列表新增购买状态

---
 src/main/java/com/nq/service/impl/StockAiServiceImpl.java |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/StockAiServiceImpl.java b/src/main/java/com/nq/service/impl/StockAiServiceImpl.java
index f184062..6d354a4 100644
--- a/src/main/java/com/nq/service/impl/StockAiServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/StockAiServiceImpl.java
@@ -3,7 +3,6 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
-import com.nq.Repository.ExchangeRateRepository;
 import com.nq.common.ResponseCode;
 import com.nq.common.ServerResponse;
 import com.nq.dao.StockAiMapper;
@@ -12,6 +11,7 @@
 import com.nq.enums.*;
 import com.nq.pojo.*;
 import com.nq.service.*;
+import com.nq.vo.stock.ai.StockAIOrderPositionVO;
 import com.nq.vo.stock.ai.StockAiOrderTypeVO;
 import com.nq.vo.stock.ai.StockAiOrderVO;
 import com.nq.vo.stock.ai.StockAiVO;
@@ -126,7 +126,7 @@
                 iUserAssetsServices.aiAvailableBalanceChange(stockAI.getStockType(), user.getId(), EUserAssets.BUY_AI, buyNum);
                 StockAIOrder stockAIOrder = new StockAIOrder();
                 stockAIOrder.setUserId(user.getId());
-                stockAIOrder.setStockAiId(id);
+                stockAIOrder.setStockAiId(id.intValue());
                 stockAIOrder.setBuyDate(new Date());
                 stockAIOrder.setBuyAmount(buyNum);
                 stockAIOrder.setRemainAmount(buyNum);
@@ -292,6 +292,7 @@
                 BigDecimal earnings = model.getCoverPrice().subtract(model.getStockPrice()).multiply(BigDecimal.valueOf(model.getStockNum()));
                 model.setCreatDate(new Date());
                 model.setEarnings(earnings);
+                model.setStatus(0);
                 stockAIOrder.setRealEarning(stockAIOrder.getRealEarning().add(earnings));
 
                 //保存
@@ -335,6 +336,7 @@
                     }
                     //结算 TODO结算建仓 计算收益
                     /*//所有建仓
+
                     List<StockAIOrderPosition> stockAIOrderPositionList = stockAiOrderPositionMapper
                             .selectList(new QueryWrapper<StockAIOrderPosition>()
                                     .eq("stock_ai_order_id", id));
@@ -349,6 +351,8 @@
                         amount = amount.add(earningsSUM);
                     }*/
                     StockAI stockAI = stockAiMapper.selectById(stockAIOrder.getStockAiId());
+                    //结算修改为平仓状态
+                    stockAiOrderPositionMapper.updateStatusByOrderId(stockAIOrder.getId(), 1);
                     //归还本金
                     iUserAssetsServices.aiAvailableBalanceChange(stockAI.getStockType(), stockAIOrder.getUserId(), EUserAssets.AI_SETTLEMENT, stockAIOrder.getBuyAmount());
                     //收益
@@ -364,4 +368,25 @@
         }
         return ServerResponse.createByError();
     }
+
+    /**
+     * 建仓列表
+     * 建仓列表
+     * @param pageNum
+     * @param pageSize
+     * @param stockAiOrderId
+     * @return
+     */
+    @Override
+    public ServerResponse getPositionList(Integer pageNum, Integer pageSize, Integer stockAiOrderId) {
+        try {
+            PageHelper.startPage(pageNum, pageSize);
+            List<StockAIOrderPositionVO> positionVOList = stockAiOrderPositionMapper.getPositionListByOrderId(stockAiOrderId);
+            PageInfo<StockAIOrderPositionVO> pageInfo = new PageInfo<>(positionVOList);
+            return ServerResponse.createBySuccess(pageInfo);
+        } catch (Exception e) {
+            log.error("StockAiService getPositionList error", e);
+        }
+        return ServerResponse.createByError();
+    }
 }

--
Gitblit v1.9.3