diff --git a/framework/src/main/java/cn/lili/modules/payment/kit/Payment.java b/framework/src/main/java/cn/lili/modules/payment/kit/Payment.java index 0e7c067d..6c995cdc 100644 --- a/framework/src/main/java/cn/lili/modules/payment/kit/Payment.java +++ b/framework/src/main/java/cn/lili/modules/payment/kit/Payment.java @@ -132,6 +132,17 @@ public interface Payment { return api + "/buyer/cashier/callback/" + paymentMethodEnum.name(); } + /** + * 支付回调地址 + * + * @param api api地址 + * @param paymentMethodEnum 支付类型 + * @return 回调地址 + */ + default String aliCallback(String api, PaymentMethodEnum paymentMethodEnum,String params) { + return api + "/buyer/cashier/callback/" + paymentMethodEnum.name()+"?passback_params="+params; + } + /** * 支付异步通知地址 * diff --git a/framework/src/main/java/cn/lili/modules/payment/kit/plugin/alipay/AliPayPlugin.java b/framework/src/main/java/cn/lili/modules/payment/kit/plugin/alipay/AliPayPlugin.java index af4f43e7..3365b6cb 100644 --- a/framework/src/main/java/cn/lili/modules/payment/kit/plugin/alipay/AliPayPlugin.java +++ b/framework/src/main/java/cn/lili/modules/payment/kit/plugin/alipay/AliPayPlugin.java @@ -93,7 +93,7 @@ public class AliPayPlugin implements Payment { payModel.setProductCode("QUICK_WAP_PAY"); try { log.info("支付宝H5支付:{}", JSONUtil.toJsonStr(payModel)); - AliPayRequest.wapPay(response, payModel, callbackUrl(apiProperties.getBuyer(), PaymentMethodEnum.ALIPAY), + AliPayRequest.wapPay(response, payModel, aliCallback(apiProperties.getBuyer(), PaymentMethodEnum.ALIPAY, URLEncoder.createAll().encode(BeanUtil.formatKeyValuePair(payParam), StandardCharsets.UTF_8)), notifyUrl(apiProperties.getBuyer(), PaymentMethodEnum.ALIPAY)); } catch (Exception e) { log.error("H5支付异常", e);