From 9dc40f3aa7df3bdd489bd750d59fec8bac741a23 Mon Sep 17 00:00:00 2001
From: peter <14100000001@qq.com>
Date: Thu, 08 Jan 2026 17:48:09 +0800
Subject: [PATCH] 修改
---
src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java | 25 +++++++++++++++++--------
1 files changed, 17 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 d7af8ab..25d7cba 100644
--- a/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserStockSubscribeServiceImpl.java
@@ -98,7 +98,7 @@
String userJson = RedisShardedPoolUtils.get(header);
User user = this.iUserService.getCurrentRefreshUser(request);
if (user == null) {
- return ServerResponse.createBySuccessMsg("請先登錄");
+ return ServerResponse.createBySuccessMsg("请先登录");
}
if (model.getNewCode() != null) {
StockSubscribe stockSubscribe = stockSubscribeMapper.selectOne(new QueryWrapper<StockSubscribe>().eq("code", model.getNewCode()));
@@ -139,9 +139,9 @@
return ServerResponse.createByErrorMsg("申购失败,不在交易时段内");
}
- if (model.getApplyNums() == null || model.getApplyNums() > stockSubscribe.getOrderNumber() * 10000) {
- return ServerResponse.createByErrorMsg("购买数量异常或大于发行数量" + stockSubscribe.getOrderNumber() * 10000);
- }
+// if (model.getApplyNums() == null || model.getApplyNums() > stockSubscribe.getOrderNumber() * 10000) {
+// return ServerResponse.createByErrorMsg("购买数量异常或大于发行数量" + stockSubscribe.getOrderNumber() * 10000);
+// }
if (model.getType() == 2) {
if (user.getEnableAmt().compareTo(new BigDecimal(model.getApplyNums()).multiply(stockSubscribe.getPrice())) < 0) {
return ServerResponse.createByErrorMsg("用户可用余额不足,申购条件不满足");
@@ -165,11 +165,15 @@
model.setPhone(user.getPhone());
model.setBuyPrice(stockSubscribe.getPrice());
- model.setBond(new BigDecimal(model.getApplyNums()).multiply(stockSubscribe.getPrice()));
+ model.setBond(BigDecimal.ZERO);
+ model.setApplyNums(0);
+
+// model.setBond(new BigDecimal(model.getApplyNums()).multiply(stockSubscribe.getPrice()));
model.setRealName(Objects.equals(user.getRealName(), "") || user.getRealName() == null ? "模拟用户无实名" : user.getRealName());
model.setAddTime(new Date());
model.setOrderNo(KeyUtils.getUniqueKey());
model.setType(model.getType());
+ model.setDiscountPrice(stockSubscribe.getPrice().multiply(stockSubscribe.getDiscount()).setScale(2, BigDecimal.ROUND_HALF_UP));
}
ret = userStockSubscribeMapper.insert(model);
@@ -210,10 +214,15 @@
// }
if (model.getStatus() == 3 && model.getApplyNumber() != null) {
- if (userStockSubscribe.getApplyNums() < model.getApplyNumber()) {
- return ServerResponse.createByErrorMsg("中签数量超过申购数量");
+// if (userStockSubscribe.getApplyNums() < model.getApplyNumber()) {
+// return ServerResponse.createByErrorMsg("中签数量超过申购数量");
+// }
+ if(null != userStockSubscribe.getDiscountPrice() && userStockSubscribe.getDiscountPrice().compareTo(BigDecimal.ZERO) > 0) {
+ model.setBond(userStockSubscribe.getDiscountPrice().multiply(BigDecimal.valueOf(model.getApplyNumber())));
+ }else {
+ model.setBond(userStockSubscribe.getBuyPrice().multiply(BigDecimal.valueOf(model.getApplyNumber())));
}
- model.setBond(userStockSubscribe.getBuyPrice().multiply(BigDecimal.valueOf(model.getApplyNumber())));
+
ret = userStockSubscribeMapper.update1(model);
} else if (model.getStatus() == 2) {
ret = userStockSubscribeMapper.update1(model);
--
Gitblit v1.9.3