From 0dd4d58348ea76cb24bbe3b862fec6ebbd35b78a Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Fri, 23 Jan 2026 12:40:00 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/service/impl/UserPositionServiceImpl.java | 24 ++++++++++++++++++++++--
1 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
index a7d5d1f..8919907 100644
--- a/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserPositionServiceImpl.java
@@ -106,6 +106,8 @@
StockDzMapper stockDzMapper;
@Autowired
StockVipMapper stockVipMapper;
+ @Autowired
+ FundFlowMapper fundFlowMapper;
@Transactional
@@ -779,6 +781,8 @@
BigDecimal reckon_all = user_all_amt.add(all_profit);
//修改用戶可用余額=當前可用余額+總盈虧+買入總金額+追加保證金
BigDecimal reckon_enable = user_enable_amt.add(all_profit).add(freez_amt).add(userPosition.getMarginAdd());
+ //锁定提现金额
+ BigDecimal lockAmount = reckon_enable.subtract(user_enable_amt);
log.info("用戶平倉後的總資金 = {} , 可用資金 = {}", reckon_all, reckon_enable);
user.setUserAmt(reckon_all);
@@ -790,6 +794,18 @@
log.error("用戶平倉】修改用戶金額出錯");
throw new Exception("用戶平倉】修改用戶金額出錯");
}
+ if (lockAmount.compareTo(BigDecimal.ZERO) > 0) {
+ Date date = new Date();
+ FundFlow fundFlow = new FundFlow();
+ fundFlow.setUserId(userPosition.getUserId());
+ fundFlow.setAmount(lockAmount);
+ fundFlow.setUsedAmount(BigDecimal.ZERO);
+ fundFlow.setWithdrawDate(DateTimeUtil.addDayAndGetZeroTime(date, 1));
+ fundFlow.setStatus(0);
+ fundFlow.setCreateTime(date);
+ fundFlowMapper.insert(fundFlow);
+ }
+
UserCashDetail ucd = new UserCashDetail();
ucd.setPositionId(userPosition.getId());
@@ -1985,6 +2001,10 @@
userPosition.setStockCode(userStockSubscribe.getNewCode());
userPosition.setStockName(userStockSubscribe.getNewName());
userPosition.setStockGid(stockSubscribe.getStockType() + userStockSubscribe.getNewCode());
+ Stock stock = stockMapper.selectOne(new QueryWrapper<Stock>().eq("stock_code", userStockSubscribe.getNewCode()));
+ if (stock != null) {
+ userPosition.setStockGid(stock.getStockGid());
+ }
userPosition.setBuyOrderId(GeneratePosition.getPositionId());
userPosition.setBuyOrderTime(new Date());
@@ -2111,7 +2131,7 @@
return ServerResponse.createByErrorMsg("下单失败,系统设置错误");
}
StockDz stockDz = null;
- stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("stock_code", stockCode));
+ stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("stock_gid", stockCode));
// String am_begin = siteSetting.getTransAmBeginhk();
// String am_end = siteSetting.getTransAmEndhk();
// String pm_begin = siteSetting.getTransPmBeginhk();
@@ -2427,7 +2447,7 @@
return ServerResponse.createByErrorMsg("下單失敗,系統設置錯誤");
}
StockVip stockVip = null;
- stockVip = this.stockVipMapper.selectOne(new QueryWrapper<StockVip>().eq("stock_code", stockCode));
+ stockVip = this.stockVipMapper.selectOne(new QueryWrapper<StockVip>().eq("stock_gid", stockCode));
// String am_begin = siteSetting.getTransAmBeginhk();
// String am_end = siteSetting.getTransAmEndhk();
// String pm_begin = siteSetting.getTransPmBeginhk();
--
Gitblit v1.9.3