From 57c2b6875b5f026a1432f3209471d6b4503f43fc Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 29 Oct 2024 13:35:05 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java |   19 +++++++++++--------
 1 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java b/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
index 91e7c44..0d7333b 100644
--- a/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
@@ -1,14 +1,12 @@
 package com.nq.service.impl;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.nq.common.ServerResponse;
-import com.nq.dao.StockSubscribeMapper;
-import com.nq.dao.UserAssetsMapper;
-import com.nq.dao.UserMapper;
-import com.nq.dao.UserStockSubscribeMapper;
+import com.nq.dao.*;
 import com.nq.enums.EStockType;
 import com.nq.enums.EUserAssets;
 import com.nq.pojo.*;
@@ -70,6 +68,9 @@
     @Autowired
     UserAssetsMapper userAssetsMapper;
 
+    @Autowired
+    StockMapper stockMapper;
+
     /**
      * 用户新股申购
      * @param model
@@ -82,8 +83,9 @@
         if (model == null) {
             return ServerResponse.createByErrorMsg("参数错误",request);
         }
+        Stock stock = stockMapper.selectOne(new LambdaQueryWrapper<>(Stock.class).eq(Stock::getStockCode, model.getNewCode()));
         User user = iUserService.getCurrentRefreshUser(request);
-        UserAssets userAssets =   iUserAssetsServices.assetsByTypeAndUserId("JP",user.getId());
+        UserAssets userAssets =   iUserAssetsServices.assetsByTypeAndUserId(stock.getStockType(),user.getId());
         if (model.getNewCode() != null) {
             StockSubscribe stockSubscribe = stockSubscribeMapper.selectOne(new QueryWrapper<StockSubscribe>()
                     .eq("code", model.getNewCode()).eq("type",model.getType()));
@@ -152,7 +154,7 @@
                 model.setType(stockSubscribe.getType());
                 model.setDbMoney(BigDecimal.ZERO);
                 ret = userStockSubscribeMapper.insert(model);
-                iUserAssetsServices.availablebalanceChange(EStockType.JP.getCode(), user.getId(),EUserAssets.BUY,bound.negate(),"","");
+                iUserAssetsServices.availablebalanceChange(stock.getStockType(), user.getId(),EUserAssets.BUY,bound.negate(),"","");
                 if (ret > 0) {
                     return ServerResponse.createBySuccessMsg("配售成功",request);
                 } else {
@@ -191,12 +193,13 @@
             if((model.getStatus() == 3 && model.getApplyNumber() == null) || (model.getStatus() == 3 && model.getApplyNumber() == 0) ){
                 return ServerResponse.createByErrorMsg("中签数量不能小于0");
             }
+            Stock stock = stockMapper.selectOne(new LambdaQueryWrapper<>(Stock.class).eq(Stock::getStockCode, stockSubscribe.getCode()));
             if (model.getStatus() == 3 && model.getApplyNumber() != null){
                 if(stockSubscribe.getType() == 1){
                     model.setBond(stockSubscribe.getPrice().multiply(BigDecimal.valueOf(model.getApplyNumber())));
                     model.setDbMoney(model.getDbMoney());
                     //客户中签直接扣除客户账户可用资金
-                    UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId("JP", userStockSubscribe.getUserId());
+                    UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(stock.getStockType(), userStockSubscribe.getUserId());
                     if(null == userAssets){
                         return ServerResponse.createByErrorMsg("客户资金账户不存在");
                     }
@@ -217,7 +220,7 @@
                     }
                     BigDecimal cCount = new BigDecimal(model.getApplyNums()-model.getApplyNumber());
                     BigDecimal tMoney = stockSubscribe.getPrice().multiply(cCount);
-                    iUserAssetsServices.availablebalanceChange(EStockType.JP.getCode(),userStockSubscribe.getUserId(),
+                    iUserAssetsServices.availablebalanceChange(stock.getStockType(),userStockSubscribe.getUserId(),
                             EUserAssets.TOP_UP,tMoney,"","");
                     model.setBond(stockSubscribe.getPrice().multiply(BigDecimal.valueOf(model.getApplyNumber())));
                     model.setDbMoney(BigDecimal.ZERO);

--
Gitblit v1.9.3