| | |
| | | import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl; |
| | | import com.wechat.pay.java.core.Config; |
| | | import com.wechat.pay.java.core.RSAAutoCertificateConfig; |
| | | import com.wechat.pay.java.core.RSAPublicKeyConfig; |
| | | import com.wechat.pay.java.core.http.HostName; |
| | | import com.wechat.pay.java.core.notification.RSAPublicKeyNotificationConfig; |
| | | import com.wechat.pay.java.service.billdownload.BillDownloadService; |
| | | import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiService; |
| | | import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiServiceExtension; |
| | |
| | | public static WxMaService wxMaService; |
| | | /********微信小程序支付**********/ |
| | | public static JsapiService wxPayService; |
| | | public static WxPayService wxPayV2Service; |
| | | // public static WxPayService wxPayV2Service; |
| | | public static RefundService refundService; |
| | | public static JsapiServiceExtension jsapiExtService; |
| | | public static BillDownloadService billDownloadService; |
| | |
| | | void init() { |
| | | this.load_WxMaService(); |
| | | this.load_wxPayService(); |
| | | this.load_wxPayV2Service(); |
| | | this.load_transferToUser(); |
| | | // this.load_wxPayV2Service(); |
| | | this.load_transferToUser(); |
| | | this.wxProperties = wxPayProperties; |
| | | } |
| | |
| | | config.setAppid(StringUtils.trimToNull(wxPayProperties.getSubAppId())); |
| | | config.setSecret(StringUtils.trimToNull(wxPayProperties.getSubAppSecret())); |
| | | }else { |
| | | config.setAppid(StringUtils.trimToNull(wxPayProperties.getAppId())); |
| | | config.setSecret(StringUtils.trimToNull(wxPayProperties.getAppSecret())); |
| | | // config.setAppid(StringUtils.trimToNull(wxPayProperties.getAppId())); |
| | | // config.setSecret(StringUtils.trimToNull(wxPayProperties.getAppSecret())); |
| | | } |
| | | config.setMsgDataFormat("JSON"); |
| | | //config.setToken(""); |
| | |
| | | public void load_wxPayService() { |
| | | try { |
| | | Config config = |
| | | new RSAAutoCertificateConfig.Builder() |
| | | new RSAPublicKeyConfig.Builder() |
| | | .merchantId(wxPayProperties.getMchId()) |
| | | .privateKeyFromPath(wxPayProperties.getPrivateKeyPath()) |
| | | .publicKeyFromPath(wxPayProperties.getPubKeyPath()) |
| | | .publicKeyId(wxPayProperties.getPayPublicKeyId()) |
| | | .merchantSerialNumber(wxPayProperties.getSerialNumer()) |
| | | .apiV3Key(wxPayProperties.getApiV3Key()) |
| | | .build(); |
| | | this.wxPayService = new JsapiService.Builder().config(config).build(); |
| | | |
| | | |
| | | // Config config = |
| | | // new RSAAutoCertificateConfig.Builder() |
| | | // .merchantId(wxPayProperties.getMchId()) |
| | | // .privateKeyFromPath(wxPayProperties.getPrivateKeyPath()) |
| | | //// .publicKeyFromPath(wxPayProperties.getPubKeyPath()) |
| | | //// .publicKeyId("PUB_KEY_ID_0117000719222024112700219100000508") |
| | | // .merchantSerialNumber(wxPayProperties.getSerialNumer()) |
| | | // .apiV3Key(wxPayProperties.getApiV3Key()) |
| | | // .build(); |
| | | // this.wxPayService = new JsapiService.Builder().config(config).build(); |
| | | |
| | | this.jsapiExtService = new JsapiServiceExtension.Builder().config(config).build(); |
| | | this.refundService = new RefundService.Builder().config(config).build(); |
| | |
| | | /** |
| | | * 初始化微信小程序支付 |
| | | */ |
| | | public void load_wxPayV2Service() |
| | | { |
| | | WxPayConfig payConfig = new WxPayConfig(); |
| | | payConfig.setTradeType(WxPayConstants.TradeType.JSAPI); |
| | | payConfig.setSignType(WxPayConstants.SignType.MD5); |
| | | payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId())); |
| | | payConfig.setSubAppId(StringUtils.trimToNull(wxPayProperties.getSubAppId())); |
| | | payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId())); |
| | | payConfig.setSubMchId(StringUtils.trimToNull(wxPayProperties.getSubMchId())); |
| | | payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey())); |
| | | // payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath())); |
| | | payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl())); |
| | | WxPayService wxPayService = new WxPayServiceImpl(); |
| | | wxPayService.setConfig(payConfig); |
| | | this.wxPayV2Service = wxPayService; |
| | | } |
| | | // public void load_wxPayV2Service() |
| | | // { |
| | | // WxPayConfig payConfig = new WxPayConfig(); |
| | | // payConfig.setTradeType(WxPayConstants.TradeType.JSAPI); |
| | | // payConfig.setSignType(WxPayConstants.SignType.MD5); |
| | | // payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId())); |
| | | // payConfig.setSubAppId(StringUtils.trimToNull(wxPayProperties.getSubAppId())); |
| | | // payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId())); |
| | | // payConfig.setSubMchId(StringUtils.trimToNull(wxPayProperties.getSubMchId())); |
| | | // payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey())); |
| | | //// payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath())); |
| | | // payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl())); |
| | | // WxPayService wxPayService = new WxPayServiceImpl(); |
| | | // wxPayService.setConfig(payConfig); |
| | | // this.wxPayV2Service = wxPayService; |
| | | // } |
| | | |
| | | |
| | | /** |
| | |
| | | // } |
| | | |
| | | |
| | | //转账业务 |
| | | public void load_transferToUser() |
| | | { |
| | | TransferToUser transferToUser = new TransferToUser( |
| | | StringUtils.trimToNull(wxPayProperties.getMchId()), //商户id |
| | | StringUtils.trimToNull(wxPayProperties.getSubMchId()), //商户id |
| | | StringUtils.trimToNull(wxPayProperties.getWechatSerialNumer()), //商户API证书序列号,如何获取请参考 https://pay.weixin.qq.com/doc/v3/merchant/4013053053 |
| | | StringUtils.trimToNull(wxPayProperties.getWechatPrivateKeyPath()), // 商户API证书私钥文件路径,本地文件路径 |
| | | StringUtils.trimToNull(wxPayProperties.getWechatPayPublicKeyId()), // 微信支付公钥ID,如何获取请参考 https://pay.weixin.qq.com/doc/v3/merchant/4013038816 |
| | | StringUtils.trimToNull(wxPayProperties.getWechatPubKeyPath()) // 微信支付公钥文件路径,本地文件路径 |
| | | ); |
| | | |
| | | // TransferToUser client = new TransferToUser( |
| | | // "1229817002", // 商户号,是由微信支付系统生成并分配给每个商户的唯一标识符,商户号获取方式参考 https://pay.weixin.qq.com/doc/v3/merchant/4013070756 |
| | | // "3FE90C2F3D40A56E1C51926F31B8A8D22426CCE0", // 商户API证书序列号,如何获取请参考 https://pay.weixin.qq.com/doc/v3/merchant/4013053053 |
| | | // "d://wechatApiclient_key.pem", // 商户API证书私钥文件路径,本地文件路径 |
| | | // "PUB_KEY_ID_0112298170022025071700291836000600", // 微信支付公钥ID,如何获取请参考 https://pay.weixin.qq.com/doc/v3/merchant/4013038816 |
| | | // "d://pub_key.pem" // 微信支付公钥文件路径,本地文件路径 |
| | | // ); |
| | | this.transferToUser = transferToUser; |
| | | } |
| | | |