From c8b031a405ebd2b450f5098bb37e5e63390f364c Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Fri, 18 Jul 2025 09:57:31 +0800
Subject: [PATCH] 新增贷款,优化
---
src/main/java/com/nq/controller/UserPositionCheckDzController.java | 72 +++++------------------------------
1 files changed, 11 insertions(+), 61 deletions(-)
diff --git a/src/main/java/com/nq/controller/UserPositionCheckDzController.java b/src/main/java/com/nq/controller/UserPositionCheckDzController.java
index 01e84cc..7f99f3f 100644
--- a/src/main/java/com/nq/controller/UserPositionCheckDzController.java
+++ b/src/main/java/com/nq/controller/UserPositionCheckDzController.java
@@ -10,6 +10,7 @@
import com.nq.enums.EUserAssets;
import com.nq.pojo.*;
import com.nq.service.IPriceServices;
+import com.nq.service.IUserPositionService;
import com.nq.service.IUserService;
import com.nq.service.UserPositionCheckDzService;
import com.nq.service.impl.UserAssetsServices;
@@ -36,22 +37,7 @@
UserPositionCheckDzService service;
@Autowired
- UserPositionCheckDzMapper mapper;
-
- @Autowired
- UserPositionMapper userPositionMapper;
-
- @Autowired
- UserAssetsServices userAssetsServices;
-
- @Autowired
- UserMapper userMapper;
-
- @Autowired
- IPriceServices priceServices;
-
- @Autowired
- StockDzMapper stockDzMapper;
+ IUserPositionService userPositionService;
//大宗交易审核列表
@RequestMapping({"getList.do"})
@@ -59,13 +45,18 @@
public ServerResponse getList(@RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
@RequestParam(value = "pageSize", defaultValue = "15") int pageSize,
@RequestParam(value = "type", required = false) Integer type,
- @RequestParam(value = "stockCode", required = false) String stockCode) {
+ @RequestParam(value = "stockCode", required = false)String stockCode,
+ @RequestParam(value = "agentId", required = false) String agentId) {
Page<UserPositionCheckDz> page = Page.of(pageNum, pageSize);
LambdaQueryWrapper<UserPositionCheckDz> queryWrapper = new LambdaQueryWrapper<UserPositionCheckDz>();
// 判断type是否为空,不为空则加入查询条件
if (type != null) {
queryWrapper.eq(UserPositionCheckDz::getCheckType, type);
+ }
+
+ if (agentId != null) {
+ queryWrapper.eq(UserPositionCheckDz::getAgentId, agentId);
}
// 判断stockCode是否为空,不为空则加入查询条件
@@ -82,51 +73,10 @@
@ResponseBody
public ServerResponse check(@RequestParam(value = "id") Integer id,
@RequestParam(value = "checkType") Integer checkType,
- @RequestParam(value = "orderNum") Integer orderNum) {
+ @RequestParam(value = "orderNum") Integer orderNum, HttpServletRequest request) {
if(checkType != 2 && (id == null || checkType == null || orderNum == null)){
- return ServerResponse.createByErrorMsg("参数不能为空");
+ return ServerResponse.createByErrorMsg("参数不能为空", request);
}
- UserPositionCheckDz userPositionCheckDz = service.getById(id);
- if(userPositionCheckDz == null){
- return ServerResponse.createByErrorMsg("订单不存在");
- }
- if(userPositionCheckDz.getCheckType() != 0){
- return ServerResponse.createByErrorMsg("订单已审核");
- }
- if(checkType == 2){
- userPositionCheckDz.setCheckType(checkType);
- service.updateById(userPositionCheckDz);
- return ServerResponse.createBySuccess("审核成功");
- }
- User user = userMapper.selectById(userPositionCheckDz.getUserId());
-
- StockDz stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("id", userPositionCheckDz.getDzId()));
-
- UserAssets userAssets = userAssetsServices.assetsByTypeAndUserId("IN", user.getId());
- if(userAssets.getAmountToBeCovered().compareTo(BigDecimal.ZERO) > 0){
- return ServerResponse.createByErrorMsg("用户账户有待补资金未补齐,审核失败");
- }
-
- BigDecimal nowPrice = stockDz.getNowPrice();
-
- if (nowPrice.compareTo(new BigDecimal("0")) == 0) {
- return ServerResponse.createByErrorMsg("股票价格0,请重试");
- }
- userPositionCheckDz.setOrderNum(orderNum);
- userPositionCheckDz.setOrderTotalPrice(nowPrice.multiply(new BigDecimal(orderNum.intValue())));
- BigDecimal buyAmt = nowPrice.multiply(new BigDecimal(userPositionCheckDz.getOrderNum()));
- BigDecimal fundratio = new BigDecimal(user.getFundRatio()).divide(new BigDecimal(100));
- BigDecimal availableBalance = fundratio.multiply(userAssets.getAvailableBalance());
- if (buyAmt.compareTo(availableBalance) > 0) {
- return ServerResponse.createByErrorMsg("订单失败,配资不足");
- }
- userPositionCheckDz.setCheckType(checkType);
- service.updateById(userPositionCheckDz);
- UserPosition userPosition = Convert.convert(UserPosition.class, userPositionCheckDz);
- userPosition.setBuyOrderPrice(nowPrice);
- userPosition.setId(null);
- userPositionMapper.insert(userPosition);
- userAssetsServices.availablebalanceChange(EStockType.IN.getCode(), user.getId(), EUserAssets.BUY, buyAmt.negate(),"","");
- return ServerResponse.createBySuccessMsg("审核成功,订单已转客户持仓");
+ return userPositionService.checkDz(id, checkType, orderNum ,request);
}
}
--
Gitblit v1.9.3