Commit 4682650e114819e0d01aa409b5b63e7ea489488c

Authored by YunaiV
1 parent b06a21f9

mall + pay:

1. 先添加 WxAppPayClient、WxH5PayClient 的类,暂未实现
yudao-framework/yudao-spring-boot-starter-biz-pay/src/main/java/cn/iocoder/yudao/framework/pay/core/client/impl/PayClientFactoryImpl.java
... ... @@ -55,14 +55,14 @@ public class PayClientFactoryImpl implements PayClientFactory {
55 55 PayChannelEnum channelEnum = PayChannelEnum.getByCode(channelCode);
56 56 Assert.notNull(channelEnum, String.format("支付渠道(%s) 为空", channelEnum));
57 57 // 创建客户端
58   - // TODO @芋艿 WX_APP 如果不添加在 项目启动的时候去初始化会报错无法启动。所以我手动加了两个,具体需要你来配
59 58 switch (channelEnum) {
60 59 // 微信支付
61 60 case WX_PUB: return (AbstractPayClient<Config>) new WxPubPayClient(channelId, (WxPayClientConfig) config);
62 61 case WX_LITE: return (AbstractPayClient<Config>) new WxLitePayClient(channelId, (WxPayClientConfig) config);
63   - case WX_APP: return (AbstractPayClient<Config>) new WxPubPayClient(channelId, (WxPayClientConfig) config);
  62 + case WX_APP: return (AbstractPayClient<Config>) new WxAppPayClient(channelId, (WxPayClientConfig) config);
64 63 case WX_BAR: return (AbstractPayClient<Config>) new WxBarPayClient(channelId, (WxPayClientConfig) config);
65 64 case WX_NATIVE: return (AbstractPayClient<Config>) new WxNativePayClient(channelId, (WxPayClientConfig) config);
  65 + case WX_H5: return (AbstractPayClient<Config>) new WxH5PayClient(channelId, (WxPayClientConfig) config);
66 66 // 支付宝支付
67 67 case ALIPAY_WAP: return (AbstractPayClient<Config>) new AlipayWapPayClient(channelId, (AlipayPayClientConfig) config);
68 68 case ALIPAY_QR: return (AbstractPayClient<Config>) new AlipayQrPayClient(channelId, (AlipayPayClientConfig) config);
... ...
yudao-framework/yudao-spring-boot-starter-biz-pay/src/main/java/cn/iocoder/yudao/framework/pay/core/client/impl/weixin/WxAppPayClient.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.pay.core.client.impl.weixin;
  2 +
  3 +import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedReqDTO;
  4 +import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedRespDTO;
  5 +import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedReqDTO;
  6 +import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedRespDTO;
  7 +import cn.iocoder.yudao.framework.pay.core.enums.channel.PayChannelEnum;
  8 +import com.github.binarywang.wxpay.constant.WxPayConstants;
  9 +import com.github.binarywang.wxpay.exception.WxPayException;
  10 +
  11 +// TODO 芋艿:未实现
  12 +public class WxAppPayClient extends AbstractWxPayClient {
  13 +
  14 + public WxAppPayClient(Long channelId, WxPayClientConfig config) {
  15 + super(channelId, PayChannelEnum.WX_APP.getCode(), config);
  16 + }
  17 +
  18 + @Override
  19 + protected void doInit() {
  20 + super.doInit(WxPayConstants.TradeType.APP);
  21 + }
  22 +
  23 + @Override
  24 + protected PayRefundUnifiedRespDTO doUnifiedRefund(PayRefundUnifiedReqDTO reqDTO) throws Throwable {
  25 + return null;
  26 + }
  27 +
  28 + @Override
  29 + protected PayOrderUnifiedRespDTO doUnifiedOrderV2(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
  30 + return null;
  31 + }
  32 +
  33 + @Override
  34 + protected PayOrderUnifiedRespDTO doUnifiedOrderV3(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
  35 + return null;
  36 + }
  37 +
  38 +}
... ...
yudao-framework/yudao-spring-boot-starter-biz-pay/src/main/java/cn/iocoder/yudao/framework/pay/core/client/impl/weixin/WxH5PayClient.java 0 → 100644
  1 +package cn.iocoder.yudao.framework.pay.core.client.impl.weixin;
  2 +
  3 +import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedReqDTO;
  4 +import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedRespDTO;
  5 +import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedReqDTO;
  6 +import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedRespDTO;
  7 +import cn.iocoder.yudao.framework.pay.core.enums.channel.PayChannelEnum;
  8 +import com.github.binarywang.wxpay.constant.WxPayConstants;
  9 +import com.github.binarywang.wxpay.exception.WxPayException;
  10 +
  11 +// TODO 芋艿:未实现
  12 +public class WxH5PayClient extends AbstractWxPayClient {
  13 +
  14 + public WxH5PayClient(Long channelId, WxPayClientConfig config) {
  15 + super(channelId, PayChannelEnum.WX_H5.getCode(), config);
  16 + }
  17 +
  18 + @Override
  19 + protected void doInit() {
  20 + super.doInit(WxPayConstants.TradeType.MWEB);
  21 + }
  22 +
  23 + @Override
  24 + protected PayRefundUnifiedRespDTO doUnifiedRefund(PayRefundUnifiedReqDTO reqDTO) throws Throwable {
  25 + return null;
  26 + }
  27 +
  28 + @Override
  29 + protected PayOrderUnifiedRespDTO doUnifiedOrderV2(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
  30 + return null;
  31 + }
  32 +
  33 + @Override
  34 + protected PayOrderUnifiedRespDTO doUnifiedOrderV3(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
  35 + return null;
  36 + }
  37 +
  38 +}
... ...
yudao-framework/yudao-spring-boot-starter-biz-pay/src/main/java/cn/iocoder/yudao/framework/pay/core/enums/channel/PayChannelEnum.java
... ... @@ -19,8 +19,9 @@ public enum PayChannelEnum {
19 19 WX_PUB("wx_pub", "微信 JSAPI 支付", WxPayClientConfig.class), // 公众号网页
20 20 WX_LITE("wx_lite", "微信小程序支付", WxPayClientConfig.class),
21 21 WX_APP("wx_app", "微信 App 支付", WxPayClientConfig.class),
22   - WX_NATIVE("wx_native", "微信 native 支付", WxPayClientConfig.class),
  22 + WX_NATIVE("wx_native", "微信 Native 支付", WxPayClientConfig.class),
23 23 WX_BAR("wx_bar", "微信付款码支付", WxPayClientConfig.class),
  24 + WX_H5("wx_h5", "微信 H5 支付", WxPayClientConfig.class),
24 25  
25 26 ALIPAY_PC("alipay_pc", "支付宝 PC 网站支付", AlipayPayClientConfig.class),
26 27 ALIPAY_WAP("alipay_wap", "支付宝 Wap 网站支付", AlipayPayClientConfig.class),
... ... @@ -30,8 +31,8 @@ public enum PayChannelEnum {
30 31  
31 32 /**
32 33 * 编码
33   - * <p>
34   - * 参考 https://www.pingxx.com/api/支付渠道属性值.html
  34 + *
  35 + * 参考 <a href="https://www.pingxx.com/api/支付渠道属性值.html">支付渠道属性值</a>
35 36 */
36 37 private final String code;
37 38 /**
... ...