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/UserPositionServiceImpl.java |   37 +++++++++++++++----------------------
 1 files changed, 15 insertions(+), 22 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index f62dfe2..5baa652 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -132,9 +132,9 @@
         SiteProduct siteProduct = iSiteProductService.getProductSetting();
 
         User user = this.iUserService.getCurrentRefreshUser(request);
-        if (siteProduct.getRealNameDisplay() && user.getIsActive() != 2) {
-            return ServerResponse.createByErrorMsg("订单失败,请先实名认证", request);
-        }
+//        if (siteProduct.getRealNameDisplay() && user.getIsActive() != 2) {
+//            return ServerResponse.createByErrorMsg("订单失败,请先实名认证", request);
+//        }
         // 手续费率
         BigDecimal siteSettingBuyFee = new BigDecimal(iStockConfigServices.queryByKey(EConfigKey.BUY_HANDLING_CHARGE.getCode()).getCValue()) ;
 
@@ -158,17 +158,12 @@
             }
         }
 
-       StockConfig mainBuyConfig =  iStockConfigServices.queryByKey(EConfigKey.MIN_BUY.getCode());
-
-        if(buyNum<Integer.parseInt(mainBuyConfig.getCValue())){
-            return ServerResponse.createByErrorMsg("最低购买数量"+mainBuyConfig.getCValue(), request);
+        SiteSetting siteSetting = iSiteSettingService.getSiteSetting();
+        if(buyNum<siteSetting.getBuyMinNum()){
+            return ServerResponse.createByErrorMsg("最低购买数量"+siteSetting.getBuyMinNum(), request);
         }
-
         UserAssets userAssets = iUserAssetsServices.assetsByTypeAndUserId(stock.getStockType(), user.getId());
-        StockConfig maxBuyConfig =  iStockConfigServices.queryByKey(EConfigKey.MAX_BUY.getCode());
-        if(buyNum<Integer.parseInt(mainBuyConfig.getCValue())){
-            return ServerResponse.createByErrorMsg("最高购买数量"+maxBuyConfig.getCValue(), request);
-        }
+
         if(userAssets.getAmountToBeCovered().compareTo(BigDecimal.ZERO) > 0){
             return ServerResponse.createByErrorMsg("请先缴清待补资金", request);
         }
@@ -190,11 +185,9 @@
         BigDecimal buyAmt = nowPrice.multiply(new BigDecimal(buyNum)).divide(new BigDecimal(lever));
         BigDecimal orderFree = siteSettingBuyFee.multiply(buyAmt);
 
-//        BigDecimal   fundratio = new BigDecimal(user.getFundRatio()).divide(new BigDecimal(100));
-//        BigDecimal availableBalance =  fundratio.multiply(userAssets.getAvailableBalance());
-//        if (availableBalance.compareTo(buyAmt.add(orderFree)) < 0) {
-//            return ServerResponse.createByErrorMsg("订单失败,配资不足", request);
-//        }
+        if (userAssets.getAvailableBalance().compareTo(buyAmt.add(orderFree)) < 0) {
+            return ServerResponse.createByErrorMsg("订单失败,余额不足", request);
+        }
         UserPosition userPosition = new UserPosition();
         if (profitTarget != null && profitTarget.compareTo(new BigDecimal("0")) > 0) {
             userPosition.setProfitTargetPrice(profitTarget);
@@ -1562,19 +1555,19 @@
         if (siteProduct.getRealNameDisplay() && user.getIsLock().intValue() == 1) {
             return ServerResponse.createByErrorMsg("Order failed, account has been locked");
         }
-        UserAssets userAssets = userAssetsServices.assetsByTypeAndUserId("JP", user.getId());
+        //价格处理
+        StockDz stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("stock_code", stockCode));
+        Stock stock = stockMapper.selectOne(new QueryWrapper<Stock>().eq("stock_code", stockDz.getStockCode()));
+        UserAssets userAssets = userAssetsServices.assetsByTypeAndUserId(stock.getStockType(), user.getId());
         if(userAssets.getAmountToBeCovered().compareTo(BigDecimal.ZERO) > 0){
             return ServerResponse.createByErrorMsg("请先缴清待补资金", request);
         }
-        StockDz stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("stock_code", stockCode));
         if (!Objects.equals(stockDz.getPassword(), password)) {
             return ServerResponse.createByErrorMsg("密码错误", request);
         }
         if (stockDz.getIsLock() != 0) {
             return ServerResponse.createByErrorMsg("股票被锁定,不能购买", request);
         }
-        //价格处理
-        Stock stock = stockMapper.selectOne(new QueryWrapper<Stock>().eq("stock_code", stockDz.getStockCode()));
 
         if(stockDz.getStartTime().getTime() > new Date().getTime() || stockDz.getEndTime().getTime() < new Date().getTime()){
             return ServerResponse.createByErrorMsg("不在内幕交易时间之内", request);
@@ -1626,7 +1619,7 @@
 
         userPosition.setOrderSpread(BigDecimal.ZERO);
         userPositionMapper.insert(userPosition);
-        userAssetsServices.availablebalanceChange(EStockType.JP.getCode(), user.getId(), EUserAssets.BUY, buyAmt.negate(),"","");
+        userAssetsServices.availablebalanceChange(userAssets.getAccectType(), user.getId(), EUserAssets.BUY, buyAmt.negate(),"","");
         return ServerResponse.createBySuccess("购买成功", request);
     }
 

--
Gitblit v1.9.3