Skip to content

Commit bb954ed

Browse files
committed
binarywang#257 微信支付申请退款接口增加refund_desc属性
1 parent cba4ad5 commit bb954ed

File tree

1 file changed

+45
-18
lines changed

1 file changed

+45
-18
lines changed

weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayRefundRequest.java

Lines changed: 45 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -142,17 +142,26 @@ public class WxPayRefundRequest extends WxPayBaseRequest {
142142
*/
143143
@XStreamAlias("refund_account")
144144
private String refundAccount;
145-
146-
public WxPayRefundRequest() {
147-
}
145+
/**
146+
* <pre>
147+
* 退款原因
148+
* refund_account
149+
* 否
150+
* String(80)
151+
* 商品已售完
152+
* 若商户传入,会在下发给用户的退款消息中体现退款原因
153+
* </pre>
154+
*/
155+
@XStreamAlias("refund_desc")
156+
private String refundDesc;
148157

149158
private WxPayRefundRequest(Builder builder) {
150159
setDeviceInfo(builder.deviceInfo);
151160
setAppid(builder.appid);
152161
setTransactionId(builder.transactionId);
153162
setMchId(builder.mchId);
154-
setOutTradeNo(builder.outTradeNo);
155163
setSubAppId(builder.subAppId);
164+
setOutTradeNo(builder.outTradeNo);
156165
setSubMchId(builder.subMchId);
157166
setOutRefundNo(builder.outRefundNo);
158167
setNonceStr(builder.nonceStr);
@@ -162,21 +171,13 @@ private WxPayRefundRequest(Builder builder) {
162171
setRefundFeeType(builder.refundFeeType);
163172
setOpUserId(builder.opUserId);
164173
setRefundAccount(builder.refundAccount);
174+
setRefundDesc(builder.refundDesc);
165175
}
166176

167177
public static Builder newBuilder() {
168178
return new Builder();
169179
}
170180

171-
@Override
172-
public void checkAndSign(WxPayConfig config) throws WxPayException {
173-
if (StringUtils.isBlank(this.getOpUserId())) {
174-
this.setOpUserId(config.getMchId());
175-
}
176-
177-
super.checkAndSign(config);
178-
}
179-
180181
public String getDeviceInfo() {
181182
return this.deviceInfo;
182183
}
@@ -249,6 +250,26 @@ public void setRefundAccount(String refundAccount) {
249250
this.refundAccount = refundAccount;
250251
}
251252

253+
public String getRefundDesc() {
254+
return this.refundDesc;
255+
}
256+
257+
public void setRefundDesc(String refundDesc) {
258+
this.refundDesc = refundDesc;
259+
}
260+
261+
public WxPayRefundRequest() {
262+
}
263+
264+
@Override
265+
public void checkAndSign(WxPayConfig config) throws WxPayException {
266+
if (StringUtils.isBlank(this.getOpUserId())) {
267+
this.setOpUserId(config.getMchId());
268+
}
269+
270+
super.checkAndSign(config);
271+
}
272+
252273
@Override
253274
protected void checkConstraints() {
254275
if (StringUtils.isNotBlank(this.getRefundAccount())) {
@@ -268,8 +289,8 @@ public static final class Builder {
268289
private String appid;
269290
private String transactionId;
270291
private String mchId;
271-
private String outTradeNo;
272292
private String subAppId;
293+
private String outTradeNo;
273294
private String subMchId;
274295
private String outRefundNo;
275296
private String nonceStr;
@@ -279,6 +300,7 @@ public static final class Builder {
279300
private String refundFeeType;
280301
private String opUserId;
281302
private String refundAccount;
303+
private String refundDesc;
282304

283305
private Builder() {
284306
}
@@ -303,13 +325,13 @@ public Builder mchId(String mchId) {
303325
return this;
304326
}
305327

306-
public Builder outTradeNo(String outTradeNo) {
307-
this.outTradeNo = outTradeNo;
328+
public Builder subAppId(String subAppId) {
329+
this.subAppId = subAppId;
308330
return this;
309331
}
310332

311-
public Builder subAppId(String subAppId) {
312-
this.subAppId = subAppId;
333+
public Builder outTradeNo(String outTradeNo) {
334+
this.outTradeNo = outTradeNo;
313335
return this;
314336
}
315337

@@ -358,6 +380,11 @@ public Builder refundAccount(String refundAccount) {
358380
return this;
359381
}
360382

383+
public Builder refundDesc(String refundDesc) {
384+
this.refundDesc = refundDesc;
385+
return this;
386+
}
387+
361388
public WxPayRefundRequest build() {
362389
return new WxPayRefundRequest(this);
363390
}

0 commit comments

Comments
 (0)