From cf4abf670a2fea1151c136e9bdf0c7fcedca27e9 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Fri, 26 Apr 2024 16:27:50 +0800
Subject: [PATCH] 1

---
 src/main/java/com/nq/service/IEchoServices.java          |    3 
 target/classes/mapper/EchoMapper.xml                     |   23 -------
 src/main/resources/mapper/EchoMapper.xml                 |   23 -------
 src/main/java/com/nq/controller/echo/EChoController.java |   22 ++++++
 src/main/java/com/nq/service/impl/EchoServices.java      |    6 +-
 src/main/java/com/nq/pojo/EChoBean.java                  |   48 ----------------
 src/main/java/com/nq/service/impl/PriceServicesImpl.java |    5 +
 src/main/java/com/nq/dao/EChoMapper.java                 |    5 -
 8 files changed, 28 insertions(+), 107 deletions(-)

diff --git a/src/main/java/com/nq/controller/echo/EChoController.java b/src/main/java/com/nq/controller/echo/EChoController.java
index 8db1b85..bb854da 100644
--- a/src/main/java/com/nq/controller/echo/EChoController.java
+++ b/src/main/java/com/nq/controller/echo/EChoController.java
@@ -2,8 +2,13 @@
 
 import com.nq.common.ServerResponse;
 import com.nq.dao.EChoMapper;
+import com.nq.dao.UserAssetsMapper;
 import com.nq.pojo.EChoBean;
+import com.nq.pojo.User;
+import com.nq.pojo.UserAssets;
 import com.nq.service.IEchoServices;
+import com.nq.service.IUserService;
+import com.nq.service.impl.UserAssetsServices;
 import com.nq.utils.translate.GoogleTranslateUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -13,6 +18,8 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.servlet.http.HttpServletRequest;
+import java.math.BigDecimal;
+import java.math.BigInteger;
 
 /**
  * 利息报接口
@@ -27,6 +34,12 @@
     @Autowired
     EChoMapper eChoMapper;
 
+    @Autowired
+    UserAssetsServices userAssetsServices;
+
+    @Autowired
+    IUserService iUserService;
+
     @PostMapping("queryEcho.do")
     @ResponseBody
     public ServerResponse queryEcho() {
@@ -36,15 +49,20 @@
 
     @PostMapping("buyEcho.do")
     @ResponseBody
-    public ServerResponse buyEcho(@RequestParam("eId") String eid, @RequestParam("money") Integer money, HttpServletRequest request) {
+    public ServerResponse buyEcho(@RequestParam("eId") String eid, @RequestParam("money") BigDecimal money, HttpServletRequest request) {
         EChoBean eChoBean = eChoMapper.selectById(Integer.parseInt(eid));
         if (eChoBean == null) {
             return ServerResponse.createByErrorMsg("基金产品不存在",request);
         } else {
-            if (null != eChoBean.getBuyLowestNum() && money < eChoBean.getBuyLowestNum()) {
+            if (null != eChoBean.getBuyLowestNum() && money.compareTo(new BigDecimal(eChoBean.getBuyLowestNum())) < 0) {
                 return ServerResponse.createByErrorMsg("购买失败,最低购买数量:"+eChoBean.getBuyLowestNum(),request);
             }
         }
+        User user = this.iUserService.getCurrentRefreshUser(request);
+        UserAssets userAssets = userAssetsServices.assetsByTypeAndUserId("IN", user.getId());
+        if(userAssets.getAvailableBalance().compareTo(money) < 0){
+            return ServerResponse.createByErrorMsg("配资不足",request);
+        }
         if (iEchoServices.buyECho(eid, money,request)) {
             return ServerResponse.createBySuccess("购买成功",request);
         } else {
diff --git a/src/main/java/com/nq/dao/EChoMapper.java b/src/main/java/com/nq/dao/EChoMapper.java
index f1f61fa..6ec57f5 100644
--- a/src/main/java/com/nq/dao/EChoMapper.java
+++ b/src/main/java/com/nq/dao/EChoMapper.java
@@ -10,9 +10,4 @@
 @Mapper
 @Repository
 public interface EChoMapper extends BaseMapper<EChoBean> {
-
-
-
-
-    List<EChoBean>  selectQueryAll();
 }
diff --git a/src/main/java/com/nq/pojo/EChoBean.java b/src/main/java/com/nq/pojo/EChoBean.java
index a46c0c9..2f64408 100644
--- a/src/main/java/com/nq/pojo/EChoBean.java
+++ b/src/main/java/com/nq/pojo/EChoBean.java
@@ -41,52 +41,4 @@
      * @return
      */
     private Integer buyLowestNum;
-
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
-    public String getReturnOfRate() {
-        return returnOfRate;
-    }
-
-    public void setReturnOfRate(String returnOfRate) {
-        this.returnOfRate = returnOfRate;
-    }
-
-    public String getEdesc() {
-        return edesc;
-    }
-
-    public void setEdesc(String edesc) {
-        this.edesc = edesc;
-    }
-
-    public String getIsOpen() {
-        return isOpen;
-    }
-
-    public void setIsOpen(String isOpen) {
-        this.isOpen = isOpen;
-    }
-
-    public String getReturnTime() {
-        return returnTime;
-    }
-
-    public void setReturnTime(String returnTime) {
-        this.returnTime = returnTime;
-    }
-
-    public String getTitle() {
-        return title;
-    }
-
-    public void setTitle(String title) {
-        this.title = title;
-    }
 }
diff --git a/src/main/java/com/nq/service/IEchoServices.java b/src/main/java/com/nq/service/IEchoServices.java
index 3eb5118..8c4d31f 100644
--- a/src/main/java/com/nq/service/IEchoServices.java
+++ b/src/main/java/com/nq/service/IEchoServices.java
@@ -5,6 +5,7 @@
 import com.nq.pojo.reponse.OrderEChoReponse;
 
 import javax.servlet.http.HttpServletRequest;
+import java.math.BigDecimal;
 import java.util.List;
 
 public interface IEchoServices {
@@ -13,7 +14,7 @@
     public List<EChoBean> queryList();
 
 
-    boolean buyECho(String eId, Integer money, HttpServletRequest request);
+    boolean buyECho(String eId, BigDecimal money, HttpServletRequest request);
 
 
     List<OrderEchoBean> queryOrderEcho(HttpServletRequest request);
diff --git a/src/main/java/com/nq/service/impl/EchoServices.java b/src/main/java/com/nq/service/impl/EchoServices.java
index 75755a8..a3b441d 100644
--- a/src/main/java/com/nq/service/impl/EchoServices.java
+++ b/src/main/java/com/nq/service/impl/EchoServices.java
@@ -43,11 +43,11 @@
 
     @Override
     public List<EChoBean> queryList() {
-        return eChoMapper.selectQueryAll();
+        return eChoMapper.selectList(new LambdaQueryWrapper<EChoBean>());
     }
 
     @Override
-    public boolean buyECho(String eId, Integer money, HttpServletRequest request) {
+    public boolean buyECho(String eId, BigDecimal money, HttpServletRequest request) {
 
         User user = this.iUserService.getCurrentRefreshUser(request);
 
@@ -76,7 +76,7 @@
                     .eq(UserAssets::getUserId, orderEchoBean.getUserId())
                     .eq(UserAssets::getAccectType, "IN")
             );
-            userAssets.setAvailableBalance(userAssets.getAvailableBalance().subtract(new BigDecimal(money)));
+            userAssets.setAvailableBalance(userAssets.getAvailableBalance().subtract(money));
             userAssetsMapper.updateById(userAssets);
             return orderEchoMapper.insert(orderEchoBean) >= 1;
         }
diff --git a/src/main/java/com/nq/service/impl/PriceServicesImpl.java b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
index 2d818b4..45c4286 100644
--- a/src/main/java/com/nq/service/impl/PriceServicesImpl.java
+++ b/src/main/java/com/nq/service/impl/PriceServicesImpl.java
@@ -83,13 +83,14 @@
             return  true;
         }
 
-        if(new BigDecimal(stockConfig.getCValue()).compareTo(pcp)>0){
+        if(new BigDecimal(stockConfig.getCValue()).compareTo(pcp)<0){
             StockConfig limitConfig = iStockConfigServices.queryByKey(EConfigKey.LIMIT_UP_IS_BUY.getCode());
             if(limitConfig.getCValue().equals("1")){
                 return  true;
             }
+            return false;
         }
-        return false;
+        return true;
     }
 
     @Override
diff --git a/src/main/resources/mapper/EchoMapper.xml b/src/main/resources/mapper/EchoMapper.xml
index c902e5d..5942ddf 100644
--- a/src/main/resources/mapper/EchoMapper.xml
+++ b/src/main/resources/mapper/EchoMapper.xml
@@ -10,27 +10,4 @@
         <result column="return_time" property="returnTime"/>
         <result column="title" property="title"/>
     </resultMap>
-
-    <sql id="Base_Column_List">
-        id
-        ,
-                return_of_rate,
-                edesc,
-                is_open,
-                return_time,
-                title
-    </sql>
-
-    <select id="selectQueryAll" resultMap="BaseResultMap">
-        select
-            <include refid="Base_Column_List"/>
-            from echo
-    </select>
-
-    <select id="selectById" resultMap="BaseResultMap" parameterType="java.lang.Integer">
-        select  <include refid="Base_Column_List"/>
-            from echo where id  = #{id}
-    </select>
-
-
 </mapper>
diff --git a/target/classes/mapper/EchoMapper.xml b/target/classes/mapper/EchoMapper.xml
index c902e5d..5942ddf 100644
--- a/target/classes/mapper/EchoMapper.xml
+++ b/target/classes/mapper/EchoMapper.xml
@@ -10,27 +10,4 @@
         <result column="return_time" property="returnTime"/>
         <result column="title" property="title"/>
     </resultMap>
-
-    <sql id="Base_Column_List">
-        id
-        ,
-                return_of_rate,
-                edesc,
-                is_open,
-                return_time,
-                title
-    </sql>
-
-    <select id="selectQueryAll" resultMap="BaseResultMap">
-        select
-            <include refid="Base_Column_List"/>
-            from echo
-    </select>
-
-    <select id="selectById" resultMap="BaseResultMap" parameterType="java.lang.Integer">
-        select  <include refid="Base_Column_List"/>
-            from echo where id  = #{id}
-    </select>
-
-
 </mapper>

--
Gitblit v1.9.3