From 6acf6357094588946b5528f1ef1ed84a0f1037fd Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期五, 13 六月 2025 19:45:27 +0800 Subject: [PATCH] 小程序收付款 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java | 60 +++++++++++++++++++++++++++++++----------------------------- 1 files changed, 31 insertions(+), 29 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java index b5f7d13..e98cf90 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopWithdrawController.java @@ -26,6 +26,7 @@ import com.ruoyi.other.util.payment.model.SinglePay; import com.ruoyi.other.util.payment.model.SinglePayCallbackResult; import com.ruoyi.other.util.payment.model.SinglePayResult; +import com.ruoyi.other.util.payment.wx.WechatPayService; import com.ruoyi.system.api.domain.SysUser; import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.api.model.LoginUser; @@ -37,11 +38,13 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.io.IOException; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; +import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; @@ -75,6 +78,9 @@ private SysUserClient sysUserClient; @Autowired private ShopWithdrawMapper shopWithdrawMapper; + + @Autowired + private WechatPayService wechatPayService; @GetMapping("/getShopById") @@ -269,33 +275,30 @@ Shop shop = shopService.getById(shopWithdraw1.getShopId()); BigDecimal money = shopWithdraw1.getMoney(); if(1 == shopWithdraw.getAuditStatus()){ - //通过 - // 先检查账户余额是否充足 todo 商户编号 - AccountBalanceQueryResult accountBalanceQueryResult = TransferUtil.accountBalanceQuery(); - if(null == accountBalanceQueryResult){ - return R.fail("查询账户余额出错"); - } - Double useAbleSettAmount = accountBalanceQueryResult.getUseAbleSettAmount(); - if(useAbleSettAmount < (shopWithdraw1.getMoney().doubleValue() + 1)){ - return R.fail("账户可用余额不足,请先补充账户余额"); - } - //银行卡转账 - SinglePay singlePay = new SinglePay(); - singlePay.setTradeMerchantNo(TransferUtil.sysTradeMerchantNo); - singlePay.setMerchantOrderNo(shopWithdraw1.getId().toString()); - singlePay.setReceiverAccountNoEnc(shop.getReceiverAccountNoEnc()); - singlePay.setReceiverNameEnc(shop.getReceiverNameEnc()); - singlePay.setReceiverAccountType(shop.getReceiverAccountType()); - singlePay.setReceiverBankChannelNo(shop.getReceiverBankChannelNo()); - singlePay.setPaidAmount(shopWithdraw1.getMoney().doubleValue()); - singlePay.setPaidDesc("账户余额提现"); - singlePay.setPaidUse("208"); - singlePay.setCallbackUrl("/other/shop-withdraw/withdrawalCallback"); - SinglePayResult singlePayResult = TransferUtil.singlePay(singlePay); - if(null == singlePayResult){ - return R.fail("转账失败"); - } - shopWithdraw1.setStatus(1); + //取消商户转账,线下转账 + /* + try { + Map<String, String> map = wechatPayService.payToBankCard(shopWithdraw1.getId().toString(), + shopWithdraw1.getReceiverAccountNoEnc(),shopWithdraw1.getReceiverNameEnc(),shopWithdraw1.getReceiverBankChannelNo(),shopWithdraw1.getMoney(),shopWithdraw.getRemark()); + if (map.get("return_code").equals("SUCCESS")) { + System.out.println("转账申请成功"); + shopWithdraw1.setStatus(1); + }else { + return R.fail("转账申请失败"); + } + } catch (Exception e) { + throw new RuntimeException(e); + }*/ + //到账 + + shopWithdraw1.setStatus(2); + shopWithdraw1.setArrivalTime(LocalDateTime.now()); + shopWithdrawService.updateById(shopWithdraw); + //更新店铺审核中的金额,和提现金额 + shop.setWithdrawAuditMoney(shop.getWithdrawAuditMoney().subtract(shopWithdraw1.getMoney()));//审核中金额 + shop.setWithdrawMoney(shop.getWithdrawMoney().add(shopWithdraw1.getMoney()));//提现金额 + shopService.updateById(shop); + } if(2 == shopWithdraw.getAuditStatus()){ //审核不通过 @@ -330,8 +333,7 @@ return R.ok(); } - - + /** * 提现审核通过后转账回调通知 * @param singlePayCallbackResult -- Gitblit v1.7.1