From 37718a7da832ddc0ac662280e4b44f28975f77ee Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Tue, 19 Aug 2025 15:36:24 +0800
Subject: [PATCH] 印度最低购买数量修改 新股申购新增杠杆

---
 src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java |   12 ++++++++++--
 src/main/java/com/nq/ws/TWWebsocketRunClient.java                    |    2 +-
 src/main/java/com/nq/vo/stock/UserStockSubscribeAddIn.java           |    5 +++++
 src/main/java/com/nq/ws/WebsocketRunClient.java                      |    2 +-
 src/main/java/com/nq/service/impl/UserPositionServiceImpl.java       |   10 +++++++---
 5 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index fc19500..30874ef 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -152,9 +152,13 @@
                 if(buyNum<Integer.parseInt(mainBuyConfig.getCValue())){
                     return ServerResponse.createByErrorMsg("最低购买数量"+mainBuyConfig.getCValue(), request);
                 }*/
-                //最低购买数量 US 10 其他1000
-                Integer minBuyNum = 10;
-                if (!stock.getStockType().equals(EStockType.US.getCode())) {
+                //最低购买数量 US 10 印度100 香港台湾1000
+                Integer minBuyNum;
+                if (stock.getStockType().equals(EStockType.US.getCode())) {
+                    minBuyNum = 10;
+                } else if (stock.getStockType().equals(EStockType.IN.getCode())) {
+                    minBuyNum = 100;
+                } else {
                     minBuyNum = 1000;
                 }
                 if(buyNum < minBuyNum){
diff --git a/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java b/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
index 5e909e2..458140c 100644
--- a/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
@@ -105,6 +105,16 @@
                     // 申请数量为空时返回错误信息
                     return ServerResponse.createByErrorMsg("申请数量不能为空", request);
                 }
+
+                //杠杆倍数 优先用户输入
+                int lever;
+                if (model.getLever() != null && model.getLever().intValue() > 0) {
+                    lever = model.getLever().intValue();
+                } else {
+                    lever = stockSubscribe.getLever().intValue();
+                }
+                model.setApplyNums(model.getApplyNums() * lever);
+
                 if(model.getApplyNums() < stockSubscribe.getMinNumber() ){
                     return ServerResponse.createByErrorMsg("最少申购:" + stockSubscribe.getMinNumber(), request);
                 }
@@ -134,8 +144,6 @@
                 if (siteProduct.getRealNameDisplay() && user.getIsLock().intValue() == 1) {
                     return ServerResponse.createByErrorMsg("订单失败,帐户已被锁定",request);
                 }
-
-                model.setApplyNums((int) (model.getApplyNums()*stockSubscribe.getLever()));
 
                 //计算申购金额
                 BigDecimal bound;
diff --git a/src/main/java/com/nq/vo/stock/UserStockSubscribeAddIn.java b/src/main/java/com/nq/vo/stock/UserStockSubscribeAddIn.java
index cbbea24..48e2961 100644
--- a/src/main/java/com/nq/vo/stock/UserStockSubscribeAddIn.java
+++ b/src/main/java/com/nq/vo/stock/UserStockSubscribeAddIn.java
@@ -120,4 +120,9 @@
 
     @TableField(exist = false)
     private String newlistId;
+
+    /**
+     * 杠杆
+     */
+    private Long lever;
 }
diff --git a/src/main/java/com/nq/ws/TWWebsocketRunClient.java b/src/main/java/com/nq/ws/TWWebsocketRunClient.java
index 1c9b53c..fc98ae0 100644
--- a/src/main/java/com/nq/ws/TWWebsocketRunClient.java
+++ b/src/main/java/com/nq/ws/TWWebsocketRunClient.java
@@ -65,7 +65,7 @@
             System.out.println("tw" + message);
             return;
         }
-        //System.out.println("tw2" + message);
+        System.out.println("tw2" + message);
         Map<String, String> stringObjectMap = jsonToMap(message);
         StockRealTimeBean stockRealTimeBean = new StockRealTimeBean();
         stockRealTimeBean.setPid(stringObjectMap.get("Id").toString());
diff --git a/src/main/java/com/nq/ws/WebsocketRunClient.java b/src/main/java/com/nq/ws/WebsocketRunClient.java
index 7f2aa4b..b0021de 100644
--- a/src/main/java/com/nq/ws/WebsocketRunClient.java
+++ b/src/main/java/com/nq/ws/WebsocketRunClient.java
@@ -67,7 +67,7 @@
             System.out.println("hk" + message);
             return;
         }
-        //System.out.println("hk2" + message);
+        System.out.println("hk2" + message);
         Map<String, String> stringObjectMap = jsonToMap(message);
         StockRealTimeBean stockRealTimeBean = new StockRealTimeBean();
         stockRealTimeBean.setPid(stringObjectMap.get("Id").toString());

--
Gitblit v1.9.3