11package me .chanjar .weixin .mp .api ;
22
33import me .chanjar .weixin .common .exception .WxErrorException ;
4- import me .chanjar .weixin .mp .bean .pay .WxPayJsSDKCallback ;
54import me .chanjar .weixin .mp .bean .pay .request .WxEntPayRequest ;
65import me .chanjar .weixin .mp .bean .pay .request .WxPayRefundRequest ;
76import me .chanjar .weixin .mp .bean .pay .request .WxPaySendRedpackRequest ;
@@ -31,9 +30,8 @@ public interface WxMpPayService {
3130 * 接口地址:https://api.mch.weixin.qq.com/pay/orderquery
3231 * </pre>
3332 *
34- * @param transactionId 微信支付分配的商户号
33+ * @param transactionId 微信订单号
3534 * @param outTradeNo 商户系统内部的订单号,当没提供transaction_id时需要传这个。
36- * @throws WxErrorException
3735 */
3836 WxPayOrderQueryResult queryOrder (String transactionId , String outTradeNo ) throws WxErrorException ;
3937
@@ -50,7 +48,6 @@ public interface WxMpPayService {
5048 * </pre>
5149 *
5250 * @param outTradeNo 商户系统内部的订单号,当没提供transaction_id时需要传这个。
53- * @throws WxErrorException
5451 */
5552 WxPayOrderCloseResult closeOrder (String outTradeNo ) throws WxErrorException ;
5653
@@ -60,7 +57,6 @@ public interface WxMpPayService {
6057 * 接口地址:https://api.mch.weixin.qq.com/pay/unifiedorder
6158 *
6259 * @param request 请求对象,注意一些参数如appid、mchid等不用设置,方法内会自动从配置对象中获取到(前提是对应配置中已经设置)
63- * @throws WxErrorException
6460 */
6561 WxPayUnifiedOrderResult unifiedOrder (WxPayUnifiedOrderRequest request ) throws WxErrorException ;
6662
@@ -69,7 +65,6 @@ public interface WxMpPayService {
6965 * 详见http://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115&token=&lang=zh_CN
7066 *
7167 * @param request 请求对象,注意一些参数如appid、mchid等不用设置,方法内会自动从配置对象中获取到(前提是对应配置中已经设置)
72- * @throws WxErrorException
7368 */
7469 Map <String , String > getPayInfo (WxPayUnifiedOrderRequest request ) throws WxErrorException ;
7570
@@ -81,7 +76,7 @@ public interface WxMpPayService {
8176 * </pre>
8277 *
8378 * @param request 请求对象
84- * @param keyFile 证书文件对象
79+ * @param keyFile 证书文件对象(即apiclient_cert.p12 商户证书文件,详细参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
8580 * @return 退款操作结果
8681 */
8782 WxPayRefundResult refund (WxPayRefundRequest request , File keyFile ) throws WxErrorException ;
@@ -94,7 +89,8 @@ public interface WxMpPayService {
9489 * 详见 https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_5
9590 * 接口链接:https://api.mch.weixin.qq.com/pay/refundquery
9691 * </pre>
97- * 以下四个参数四选一
92+ * 以下四个参数四选一
93+ *
9894 * @param transactionId 微信订单号
9995 * @param outTradeNo 商户订单号
10096 * @param outRefundNo 商户退款单号
@@ -107,15 +103,86 @@ public interface WxMpPayService {
107103 * 读取支付结果通知
108104 * 详见http://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7
109105 */
110- WxPayJsSDKCallback getJSSDKCallbackData (String xmlData ) throws WxErrorException ;
106+ WxPayOrderNotifyResult getOrderNotifyResult (String xmlData ) throws WxErrorException ;
111107
112108 /**
113- * <pre>
114- * 计算Map键值对是否和签名相符,
115- * 按照字段名的 ASCII 码从小到大排序(字典序)后,使用 URL 键值对的 格式(即 key1=value1&key2=value2...)拼接成字符串
116- * </pre>
109+ * 微信公众号支付签名算法(详见:https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=4_3)
110+ *
111+ * @param xmlbean Bean需要标记有XML注解,默认使用配置中的PartnerKey进行签名
112+ * @return 签名字符串
113+ * @see #createSign(Map, String)
114+ * @since 2.5.0
117115 */
118- boolean checkJSSDKCallbackDataSignature (Map <String , String > kvm , String signature );
116+ String createSign (Object xmlbean );
117+
118+ /**
119+ * 微信公众号支付签名算法(详见:https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=4_3)
120+ *
121+ * @param xmlbean Bean需要标记有XML注解
122+ * @param signKey 签名Key
123+ * @return 签名字符串
124+ * @see #createSign(Map, String)
125+ */
126+ String createSign (Object xmlbean , String signKey );
127+
128+ /**
129+ * 微信公众号支付签名算法(详见:https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=4_3)
130+ *
131+ * @param prams 参数信息,默认使用配置中的PartnerKey进行签名
132+ * @return 签名字符串
133+ * @see #createSign(Map, String)
134+ */
135+ String createSign (Map <String , String > prams );
136+
137+
138+ /**
139+ * 微信公众号支付签名算法(详见:https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=4_3)
140+ *
141+ * @param prams 参数信息
142+ * @param signKey 签名Key
143+ * @return 签名字符串
144+ */
145+ String createSign (Map <String , String > prams , String signKey );
146+
147+
148+ /**
149+ * 校验签名是否正确,默认使用配置中的PartnerKey进行签名
150+ *
151+ * @param xmlbean Bean需要标记有XML注解
152+ * @return true - 签名校验成功,false - 签名校验失败
153+ * @see #checkSign(Map, String)
154+ */
155+ boolean checkSign (Object xmlbean );
156+
157+ /**
158+ * 校验签名是否正确
159+ *
160+ * @param xmlbean Bean需要标记有XML注解
161+ * @param signKey 校验的签名Key
162+ * @return true - 签名校验成功,false - 签名校验失败
163+ * @see #checkSign(Map, String)
164+ */
165+ boolean checkSign (Object xmlbean , String signKey );
166+
167+ /**
168+ * 校验签名是否正确,默认使用配置中的PartnerKey进行签名
169+ *
170+ * @param prams 需要校验的参数Map
171+ * @return true - 签名校验成功,false - 签名校验失败
172+ * @see #checkSign(Map, String)
173+ */
174+ boolean checkSign (Map <String , String > prams );
175+
176+ /**
177+ * 校验签名是否正确
178+ *
179+ * @param params 需要校验的参数Map
180+ * @param signKey 校验的签名Key
181+ * @return true - 签名校验成功,false - 签名校验失败
182+ * @see #checkSign(Map, String)
183+ */
184+ boolean checkSign (Map <String , String > params , String signKey );
185+
119186
120187 /**
121188 * 发送微信红包给个人用户
@@ -128,7 +195,7 @@ public interface WxMpPayService {
128195 * </pre>
129196 *
130197 * @param request 请求对象
131- * @param keyFile 证书文件对象
198+ * @param keyFile 证书文件对象(即apiclient_cert.p12 商户证书文件,详细参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
132199 */
133200 WxPaySendRedpackResult sendRedpack (WxPaySendRedpackRequest request , File keyFile ) throws WxErrorException ;
134201
@@ -140,8 +207,9 @@ public interface WxMpPayService {
140207 * 是否需要证书 是(证书及使用说明详见商户证书)
141208 * 请求方式 POST
142209 * </pre>
210+ *
143211 * @param mchBillNo 商户发放红包的商户订单号,比如10000098201411111234567890
144- * @param keyFile 证书文件对象
212+ * @param keyFile 证书文件对象(即apiclient_cert.p12 商户证书文件,详细参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
145213 */
146214 WxPayRedpackQueryResult queryRedpack (String mchBillNo , File keyFile ) throws WxErrorException ;
147215
@@ -156,7 +224,7 @@ public interface WxMpPayService {
156224 * </pre>
157225 *
158226 * @param request 请求对象
159- * @param keyFile 证书文件对象
227+ * @param keyFile 证书文件对象(即apiclient_cert.p12 商户证书文件,详细参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
160228 */
161229 WxEntPayResult entPay (WxEntPayRequest request , File keyFile ) throws WxErrorException ;
162230
@@ -169,7 +237,7 @@ public interface WxMpPayService {
169237 * </pre>
170238 *
171239 * @param partnerTradeNo 商户订单号
172- * @param keyFile 证书文件对象
240+ * @param keyFile 证书文件对象(即apiclient_cert.p12 商户证书文件,详细参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=4_3)
173241 */
174242 WxEntPayQueryResult queryEntPay (String partnerTradeNo , File keyFile ) throws WxErrorException ;
175243
0 commit comments