mirror of
				https://github.com/YunaiV/ruoyi-vue-pro.git
				synced 2025-11-04 08:06:12 +08:00 
			
		
		
		
	mall + pay:
1. 先添加 WxAppPayClient、WxH5PayClient 的类,暂未实现
This commit is contained in:
		@ -55,14 +55,14 @@ public class PayClientFactoryImpl implements PayClientFactory {
 | 
				
			|||||||
        PayChannelEnum channelEnum = PayChannelEnum.getByCode(channelCode);
 | 
					        PayChannelEnum channelEnum = PayChannelEnum.getByCode(channelCode);
 | 
				
			||||||
        Assert.notNull(channelEnum, String.format("支付渠道(%s) 为空", channelEnum));
 | 
					        Assert.notNull(channelEnum, String.format("支付渠道(%s) 为空", channelEnum));
 | 
				
			||||||
        // 创建客户端
 | 
					        // 创建客户端
 | 
				
			||||||
        // TODO @芋艿 WX_APP 如果不添加在 项目启动的时候去初始化会报错无法启动。所以我手动加了两个,具体需要你来配
 | 
					 | 
				
			||||||
        switch (channelEnum) {
 | 
					        switch (channelEnum) {
 | 
				
			||||||
            // 微信支付
 | 
					            // 微信支付
 | 
				
			||||||
            case WX_PUB: return (AbstractPayClient<Config>) new WxPubPayClient(channelId, (WxPayClientConfig) config);
 | 
					            case WX_PUB: return (AbstractPayClient<Config>) new WxPubPayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
            case WX_LITE: return (AbstractPayClient<Config>) new WxLitePayClient(channelId, (WxPayClientConfig) config);
 | 
					            case WX_LITE: return (AbstractPayClient<Config>) new WxLitePayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
            case WX_APP: return (AbstractPayClient<Config>) new WxPubPayClient(channelId, (WxPayClientConfig) config);
 | 
					            case WX_APP: return (AbstractPayClient<Config>) new WxAppPayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
            case WX_BAR: return (AbstractPayClient<Config>) new WxBarPayClient(channelId, (WxPayClientConfig) config);
 | 
					            case WX_BAR: return (AbstractPayClient<Config>) new WxBarPayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
            case WX_NATIVE: return (AbstractPayClient<Config>) new WxNativePayClient(channelId, (WxPayClientConfig) config);
 | 
					            case WX_NATIVE: return (AbstractPayClient<Config>) new WxNativePayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
 | 
					            case WX_H5: return (AbstractPayClient<Config>) new WxH5PayClient(channelId, (WxPayClientConfig) config);
 | 
				
			||||||
            // 支付宝支付
 | 
					            // 支付宝支付
 | 
				
			||||||
            case ALIPAY_WAP: return (AbstractPayClient<Config>) new AlipayWapPayClient(channelId, (AlipayPayClientConfig) config);
 | 
					            case ALIPAY_WAP: return (AbstractPayClient<Config>) new AlipayWapPayClient(channelId, (AlipayPayClientConfig) config);
 | 
				
			||||||
            case ALIPAY_QR: return (AbstractPayClient<Config>) new AlipayQrPayClient(channelId, (AlipayPayClientConfig) config);
 | 
					            case ALIPAY_QR: return (AbstractPayClient<Config>) new AlipayQrPayClient(channelId, (AlipayPayClientConfig) config);
 | 
				
			||||||
 | 
				
			|||||||
@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					package cn.iocoder.yudao.framework.pay.core.client.impl.weixin;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedReqDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedRespDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedReqDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedRespDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.enums.channel.PayChannelEnum;
 | 
				
			||||||
 | 
					import com.github.binarywang.wxpay.constant.WxPayConstants;
 | 
				
			||||||
 | 
					import com.github.binarywang.wxpay.exception.WxPayException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// TODO 芋艿:未实现
 | 
				
			||||||
 | 
					public class WxAppPayClient extends AbstractWxPayClient {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public WxAppPayClient(Long channelId, WxPayClientConfig config) {
 | 
				
			||||||
 | 
					        super(channelId, PayChannelEnum.WX_APP.getCode(), config);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected void doInit() {
 | 
				
			||||||
 | 
					        super.doInit(WxPayConstants.TradeType.APP);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayRefundUnifiedRespDTO doUnifiedRefund(PayRefundUnifiedReqDTO reqDTO) throws Throwable {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayOrderUnifiedRespDTO doUnifiedOrderV2(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayOrderUnifiedRespDTO doUnifiedOrderV3(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					package cn.iocoder.yudao.framework.pay.core.client.impl.weixin;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedReqDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.order.PayOrderUnifiedRespDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedReqDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.client.dto.refund.PayRefundUnifiedRespDTO;
 | 
				
			||||||
 | 
					import cn.iocoder.yudao.framework.pay.core.enums.channel.PayChannelEnum;
 | 
				
			||||||
 | 
					import com.github.binarywang.wxpay.constant.WxPayConstants;
 | 
				
			||||||
 | 
					import com.github.binarywang.wxpay.exception.WxPayException;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// TODO 芋艿:未实现
 | 
				
			||||||
 | 
					public class WxH5PayClient extends AbstractWxPayClient {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public WxH5PayClient(Long channelId, WxPayClientConfig config) {
 | 
				
			||||||
 | 
					        super(channelId, PayChannelEnum.WX_H5.getCode(), config);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected void doInit() {
 | 
				
			||||||
 | 
					        super.doInit(WxPayConstants.TradeType.MWEB);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayRefundUnifiedRespDTO doUnifiedRefund(PayRefundUnifiedReqDTO reqDTO) throws Throwable {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayOrderUnifiedRespDTO doUnifiedOrderV2(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    protected PayOrderUnifiedRespDTO doUnifiedOrderV3(PayOrderUnifiedReqDTO reqDTO) throws WxPayException {
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -19,8 +19,9 @@ public enum PayChannelEnum {
 | 
				
			|||||||
    WX_PUB("wx_pub", "微信 JSAPI 支付", WxPayClientConfig.class), // 公众号网页
 | 
					    WX_PUB("wx_pub", "微信 JSAPI 支付", WxPayClientConfig.class), // 公众号网页
 | 
				
			||||||
    WX_LITE("wx_lite", "微信小程序支付", WxPayClientConfig.class),
 | 
					    WX_LITE("wx_lite", "微信小程序支付", WxPayClientConfig.class),
 | 
				
			||||||
    WX_APP("wx_app", "微信 App 支付", WxPayClientConfig.class),
 | 
					    WX_APP("wx_app", "微信 App 支付", WxPayClientConfig.class),
 | 
				
			||||||
    WX_NATIVE("wx_native", "微信 native 支付", WxPayClientConfig.class),
 | 
					    WX_NATIVE("wx_native", "微信 Native 支付", WxPayClientConfig.class),
 | 
				
			||||||
    WX_BAR("wx_bar", "微信付款码支付", WxPayClientConfig.class),
 | 
					    WX_BAR("wx_bar", "微信付款码支付", WxPayClientConfig.class),
 | 
				
			||||||
 | 
					    WX_H5("wx_h5", "微信 H5 支付", WxPayClientConfig.class),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    ALIPAY_PC("alipay_pc", "支付宝 PC 网站支付", AlipayPayClientConfig.class),
 | 
					    ALIPAY_PC("alipay_pc", "支付宝 PC 网站支付", AlipayPayClientConfig.class),
 | 
				
			||||||
    ALIPAY_WAP("alipay_wap", "支付宝 Wap 网站支付", AlipayPayClientConfig.class),
 | 
					    ALIPAY_WAP("alipay_wap", "支付宝 Wap 网站支付", AlipayPayClientConfig.class),
 | 
				
			||||||
@ -30,8 +31,8 @@ public enum PayChannelEnum {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * 编码
 | 
					     * 编码
 | 
				
			||||||
     * <p>
 | 
					     *
 | 
				
			||||||
     * 参考 https://www.pingxx.com/api/支付渠道属性值.html
 | 
					     * 参考 <a href="https://www.pingxx.com/api/支付渠道属性值.html">支付渠道属性值</a>
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    private final String code;
 | 
					    private final String code;
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user