#178 实现发送代金券接口

This commit is contained in:
Binary Wang
2017-07-15 17:13:09 +08:00
parent 3a2efdd343
commit c8c51a9cee
6 changed files with 589 additions and 44 deletions
@@ -1,5 +1,7 @@
package com.github.binarywang.wxpay.service;
import com.github.binarywang.wxpay.bean.coupon.WxPayCouponSendRequest;
import com.github.binarywang.wxpay.bean.coupon.WxPayCouponSendResult;
import com.github.binarywang.wxpay.bean.request.*;
import com.github.binarywang.wxpay.bean.result.*;
import com.github.binarywang.wxpay.config.WxPayConfig;
@@ -339,4 +341,14 @@ public interface WxPayService {
* </pre>
*/
String getSandboxSignKey() throws WxPayException;
/**
* <pre>
* 发放代金券
* 接口请求链接:https://api.mch.weixin.qq.com/mmpaymkttransfers/send_coupon
* 是否需要证书:请求需要双向证书。
* 文档地址:https://pay.weixin.qq.com/wiki/doc/api/tools/sp_coupon.php?chapter=12_3
* </pre>
*/
WxPayCouponSendResult sendCoupon(WxPayCouponSendRequest request) throws WxPayException;
}
@@ -1,6 +1,8 @@
package com.github.binarywang.wxpay.service.impl;
import com.github.binarywang.utils.qrcode.QrcodeUtils;
import com.github.binarywang.wxpay.bean.coupon.WxPayCouponSendRequest;
import com.github.binarywang.wxpay.bean.coupon.WxPayCouponSendResult;
import com.github.binarywang.wxpay.bean.request.*;
import com.github.binarywang.wxpay.bean.result.*;
import com.github.binarywang.wxpay.config.WxPayConfig;
@@ -463,4 +465,15 @@ public abstract class WxPayServiceAbstractImpl implements WxPayService {
result.checkResult(this);
return result.getSandboxSignKey();
}
@Override
public WxPayCouponSendResult sendCoupon(WxPayCouponSendRequest request) throws WxPayException {
request.checkAndSign(this.getConfig());
String url = this.getPayBaseUrl() + "/mmpaymkttransfers/send_coupon";
String responseContent = this.post(url, request.toXML(), true);
WxPayCouponSendResult result = WxPayBaseResult.fromXML(responseContent, WxPayCouponSendResult.class);
result.checkResult(this);
return result;
}
}