新增服务商模式

This commit is contained in:
egan
2018-09-29 17:55:39 +08:00
parent d82c70f229
commit af74b2355b
4 changed files with 40 additions and 10 deletions

View File

@@ -5,7 +5,7 @@
<parent>
<artifactId>pay-java-parent</artifactId>
<groupId>com.egzosn</groupId>
<version>2.10.3-SNAPSHOT</version>
<version>2.11.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>pay-java-wx</artifactId>

View File

@@ -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;
}
}

View File

@@ -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
* </pre>
*/
public class WxPayService extends BasePayService {
public class WxPayService extends BasePayService<WxPayConfigStorage> {
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<String, Object> parameters = new TreeMap<String, Object>();
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;

View File

@@ -90,10 +90,12 @@ public enum WxTransactionType implements TransactionType {
/**
* 银行卡转账
*/
@Deprecated
BANK("mmpaysptrans/pay_bank"),
/**
* 转账查询
*/
@Deprecated
QUERY_BANK("mmpaysptrans/query_bank")
;