From 25e6e8fd8f8e01256a0486eeb4d2fb208ec9ee58 Mon Sep 17 00:00:00 2001 From: bootx Date: Sun, 11 May 2025 14:48:36 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E5=BE=AE=E4=BF=A1=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=95=86=E9=80=80=E6=AC=BE=E5=92=8C=E5=9B=9E=E8=B0=83=E5=A4=84?= =?UTF-8?q?=E7=90=86=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/payment/callback/WechatPayCallbackService.java | 2 +- .../service/payment/callback/WechatRefundCallbackService.java | 2 +- .../payment/callback/WechatTransferCallbackService.java | 2 +- .../service/payment/refund/WechatSubRefundV3Service.java | 4 ++++ 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatPayCallbackService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatPayCallbackService.java index 1c2e7397..72aadc4b 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatPayCallbackService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatPayCallbackService.java @@ -73,7 +73,7 @@ public class WechatPayCallbackService { callbackInfo.setCallbackType(TradeTypeEnum.PAY) .setChannel(isv? ChannelEnum.WECHAT_ISV.getCode():ChannelEnum.WECHAT.getCode()); - WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(false); + WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(isv); WxPayService wxPayService = wechatPayConfigService.wxJavaSdk(config); // v2 或 v3 if (Objects.equals(config.getApiVersion(), WechatPayCode.API_V2)) { diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatRefundCallbackService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatRefundCallbackService.java index 8462d895..0044f048 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatRefundCallbackService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatRefundCallbackService.java @@ -75,7 +75,7 @@ public class WechatRefundCallbackService { callbackInfo.setCallbackType(TradeTypeEnum.REFUND) .setChannel(isv? ChannelEnum.WECHAT_ISV.getCode():ChannelEnum.WECHAT.getCode()); - WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(false); + WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(isv); WxPayService wxPayService = wechatPayConfigService.wxJavaSdk(config); // v2 或 v3 if (Objects.equals(config.getApiVersion(), WechatPayCode.API_V2)) { diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatTransferCallbackService.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatTransferCallbackService.java index a705d48c..d28521a5 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatTransferCallbackService.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/callback/WechatTransferCallbackService.java @@ -66,7 +66,7 @@ public class WechatTransferCallbackService { CallbackLocal callbackInfo = PaymentContextLocal.get().getCallbackInfo(); callbackInfo.setChannel(isv? ChannelEnum.WECHAT_ISV.getCode():ChannelEnum.WECHAT.getCode()) .setCallbackType(TradeTypeEnum.TRANSFER); - WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(false); + WechatPayConfig config = wechatPayConfigService.getAndCheckConfig(isv); WxPayService wxPayService = wechatPayConfigService.wxJavaSdk(config); // V3 回调接收处理 String body = JakartaServletUtil.getBody(request); diff --git a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/refund/WechatSubRefundV3Service.java b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/refund/WechatSubRefundV3Service.java index 127ff4ec..9d8fc1f4 100644 --- a/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/refund/WechatSubRefundV3Service.java +++ b/daxpay-open-channel/daxpay-open-channel-wechat/src/main/java/org/dromara/daxpay/channel/wechat/service/payment/refund/WechatSubRefundV3Service.java @@ -1,5 +1,6 @@ package org.dromara.daxpay.channel.wechat.service.payment.refund; +import cn.hutool.core.util.StrUtil; import org.dromara.daxpay.channel.wechat.entity.config.WechatPayConfig; import org.dromara.daxpay.channel.wechat.enums.WechatRefundStatusEnum; import org.dromara.daxpay.channel.wechat.service.payment.config.WechatPayConfigService; @@ -48,6 +49,9 @@ public class WechatSubRefundV3Service { .setOutTradeNo(refundOrder.getOrderNo()) .setAmount(amount) .setSubMchid(config.getSubMchId()); + if (StrUtil.isBlank(request.getReason())){ + request.setReason("退款"); + } try { WxPayRefundV3Result result = wxPayService.refundV3(request);