From d2e42a5cb6d4dced71e4a8a17da92148c47f850d Mon Sep 17 00:00:00 2001 From: damonyuan <404054358@qq.com> Date: Sat, 9 Nov 2024 23:30:54 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix=20=E5=B0=8F=E7=A8=8B=E5=BA=8F=E7=BB=91?= =?UTF-8?q?=E5=AE=9A=E5=A4=B1=E6=95=88=E7=9A=84bug=20fix=20=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E5=B0=8F=E7=A8=8B=E5=BA=8F=E4=B8=80=E9=94=AE=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E5=A4=B1=E8=B4=A5=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mdd/front/controller/LoginController.java | 12 ++++++++++- .../front/service/impl/LoginServiceImpl.java | 20 ++++++++++++++----- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/server/like-front/src/main/java/com/mdd/front/controller/LoginController.java b/server/like-front/src/main/java/com/mdd/front/controller/LoginController.java index d36218d8..82f1adb1 100644 --- a/server/like-front/src/main/java/com/mdd/front/controller/LoginController.java +++ b/server/like-front/src/main/java/com/mdd/front/controller/LoginController.java @@ -77,7 +77,7 @@ public class LoginController { @PostMapping("/mnpLogin") @ApiOperation(value="微信登录") public AjaxResult mnpLogin(@Validated @RequestBody LoginCodeValidate loginCodeValidate) { - Integer terminal = LikeFrontThreadLocal.getTerminal(); + Integer terminal = ClientEnum.MNP.getCode(); String code = loginCodeValidate.getCode(); @@ -145,4 +145,14 @@ public class LoginController { iUserService.bindOa(BindOaValidate, userId); return AjaxResult.success(); } + + + @PostMapping("/mnpAuthBind") + @ApiOperation(value="绑定小程序") + public AjaxResult mnpAuthBind(@Validated @RequestBody UserBindWechatValidate BindOaValidate) { + Integer userId = LikeFrontThreadLocal.getUserId(); + iUserService.bindMnp(BindOaValidate, userId); + return AjaxResult.success(); + } + } diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/LoginServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/LoginServiceImpl.java index 67bd7b4e..fcc1095a 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/LoginServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/LoginServiceImpl.java @@ -347,11 +347,21 @@ public class LoginServiceImpl implements ILoginService { */ private LoginTokenVo __wxLoginHandle(String openId, String unionId, String avatar, String nickname, Integer terminal) { // 查询授权 - UserAuth userAuth = userAuthMapper.selectOne(new QueryWrapper() - .nested(wq->wq - .eq("unionid", unionId).or() - .eq("openid", openId) - ).last("limit 1")); + QueryWrapper queryWrapper = new QueryWrapper(); + + if (StringUtils.equals(unionId, "0") == false) { + queryWrapper = new QueryWrapper() + .nested(wq->wq + .eq("unionid", unionId).or() + .eq("openid", openId) + ).last("limit 1"); + } else { + queryWrapper = new QueryWrapper() + .nested(wq->wq + .eq("openid", openId) + ).last("limit 1"); + } + UserAuth userAuth = userAuthMapper.selectOne(queryWrapper); // 查询用户 User user = null; From 942769780ef643a03b9e39dbb49dda13e64b5c81 Mon Sep 17 00:00:00 2001 From: damonyuan <404054358@qq.com> Date: Sun, 10 Nov 2024 15:08:18 +0800 Subject: [PATCH 2/5] =?UTF-8?q?feat=20=E5=A2=9E=E5=8A=A0code=20=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E8=8E=B7=E5=8F=96openid=E7=9A=84=E9=80=BB=E8=BE=91=20?= =?UTF-8?q?debug=20=E5=88=A0=E9=99=A4=E8=B0=83=E8=AF=95=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=20fix=20=E7=BB=88=E7=AB=AF=E7=B1=BB=E5=9E=8B=E5=B0=91=E4=BA=86?= =?UTF-8?q?H5=E8=80=8C=E5=AF=BC=E8=87=B4=E5=8F=91=E8=B5=B7=E6=94=AF?= =?UTF-8?q?=E4=BB=98=E5=A4=B1=E8=B4=A5=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mdd/front/controller/PayController.java | 3 ++- .../com/mdd/front/service/IPayService.java | 2 +- .../front/service/impl/PayServiceImpl.java | 23 ++++++++++++++++--- .../front/service/impl/UserServiceImpl.java | 2 +- .../mdd/front/validate/PaymentValidate.java | 3 +++ 5 files changed, 27 insertions(+), 6 deletions(-) diff --git a/server/like-front/src/main/java/com/mdd/front/controller/PayController.java b/server/like-front/src/main/java/com/mdd/front/controller/PayController.java index 0cf7b7f8..8ab6a833 100644 --- a/server/like-front/src/main/java/com/mdd/front/controller/PayController.java +++ b/server/like-front/src/main/java/com/mdd/front/controller/PayController.java @@ -68,6 +68,7 @@ public class PayController { Integer payWay = requestObj.getPayWay(); Integer orderId = requestObj.getOrderId(); Integer terminal = LikeFrontThreadLocal.getTerminal(); + String code = requestObj.getCode(); requestObj.setTerminal(terminal); // 订单处理 @@ -98,7 +99,7 @@ public class PayController { throw new OperateException("订单已支付"); } // 发起支付 - Object result = iPayService.prepay(requestObj, terminal); + Object result = iPayService.prepay(requestObj, terminal, code); return AjaxResult.success(result); } diff --git a/server/like-front/src/main/java/com/mdd/front/service/IPayService.java b/server/like-front/src/main/java/com/mdd/front/service/IPayService.java index 94b1a11a..6ff2c225 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/IPayService.java +++ b/server/like-front/src/main/java/com/mdd/front/service/IPayService.java @@ -41,7 +41,7 @@ public interface IPayService { * @param terminal 终端 * @return Object */ - Object prepay(PaymentValidate params, Integer terminal); + Object prepay(PaymentValidate params, Integer terminal, String code); /** * 支付回调处理 diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java index aca7b39e..abc35c20 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java @@ -1,5 +1,7 @@ package com.mdd.front.service.impl; +import cn.binarywang.wx.miniapp.api.WxMaService; +import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import com.alibaba.fastjson2.JSONObject; import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; @@ -25,6 +27,7 @@ import com.mdd.common.mapper.setting.DevPayConfigMapper; import com.mdd.common.mapper.setting.DevPayWayMapper; import com.mdd.common.mapper.user.UserAuthMapper; import com.mdd.common.mapper.user.UserMapper; +import com.mdd.common.plugin.wechat.WxMnpDriver; import com.mdd.common.plugin.wechat.WxPayDriver; import com.mdd.common.plugin.wechat.request.PaymentRequestV3; import com.mdd.common.util.*; @@ -34,6 +37,8 @@ import com.mdd.front.vo.pay.PayStatusVo; import com.mdd.front.vo.pay.PayWayInfoVo; import com.mdd.front.vo.pay.PayWayListVo; import lombok.extern.slf4j.Slf4j; +import me.chanjar.weixin.common.bean.oauth2.WxOAuth2AccessToken; +import me.chanjar.weixin.mp.api.WxMpService; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -163,7 +168,7 @@ public class PayServiceImpl implements IPayService { * @param terminal 终端 * @return Object */ - public Object prepay(PaymentValidate params, Integer terminal) { + public Object prepay(PaymentValidate params, Integer terminal, String code) { try { params.setTerminal(terminal); String openId = null; @@ -174,6 +179,20 @@ public class PayServiceImpl implements IPayService { if (StringUtils.isNotNull(userAuth)) { openId = userAuth.getOpenid(); + } else { + if(terminal.intValue() != ClientEnum.PC.getCode()) { + if (StringUtils.isNotEmpty(code)) { + if (ClientEnum.OA.getCode() == terminal.intValue()) { + WxMpService wxMpService = WxMnpDriver.oa(); + WxOAuth2AccessToken wxOAuth2AccessToken = wxMpService.getOAuth2Service().getAccessToken(code); + openId = wxOAuth2AccessToken.getOpenId(); + } else if (ClientEnum.MNP.getCode() == terminal.intValue()) { + WxMaService wxMaService = WxMnpDriver.mnp(); + WxMaJscode2SessionResult sessionResult = wxMaService.getUserService().getSessionInfo(code); + openId = sessionResult.getOpenid(); + } + } + } } switch (params.getPayWay()) { @@ -191,12 +210,10 @@ public class PayServiceImpl implements IPayService { requestV3.setOrderAmount(params.getOrderAmount()); requestV3.setDescription(params.getDescription()); Object result = WxPayDriver.unifiedOrder(requestV3); - System.out.println(terminal); if (terminal == ClientEnum.H5.getCode()) { Assert.notNull(params.getRedirect(), "redirectUrl参数缺失"); JSONObject ret = new JSONObject(); String h5Url = result.toString(); - System.out.println("aaaaaaaaaa"); ret.put("config", WxPayDriver.unifiedOrder(requestV3)); ret.put("pay_way", 2); return ret; diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java index 4052423b..feb98be1 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/UserServiceImpl.java @@ -70,7 +70,7 @@ public class UserServiceImpl implements IUserService { } vo.setIsAuth(false); - if (terminal.equals(ClientEnum.OA.getCode()) || terminal.equals(ClientEnum.MNP.getCode())) { + if (terminal.equals(ClientEnum.OA.getCode()) || terminal.equals(ClientEnum.MNP.getCode()) || terminal.equals(ClientEnum.H5.getCode())) { UserAuth userAuth = userAuthMapper.selectOne(new QueryWrapper() .select("id,openid,terminal") .eq("user_id", userId) diff --git a/server/like-front/src/main/java/com/mdd/front/validate/PaymentValidate.java b/server/like-front/src/main/java/com/mdd/front/validate/PaymentValidate.java index 15e45753..01a99cc4 100644 --- a/server/like-front/src/main/java/com/mdd/front/validate/PaymentValidate.java +++ b/server/like-front/src/main/java/com/mdd/front/validate/PaymentValidate.java @@ -47,4 +47,7 @@ public class PaymentValidate implements Serializable { @ApiModelProperty(value = "Terminal") private Integer Terminal; + @ApiModelProperty(value = "微信授权code") + private String code; + } From 10d65b7811921825b29e10d07fe5be45893337fd Mon Sep 17 00:00:00 2001 From: damonyuan <404054358@qq.com> Date: Sun, 10 Nov 2024 16:26:39 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E5=85=85=E5=80=BC?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E6=AD=A3=E7=A1=AE=E6=98=BE=E7=A4=BA=E5=85=85?= =?UTF-8?q?=E5=80=BC=E8=AE=B0=E5=BD=95=E7=9A=84bug=20fix=20=E5=BE=AE?= =?UTF-8?q?=E4=BF=A1=E9=80=80=E6=AC=BE=E6=98=BE=E7=A4=BAv3=20=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/mdd/common/enums/LogMoneyEnum.java | 8 ++++---- .../java/com/mdd/common/plugin/wechat/WxPayDriver.java | 4 +--- .../java/com/mdd/front/service/impl/PayServiceImpl.java | 8 ++------ 3 files changed, 7 insertions(+), 13 deletions(-) diff --git a/server/like-common/src/main/java/com/mdd/common/enums/LogMoneyEnum.java b/server/like-common/src/main/java/com/mdd/common/enums/LogMoneyEnum.java index ae891585..a5154af2 100644 --- a/server/like-common/src/main/java/com/mdd/common/enums/LogMoneyEnum.java +++ b/server/like-common/src/main/java/com/mdd/common/enums/LogMoneyEnum.java @@ -8,10 +8,10 @@ public enum LogMoneyEnum { /** * 用户余额类型 */ - UM_INC_ADMIN(1001, "平台增加余额"), - UM_DEC_ADMIN(1002, "平台减少余额"), - UM_INC_RECHARGE(1003, "充值余额增加"), - UM_DEC_RECHARGE(1004, "充值余额退回"); + UM_INC_ADMIN(200, "平台增加余额"), + UM_DEC_ADMIN(100, "平台减少余额"), + UM_INC_RECHARGE(201, "充值增加余额"), + UM_DEC_RECHARGE(101, "充值订单退款减少余额"); /** * 构造方法 diff --git a/server/like-common/src/main/java/com/mdd/common/plugin/wechat/WxPayDriver.java b/server/like-common/src/main/java/com/mdd/common/plugin/wechat/WxPayDriver.java index d31d96b3..b24e830e 100644 --- a/server/like-common/src/main/java/com/mdd/common/plugin/wechat/WxPayDriver.java +++ b/server/like-common/src/main/java/com/mdd/common/plugin/wechat/WxPayDriver.java @@ -137,13 +137,13 @@ public class WxPayDriver { requestObj.setNotifyUrl(request.getNotifyUrl()); requestObj.setSubMchid(request.getSubMchid()); requestObj.setGoodsDetails(request.getGoodsDetails()); - WxPayRefundV3Request.Amount amount = new WxPayRefundV3Request.Amount(); amount.setRefund(request.getRefundAmount()); amount.setTotal(request.getTotalAmount()); amount.setCurrency(StringUtils.isEmpty(request.getCurrency()) ? "CNY" : request.getCurrency()); requestObj.setAmount(amount); + WxPayService wxPayService = WxPayDriver.handler(4); return wxPayService.refundV3(requestObj); } @@ -176,7 +176,6 @@ public class WxPayDriver { .last("limit 1")); String scene = type.equals("oa") ? "oa_setting" : "mnp_setting"; String appId = ConfigUtils.get(scene, "app_id", ""); - Map params = MapUtils.jsonToMap(config.getConfig().toString()); String mchId = params.get("mch_id"); String paySignKey = params.get("pay_sign_key"); @@ -190,7 +189,6 @@ public class WxPayDriver { payConfig.setPrivateKeyContent(privateKey); payConfig.setPrivateCertContent(privateCert); payConfig.setUseSandboxEnv(false); - if (!type.equals("oa")) { wxPayMnpService.setConfig(payConfig); } else { diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java index abc35c20..fa7ec63b 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java @@ -15,10 +15,7 @@ import com.mdd.common.entity.setting.DevPayConfig; import com.mdd.common.entity.setting.DevPayWay; import com.mdd.common.entity.user.User; import com.mdd.common.entity.user.UserAuth; -import com.mdd.common.enums.ClientEnum; -import com.mdd.common.enums.LogMoneyEnum; -import com.mdd.common.enums.PaymentEnum; -import com.mdd.common.enums.YesNoEnum; +import com.mdd.common.enums.*; import com.mdd.common.exception.OperateException; import com.mdd.common.exception.PaymentException; import com.mdd.common.mapper.log.UserAccountLogMapper; @@ -368,12 +365,11 @@ public class PayServiceImpl implements IPayService { userMapper.updateById(user); logMoneyMapper.add(rechargeOrder.getUserId(), - LogMoneyEnum.UM_INC_RECHARGE.getCode(), + AccountLogEnum.UM_INC_RECHARGE.getCode(), rechargeOrder.getOrderAmount(), rechargeOrder.getId(), rechargeOrder.getSn(), "用户充值余额", null); } } - } From 4617e5132e70f77ad2e889d8943bb1dadfda04fc Mon Sep 17 00:00:00 2001 From: damonyuan <404054358@qq.com> Date: Sun, 10 Nov 2024 16:35:45 +0800 Subject: [PATCH 4/5] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=E4=BD=99=E9=A2=9D?= =?UTF-8?q?=E5=8F=98=E6=9B=B4=E8=AE=B0=E5=BD=95=E7=9A=84=E5=BD=93=E5=89=8D?= =?UTF-8?q?=E4=BD=99=E9=A2=9D=E6=B2=A1=E6=9C=89=E6=AD=A3=E7=A1=AE=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mdd/common/mapper/log/UserAccountLogMapper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java b/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java index 8712a2fc..4cc5f547 100644 --- a/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java +++ b/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java @@ -43,7 +43,7 @@ public interface UserAccountLogMapper extends IBaseMapper { Integer changeObject = AccountLogEnum.getChangeObject(changeType); - BigDecimal leftAmount = user.getUserMoney().add(changeAmount); + BigDecimal leftAmount = user.getUserMoney(); //.add(changeAmount); UserAccountLog logMoney = new UserAccountLog(); logMoney.setSn(this.randMakeOrderSn()); logMoney.setUserId(userId); @@ -82,7 +82,7 @@ public interface UserAccountLogMapper extends IBaseMapper { break; } - BigDecimal leftAmount = user.getUserMoney().subtract(changeAmount); + BigDecimal leftAmount = user.getUserMoney(); //.subtract(changeAmount); UserAccountLog logMoney = new UserAccountLog(); logMoney.setSn(this.randMakeOrderSn()); From 0378999b3ea3e5b9639894f4c7d34ef0bbff242e Mon Sep 17 00:00:00 2001 From: damonyuan <404054358@qq.com> Date: Sun, 10 Nov 2024 16:41:37 +0800 Subject: [PATCH 5/5] =?UTF-8?q?feat=20=E7=BB=9F=E4=B8=80=E5=85=88=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E5=8F=98=E6=9B=B4=E8=AE=B0=E5=BD=95=E5=86=8Dupdate=20?= =?UTF-8?q?user=20money?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/service/impl/FinanceRechargerServiceImpl.java | 9 +++++---- .../com/mdd/common/mapper/log/UserAccountLogMapper.java | 4 ++-- .../java/com/mdd/front/service/impl/PayServiceImpl.java | 9 +++++---- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/server/like-admin/src/main/java/com/mdd/admin/service/impl/FinanceRechargerServiceImpl.java b/server/like-admin/src/main/java/com/mdd/admin/service/impl/FinanceRechargerServiceImpl.java index 6a338b4a..35fdb68f 100644 --- a/server/like-admin/src/main/java/com/mdd/admin/service/impl/FinanceRechargerServiceImpl.java +++ b/server/like-admin/src/main/java/com/mdd/admin/service/impl/FinanceRechargerServiceImpl.java @@ -167,10 +167,6 @@ public class FinanceRechargerServiceImpl implements IFinanceRechargerService { rechargeOrder.setRefundStatus(1); rechargeOrderMapper.updateById(rechargeOrder); - // 更新用户余额 - user.setUserMoney(user.getUserMoney().subtract(rechargeOrder.getOrderAmount())); - userMapper.updateById(user); - // 记录余额日志 userAccountLogMapper.dec( user.getId(), @@ -182,6 +178,11 @@ public class FinanceRechargerServiceImpl implements IFinanceRechargerService { null ); + + // 更新用户余额 + user.setUserMoney(user.getUserMoney().subtract(rechargeOrder.getOrderAmount())); + userMapper.updateById(user); + // 生成退款记录 String refundSn = refundRecordMapper.randMakeOrderSn("sn"); refundRecord = new RefundRecord(); diff --git a/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java b/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java index 4cc5f547..8712a2fc 100644 --- a/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java +++ b/server/like-common/src/main/java/com/mdd/common/mapper/log/UserAccountLogMapper.java @@ -43,7 +43,7 @@ public interface UserAccountLogMapper extends IBaseMapper { Integer changeObject = AccountLogEnum.getChangeObject(changeType); - BigDecimal leftAmount = user.getUserMoney(); //.add(changeAmount); + BigDecimal leftAmount = user.getUserMoney().add(changeAmount); UserAccountLog logMoney = new UserAccountLog(); logMoney.setSn(this.randMakeOrderSn()); logMoney.setUserId(userId); @@ -82,7 +82,7 @@ public interface UserAccountLogMapper extends IBaseMapper { break; } - BigDecimal leftAmount = user.getUserMoney(); //.subtract(changeAmount); + BigDecimal leftAmount = user.getUserMoney().subtract(changeAmount); UserAccountLog logMoney = new UserAccountLog(); logMoney.setSn(this.randMakeOrderSn()); diff --git a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java index fa7ec63b..f0c058c8 100644 --- a/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java +++ b/server/like-front/src/main/java/com/mdd/front/service/impl/PayServiceImpl.java @@ -359,10 +359,6 @@ public class PayServiceImpl implements IPayService { rechargeOrder.setUpdateTime(System.currentTimeMillis() / 1000); rechargeOrderMapper.updateById(rechargeOrder); - User user = userMapper.selectById(rechargeOrder.getUserId()); - user.setUserMoney(user.getUserMoney().add(rechargeOrder.getOrderAmount())); - user.setUpdateTime(System.currentTimeMillis() / 1000); - userMapper.updateById(user); logMoneyMapper.add(rechargeOrder.getUserId(), AccountLogEnum.UM_INC_RECHARGE.getCode(), @@ -370,6 +366,11 @@ public class PayServiceImpl implements IPayService { rechargeOrder.getId(), rechargeOrder.getSn(), "用户充值余额", null); + + User user = userMapper.selectById(rechargeOrder.getUserId()); + user.setUserMoney(user.getUserMoney().add(rechargeOrder.getOrderAmount())); + user.setUpdateTime(System.currentTimeMillis() / 1000); + userMapper.updateById(user); } } }