| @@ -142,17 +142,26 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| */ | */ | ||||
| @XStreamAlias("refund_account") | @XStreamAlias("refund_account") | ||||
| private String refundAccount; | private String refundAccount; | ||||
| public WxPayRefundRequest() { | |||||
| } | |||||
| /** | |||||
| * <pre> | |||||
| * 退款原因 | |||||
| * refund_account | |||||
| * 否 | |||||
| * String(80) | |||||
| * 商品已售完 | |||||
| * 若商户传入,会在下发给用户的退款消息中体现退款原因 | |||||
| * </pre> | |||||
| */ | |||||
| @XStreamAlias("refund_desc") | |||||
| private String refundDesc; | |||||
| private WxPayRefundRequest(Builder builder) { | private WxPayRefundRequest(Builder builder) { | ||||
| setDeviceInfo(builder.deviceInfo); | setDeviceInfo(builder.deviceInfo); | ||||
| setAppid(builder.appid); | setAppid(builder.appid); | ||||
| setTransactionId(builder.transactionId); | setTransactionId(builder.transactionId); | ||||
| setMchId(builder.mchId); | setMchId(builder.mchId); | ||||
| setOutTradeNo(builder.outTradeNo); | |||||
| setSubAppId(builder.subAppId); | setSubAppId(builder.subAppId); | ||||
| setOutTradeNo(builder.outTradeNo); | |||||
| setSubMchId(builder.subMchId); | setSubMchId(builder.subMchId); | ||||
| setOutRefundNo(builder.outRefundNo); | setOutRefundNo(builder.outRefundNo); | ||||
| setNonceStr(builder.nonceStr); | setNonceStr(builder.nonceStr); | ||||
| @@ -162,21 +171,13 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| setRefundFeeType(builder.refundFeeType); | setRefundFeeType(builder.refundFeeType); | ||||
| setOpUserId(builder.opUserId); | setOpUserId(builder.opUserId); | ||||
| setRefundAccount(builder.refundAccount); | setRefundAccount(builder.refundAccount); | ||||
| setRefundDesc(builder.refundDesc); | |||||
| } | } | ||||
| public static Builder newBuilder() { | public static Builder newBuilder() { | ||||
| return new Builder(); | return new Builder(); | ||||
| } | } | ||||
| @Override | |||||
| public void checkAndSign(WxPayConfig config) throws WxPayException { | |||||
| if (StringUtils.isBlank(this.getOpUserId())) { | |||||
| this.setOpUserId(config.getMchId()); | |||||
| } | |||||
| super.checkAndSign(config); | |||||
| } | |||||
| public String getDeviceInfo() { | public String getDeviceInfo() { | ||||
| return this.deviceInfo; | return this.deviceInfo; | ||||
| } | } | ||||
| @@ -249,6 +250,26 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| this.refundAccount = refundAccount; | this.refundAccount = refundAccount; | ||||
| } | } | ||||
| public String getRefundDesc() { | |||||
| return this.refundDesc; | |||||
| } | |||||
| public void setRefundDesc(String refundDesc) { | |||||
| this.refundDesc = refundDesc; | |||||
| } | |||||
| public WxPayRefundRequest() { | |||||
| } | |||||
| @Override | |||||
| public void checkAndSign(WxPayConfig config) throws WxPayException { | |||||
| if (StringUtils.isBlank(this.getOpUserId())) { | |||||
| this.setOpUserId(config.getMchId()); | |||||
| } | |||||
| super.checkAndSign(config); | |||||
| } | |||||
| @Override | @Override | ||||
| protected void checkConstraints() { | protected void checkConstraints() { | ||||
| if (StringUtils.isNotBlank(this.getRefundAccount())) { | if (StringUtils.isNotBlank(this.getRefundAccount())) { | ||||
| @@ -268,8 +289,8 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| private String appid; | private String appid; | ||||
| private String transactionId; | private String transactionId; | ||||
| private String mchId; | private String mchId; | ||||
| private String outTradeNo; | |||||
| private String subAppId; | private String subAppId; | ||||
| private String outTradeNo; | |||||
| private String subMchId; | private String subMchId; | ||||
| private String outRefundNo; | private String outRefundNo; | ||||
| private String nonceStr; | private String nonceStr; | ||||
| @@ -279,6 +300,7 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| private String refundFeeType; | private String refundFeeType; | ||||
| private String opUserId; | private String opUserId; | ||||
| private String refundAccount; | private String refundAccount; | ||||
| private String refundDesc; | |||||
| private Builder() { | private Builder() { | ||||
| } | } | ||||
| @@ -303,13 +325,13 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| return this; | return this; | ||||
| } | } | ||||
| public Builder outTradeNo(String outTradeNo) { | |||||
| this.outTradeNo = outTradeNo; | |||||
| public Builder subAppId(String subAppId) { | |||||
| this.subAppId = subAppId; | |||||
| return this; | return this; | ||||
| } | } | ||||
| public Builder subAppId(String subAppId) { | |||||
| this.subAppId = subAppId; | |||||
| public Builder outTradeNo(String outTradeNo) { | |||||
| this.outTradeNo = outTradeNo; | |||||
| return this; | return this; | ||||
| } | } | ||||
| @@ -358,6 +380,11 @@ public class WxPayRefundRequest extends WxPayBaseRequest { | |||||
| return this; | return this; | ||||
| } | } | ||||
| public Builder refundDesc(String refundDesc) { | |||||
| this.refundDesc = refundDesc; | |||||
| return this; | |||||
| } | |||||
| public WxPayRefundRequest build() { | public WxPayRefundRequest build() { | ||||
| return new WxPayRefundRequest(this); | return new WxPayRefundRequest(this); | ||||
| } | } | ||||