From af74b2355bab098bce643bd724b47d78fca3c261 Mon Sep 17 00:00:00 2001 From: egan Date: Sat, 29 Sep 2018 17:55:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9C=8D=E5=8A=A1=E5=95=86?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pay-java-wx/pom.xml | 2 +- .../egzosn/pay/wx/api/WxPayConfigStorage.java | 32 ++++++++++++++++--- .../com/egzosn/pay/wx/api/WxPayService.java | 14 +++++--- .../egzosn/pay/wx/bean/WxTransactionType.java | 2 ++ 4 files changed, 40 insertions(+), 10 deletions(-) diff --git a/pay-java-wx/pom.xml b/pay-java-wx/pom.xml index 3ef53dd..b2b51b8 100644 --- a/pay-java-wx/pom.xml +++ b/pay-java-wx/pom.xml @@ -5,7 +5,7 @@ pay-java-parent com.egzosn - 2.10.3-SNAPSHOT + 2.11.1-SNAPSHOT 4.0.0 pay-java-wx diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java index 6382744..15d039a 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayConfigStorage.java @@ -15,13 +15,21 @@ public class WxPayConfigStorage extends BasePayConfigStorage { /** - * 应用id + * 微信分配的公众账号ID */ - private String appid ; + private String appid ; /** - * 商户号 合作者id + * 微信分配的子商户公众账号ID */ - private String mchId; + private String subAppid ; + /** + * 微信支付分配的商户号 合作者id + */ + private String mchId; + /** + * 微信支付分配的子商户号,开发者模式下必填 合作者id + */ + private String subMchId; @@ -75,4 +83,20 @@ public class WxPayConfigStorage extends BasePayConfigStorage { public void setSecretKey(String secretKey) { setKeyPrivate(secretKey); } + + public String getSubAppid() { + return subAppid; + } + + public void setSubAppid(String subAppid) { + this.subAppid = subAppid; + } + + public String getSubMchId() { + return subMchId; + } + + public void setSubMchId(String subMchId) { + this.subMchId = subMchId; + } } diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java index 1c1f08c..1c10433 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java @@ -3,7 +3,6 @@ package com.egzosn.pay.wx.api; import com.alibaba.fastjson.JSONObject; import com.egzosn.pay.common.api.BasePayService; import com.egzosn.pay.common.api.Callback; -import com.egzosn.pay.common.api.PayConfigStorage; import com.egzosn.pay.common.bean.*; import com.egzosn.pay.common.bean.result.PayException; import com.egzosn.pay.common.exception.PayErrorException; @@ -38,7 +37,7 @@ import static com.egzosn.pay.wx.bean.WxTransferType.*; * date 2016-5-18 14:09:01 * */ -public class WxPayService extends BasePayService { +public class WxPayService extends BasePayService { protected final Log LOG = LogFactory.getLog(WxPayService.class); @@ -72,7 +71,7 @@ public class WxPayService extends BasePayService { * 创建支付服务 * @param payConfigStorage 微信对应的支付配置 */ - public WxPayService(PayConfigStorage payConfigStorage) { + public WxPayService(WxPayConfigStorage payConfigStorage) { super(payConfigStorage); } /** @@ -80,7 +79,7 @@ public class WxPayService extends BasePayService { * @param payConfigStorage 微信对应的支付配置 * @param configStorage 微信对应的网络配置,包含代理配置、ssl证书配置 */ - public WxPayService(PayConfigStorage payConfigStorage, HttpConfigStorage configStorage) { + public WxPayService(WxPayConfigStorage payConfigStorage, HttpConfigStorage configStorage) { super(payConfigStorage, configStorage); } @@ -157,7 +156,12 @@ public class WxPayService extends BasePayService { Map parameters = new TreeMap(); parameters.put(APPID, payConfigStorage.getAppid()); - parameters.put("mch_id", payConfigStorage.getPid()); + parameters.put("mch_id", payConfigStorage.getMchId()); + //判断如果是服务商模式信息则加入 + if (StringUtils.isEmpty(payConfigStorage.getSubAppid()) && StringUtils.isEmpty(payConfigStorage.getSubMchId())){ + parameters.put("sub_appid", payConfigStorage.getSubAppid()); + parameters.put("sub_mch_id", payConfigStorage.getSubMchId()); + } parameters.put("nonce_str", SignUtils.randomStr()); return parameters; diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/bean/WxTransactionType.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/bean/WxTransactionType.java index 8ff8252..c7028c5 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/bean/WxTransactionType.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/bean/WxTransactionType.java @@ -90,10 +90,12 @@ public enum WxTransactionType implements TransactionType { /** * 银行卡转账 */ + @Deprecated BANK("mmpaysptrans/pay_bank"), /** * 转账查询 */ + @Deprecated QUERY_BANK("mmpaysptrans/query_bank") ;