|
|
@@ -1,18 +1,12 @@ |
|
|
|
package com.github.binarywang.wxpay.bean.request; |
|
|
|
|
|
|
|
import com.thoughtworks.xstream.annotations.XStreamAlias; |
|
|
|
import me.chanjar.weixin.common.annotation.Required; |
|
|
|
import me.chanjar.weixin.common.util.ToStringUtils; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 企业付款请求对象 |
|
|
|
* 注释中各行每个字段描述对应如下: |
|
|
|
* <li>字段名 |
|
|
|
* <li>变量名 |
|
|
|
* <li>是否必填 |
|
|
|
* <li>类型 |
|
|
|
* <li>示例值 |
|
|
|
* <li>描述 |
|
|
|
* </pre> |
|
|
|
* Created by Binary Wang on 2016/10/02. |
|
|
|
* |
|
|
@@ -22,12 +16,12 @@ import me.chanjar.weixin.common.util.ToStringUtils; |
|
|
|
public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 公众账号appid |
|
|
|
* mch_appid |
|
|
|
* 是 |
|
|
|
* wx8888888888888888 |
|
|
|
* String |
|
|
|
* 微信分配的公众账号ID(企业号corpid即为此appId) |
|
|
|
* 字段名:公众账号appid |
|
|
|
* 变量名:mch_appid |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:wx8888888888888888 |
|
|
|
* 类型:String |
|
|
|
* 描述:微信分配的公众账号ID(企业号corpid即为此appId) |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@XStreamAlias("mch_appid") |
|
|
@@ -35,12 +29,12 @@ public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 商户号 |
|
|
|
* mchid |
|
|
|
* 是 |
|
|
|
* 1900000109 |
|
|
|
* String(32) |
|
|
|
* 微信支付分配的商户号 |
|
|
|
* 字段名:商户号 |
|
|
|
* 变量名:mchid |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:1900000109 |
|
|
|
* 类型:String(32) |
|
|
|
* 描述:微信支付分配的商户号 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@XStreamAlias("mchid") |
|
|
@@ -48,12 +42,12 @@ public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 设备号 |
|
|
|
* device_info |
|
|
|
* 否 |
|
|
|
* 13467007045764 |
|
|
|
* String(32) |
|
|
|
* 微信支付分配的终端设备号 |
|
|
|
* 字段名:设备号 |
|
|
|
* 变量名:device_info |
|
|
|
* 是否必填:否 |
|
|
|
* 示例值:13467007045764 |
|
|
|
* 类型:String(32) |
|
|
|
* 描述:微信支付分配的终端设备号 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@XStreamAlias("device_info") |
|
|
@@ -61,53 +55,56 @@ public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 商户订单号 |
|
|
|
* partner_trade_no |
|
|
|
* 是 |
|
|
|
* 10000098201411111234567890 |
|
|
|
* String |
|
|
|
* 商户订单号 |
|
|
|
* 字段名:商户订单号 |
|
|
|
* 变量名:partner_trade_no |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:10000098201411111234567890 |
|
|
|
* 类型:String |
|
|
|
* 描述:商户订单号 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("partner_trade_no") |
|
|
|
private String partnerTradeNo; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 需保持唯一性 用户openid |
|
|
|
* openid |
|
|
|
* 是 |
|
|
|
* oxTWIuGaIt6gTKsQRLau2M0yL16E |
|
|
|
* String |
|
|
|
* 商户appid下,某用户的openid |
|
|
|
* 字段名:需保持唯一性 用户openid |
|
|
|
* 变量名:openid |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:oxTWIuGaIt6gTKsQRLau2M0yL16E |
|
|
|
* 类型:String |
|
|
|
* 描述:商户appid下,某用户的openid |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("openid") |
|
|
|
private String openid; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 校验用户姓名选项 |
|
|
|
* check_name |
|
|
|
* 是 |
|
|
|
* OPTION_CHECK |
|
|
|
* String |
|
|
|
* NO_CHECK:不校验真实姓名 |
|
|
|
* 字段名:校验用户姓名选项 |
|
|
|
* 变量名:check_name |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:OPTION_CHECK |
|
|
|
* 类型:String |
|
|
|
* 描述:NO_CHECK:不校验真实姓名 |
|
|
|
* FORCE_CHECK:强校验真实姓名(未实名认证的用户会校验失败,无法转账) |
|
|
|
* OPTION_CHECK:针对已实名认证的用户才校验真实姓名(未实名认证用户不校验,可以转账成功) |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("check_name") |
|
|
|
private String checkName; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 收款用户姓名 |
|
|
|
* re_user_name |
|
|
|
* 可选 |
|
|
|
* 马花花 |
|
|
|
* String |
|
|
|
* 收款用户真实姓名。 |
|
|
|
* 字段名:收款用户姓名 |
|
|
|
* 变量名:re_user_name |
|
|
|
* 是否必填:可选 |
|
|
|
* 示例值:马花花 |
|
|
|
* 类型:String |
|
|
|
* 描述:收款用户真实姓名。 |
|
|
|
* 如果check_name设置为FORCE_CHECK或OPTION_CHECK, 则必填用户真实姓名 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
@@ -116,43 +113,71 @@ public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 金额 |
|
|
|
* amount |
|
|
|
* 是 |
|
|
|
* 10099 |
|
|
|
* int |
|
|
|
* 企业付款金额, 单位为分 |
|
|
|
* 字段名:金额 |
|
|
|
* 变量名:amount |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:10099 |
|
|
|
* 类型:int |
|
|
|
* 描述:企业付款金额, 单位为分 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("amount") |
|
|
|
private Integer amount; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* 企业付款描述信息 |
|
|
|
* desc |
|
|
|
* 是 |
|
|
|
* 理赔 |
|
|
|
* String |
|
|
|
* 企业付款操作说明信息。必填。 |
|
|
|
* 字段名:企业付款描述信息 |
|
|
|
* 变量名:desc |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:理赔 |
|
|
|
* 类型:String |
|
|
|
* 描述:企业付款操作说明信息。必填。 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("desc") |
|
|
|
private String description; |
|
|
|
|
|
|
|
/** |
|
|
|
* <pre> |
|
|
|
* Ip地址 |
|
|
|
* spbill_create_ip |
|
|
|
* 是 |
|
|
|
* 192.168.0.1 |
|
|
|
* String(32) |
|
|
|
* 调用接口的机器Ip地址 |
|
|
|
* 字段名:Ip地址 |
|
|
|
* 变量名:spbill_create_ip |
|
|
|
* 是否必填:是 |
|
|
|
* 示例值:192.168.0.1 |
|
|
|
* 类型:String(32) |
|
|
|
* 描述:调用接口的机器Ip地址 |
|
|
|
* </pre> |
|
|
|
*/ |
|
|
|
@Required |
|
|
|
@XStreamAlias("spbill_create_ip") |
|
|
|
private String spbillCreateIp; |
|
|
|
|
|
|
|
public WxEntPayRequest() { |
|
|
|
} |
|
|
|
|
|
|
|
private WxEntPayRequest(Builder builder) { |
|
|
|
setAppid(builder.appid); |
|
|
|
setMchId(builder.mchId); |
|
|
|
setSubAppId(builder.subAppId); |
|
|
|
setSubMchId(builder.subMchId); |
|
|
|
setNonceStr(builder.nonceStr); |
|
|
|
setSign(builder.sign); |
|
|
|
mchAppid = builder.mchAppid; |
|
|
|
setMchId(builder.mchId); |
|
|
|
setDeviceInfo(builder.deviceInfo); |
|
|
|
setPartnerTradeNo(builder.partnerTradeNo); |
|
|
|
setOpenid(builder.openid); |
|
|
|
setCheckName(builder.checkName); |
|
|
|
setReUserName(builder.reUserName); |
|
|
|
setAmount(builder.amount); |
|
|
|
setDescription(builder.description); |
|
|
|
setSpbillCreateIp(builder.spbillCreateIp); |
|
|
|
} |
|
|
|
|
|
|
|
public static Builder newBuilder() { |
|
|
|
return new Builder(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
protected void checkConstraints() { |
|
|
@@ -248,4 +273,103 @@ public class WxEntPayRequest extends WxPayBaseRequest { |
|
|
|
return ToStringUtils.toSimpleString(this); |
|
|
|
} |
|
|
|
|
|
|
|
public static final class Builder { |
|
|
|
private String appid; |
|
|
|
private String mchId; |
|
|
|
private String deviceInfo; |
|
|
|
private String partnerTradeNo; |
|
|
|
private String openid; |
|
|
|
private String checkName; |
|
|
|
private String reUserName; |
|
|
|
private Integer amount; |
|
|
|
private String description; |
|
|
|
private String spbillCreateIp; |
|
|
|
private String subAppId; |
|
|
|
private String subMchId; |
|
|
|
private String nonceStr; |
|
|
|
private String sign; |
|
|
|
private String mchAppid; |
|
|
|
|
|
|
|
private Builder() { |
|
|
|
} |
|
|
|
|
|
|
|
public Builder appid(String appid) { |
|
|
|
this.appid = appid; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder mchId(String mchId) { |
|
|
|
this.mchId = mchId; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder deviceInfo(String deviceInfo) { |
|
|
|
this.deviceInfo = deviceInfo; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder partnerTradeNo(String partnerTradeNo) { |
|
|
|
this.partnerTradeNo = partnerTradeNo; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder openid(String openid) { |
|
|
|
this.openid = openid; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder checkName(String checkName) { |
|
|
|
this.checkName = checkName; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder reUserName(String reUserName) { |
|
|
|
this.reUserName = reUserName; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder amount(Integer amount) { |
|
|
|
this.amount = amount; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder description(String description) { |
|
|
|
this.description = description; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder spbillCreateIp(String spbillCreateIp) { |
|
|
|
this.spbillCreateIp = spbillCreateIp; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public WxEntPayRequest build() { |
|
|
|
return new WxEntPayRequest(this); |
|
|
|
} |
|
|
|
|
|
|
|
public Builder subAppId(String subAppId) { |
|
|
|
this.subAppId = subAppId; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder subMchId(String subMchId) { |
|
|
|
this.subMchId = subMchId; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder nonceStr(String nonceStr) { |
|
|
|
this.nonceStr = nonceStr; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder sign(String sign) { |
|
|
|
this.sign = sign; |
|
|
|
return this; |
|
|
|
} |
|
|
|
|
|
|
|
public Builder mchAppid(String mchAppid) { |
|
|
|
this.mchAppid = mchAppid; |
|
|
|
return this; |
|
|
|
} |
|
|
|
} |
|
|
|
} |