From eb357bb9938d569734b04948695726b80c5dfb85 Mon Sep 17 00:00:00 2001
From: peter <14100000001@qq.com>
Date: Wed, 19 Nov 2025 10:40:27 +0800
Subject: [PATCH] 代理后台新增删除用户、提现审核
---
src/main/java/com/nq/service/impl/PayServiceImpl.java | 82 +++++++++++++++++++++++++++++------------
1 files changed, 58 insertions(+), 24 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/PayServiceImpl.java b/src/main/java/com/nq/service/impl/PayServiceImpl.java
index 7b1c67a..d8c71cc 100644
--- a/src/main/java/com/nq/service/impl/PayServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/PayServiceImpl.java
@@ -8,6 +8,8 @@
import com.nq.common.CmcPayConfig;
import com.nq.common.ServerResponse;
import com.nq.dao.*;
+import com.nq.enums.EStockType;
+import com.nq.enums.EUserAssets;
import com.nq.pay.PayUtil;
import com.nq.pojo.*;
import com.nq.service.*;
@@ -83,6 +85,9 @@
@Autowired
PaymentRechargeService paymentRechargeService;
+ @Autowired
+ UserAssetsServices userAssetsServices;
+
public ServerResponse thirdPartyRecharge(HttpServletRequest request, String tradeAmount, Integer type) throws UnsupportedEncodingException, JsonProcessingException, NoSuchAlgorithmException {
// 支付1
String reqUrl = "https://api.watchglb.com/pay/web";
@@ -150,6 +155,19 @@
paymentRecharge.setNotifyUrl(getOrderTime());
paymentRecharge.setPayInfo(payResponse.toString());
paymentRechargeService.save(paymentRecharge);
+
+ UserRecharge userRecharge = new UserRecharge();
+ userRecharge.setUserId(user.getId());
+ userRecharge.setNickName(user.getRealName());
+ userRecharge.setAgentId(user.getAgentId());
+ userRecharge.setOrderSn(params.get("out_trade_no"));
+ userRecharge.setPayChannel("Payment 1");
+ userRecharge.setPayAmt(amount);
+ userRecharge.setAddTime(new Date());
+ userRecharge.setPayTime(new Date());
+ userRecharge.setOrderStatus(Integer.valueOf(0));
+ userRecharge.setPayId(1);
+ userRechargeMapper.insert(userRecharge);
return ServerResponse.createBySuccess(payResponse.getData().getUrl());
}
@@ -724,7 +742,7 @@
}
UserAssets userAssets = userAssetsMapper.selectOne(new LambdaQueryWrapper<>(UserAssets.class)
.eq(UserAssets::getUserId, paymentRecharge.getUserId())
- .eq(UserAssets::getAccectType, "IN")
+ .eq(UserAssets::getAccectType, "US")
);
ServerResponse serverResponse = iUserAssetsServices.updateUserAssets(userAssets.getId(), vo.getOriAmount().toString(), "2");
if(serverResponse.getStatus() == 0){
@@ -910,41 +928,57 @@
PrintWriter pw = response.getWriter();
PaymentRecharge paymentRecharge = paymentRechargeService.getOne(new LambdaQueryWrapper<>(PaymentRecharge.class)
- .eq(PaymentRecharge::getMchOrderNo, vo.getOut_trade_no())
+ .eq(PaymentRecharge::getOrderNo,vo.getOut_trade_no())
.eq(PaymentRecharge::getStatus,1)
.last("limit 1")
);
-
- if(!vo.getStatus().equals("payin_ing")){
- log.error("充值2回调交易中:"+vo.toString());
- return;
- }
-
- if(!vo.getStatus().equals("payin_fail")){
- paymentRecharge.setStatus(2);
- paymentRecharge.setAmount(new BigDecimal(vo.getAccount_fee()));
- paymentRecharge.setPayInfo(vo.toString());
- paymentRechargeService.updateById(paymentRecharge);
- log.error("充值回调失败:"+vo.toString());
- return;
- }
-
if(ObjectUtils.isEmpty(paymentRecharge)){
log.info("未找到充值订单");
pw.print("error 未找到充值订单");
return;
}
- UserAssets userAssets = userAssetsMapper.selectOne(new LambdaQueryWrapper<>(UserAssets.class)
- .eq(UserAssets::getUserId, paymentRecharge.getUserId())
- .eq(UserAssets::getAccectType, "IN")
- );
- ServerResponse serverResponse = iUserAssetsServices.updateUserAssets(userAssets.getId(), vo.getAccount_fee().toString(), "2");
- if(serverResponse.getStatus() == 0){
+ UserRecharge userRecharge = userRechargeMapper.selectOne(new LambdaQueryWrapper<>(UserRecharge.class)
+ .eq(UserRecharge::getOrderSn, paymentRecharge.getOrderNo())
+ .eq(UserRecharge::getOrderStatus, 0).last(" limit 1"));
+ if(ObjectUtils.isEmpty(userRecharge)){
+ log.info("未找到充值记录订单");
+ pw.print("error 未找到充值订单");
+ return;
+ }
+
+ if(vo.getStatus().equals("payin_ing")){
+ log.error("充值2回调交易中:"+vo.toString());
+ return;
+ }else if(vo.getStatus().equals("payin_fail")){
paymentRecharge.setStatus(2);
- paymentRecharge.setAmount(new BigDecimal(vo.getAccount_fee()));
+ paymentRecharge.setAmount(new BigDecimal(vo.getTotal_fee()));
paymentRecharge.setPayInfo(vo.toString());
paymentRechargeService.updateById(paymentRecharge);
+ userRecharge.setOrderStatus(2);
+ userRechargeMapper.updateById(userRecharge);
+ log.error("充值回调失败:"+vo.toString());
+ return;
+ }else if(!vo.getStatus().equals("payin_fail") && !vo.getStatus().equals("payin_ing") && !vo.getStatus().equals("payin_success")){
+ log.error("充值回调失败----未知状态:"+vo.toString());
+ return;
}
+
+ UserAssets userAssets = userAssetsMapper.selectOne(new LambdaQueryWrapper<>(UserAssets.class)
+ .eq(UserAssets::getUserId, paymentRecharge.getUserId())
+ .eq(UserAssets::getAccectType, "US")
+ );
+// ServerResponse serverResponse = iUserAssetsServices.updateUserAssets(userAssets.getId(), vo.getTotal_fee().toString(), "2");
+ userAssetsServices.availablebalanceChange(EStockType.US.getCode(),
+ paymentRecharge.getUserId(), EUserAssets.TOP_UP,new BigDecimal(vo.getTotal_fee().toString()),"","");
+
+ paymentRecharge.setStatus(2);
+ paymentRecharge.setAmount(new BigDecimal(vo.getTotal_fee()));
+ paymentRecharge.setPayInfo(vo.toString());
+ paymentRechargeService.updateById(paymentRecharge);
+
+ userRecharge.setOrderStatus(1);
+ userRechargeMapper.updateById(userRecharge);
+
log.info("充值回调----完成");
pw.print("success");
pw.flush();
--
Gitblit v1.9.3