#800 微信支付增加WxPayErrorCode类,存放常用支付接口的错误代码常量

This commit is contained in:
Binary Wang 2018-11-18 17:29:11 +08:00
parent 49633cd123
commit dfd9d5ef69
3 changed files with 514 additions and 61 deletions

View File

@ -25,9 +25,11 @@ import me.chanjar.weixin.common.annotation.Required;
@AllArgsConstructor
@XStreamAlias("xml")
public class WxPayReportRequest extends BaseWxPayRequest {
private static final long serialVersionUID = 2667579776376527663L;
/**
* <pre>
* 设备号
* 设备号.
* device_info
*
* String(32)
@ -40,7 +42,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
/**
* <pre>
* 接口URL
* 接口URL.
* interface_url
*
* String(127)
@ -57,7 +59,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String interfaceUrl;
/**
* <pre>
* 接口耗时
* 接口耗时.
* execute_time
*
* Int
@ -70,7 +72,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private Integer executeTime;
/**
* <pre>
* 返回状态码
* 返回状态码.
* return_code
*
* String(16)
@ -83,7 +85,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String returnCode;
/**
* <pre>
* 返回信息
* 返回信息.
* return_msg
*
* String(128)
@ -95,7 +97,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String returnMsg;
/**
* <pre>
* 业务结果
* 业务结果.
* result_code
*
* String(16)
@ -108,7 +110,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String resultCode;
/**
* <pre>
* 错误代码
* 错误代码.
* err_code
*
* String(32)
@ -120,7 +122,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String errCode;
/**
* <pre>
* 错误代码描述
* 错误代码描述.
* err_code_des
*
* String(128)
@ -132,7 +134,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String errCodeDes;
/**
* <pre>
* 商户订单号
* 商户订单号.
* out_trade_no
*
* String(32)
@ -144,7 +146,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String outTradeNo;
/**
* <pre>
* 访问接口IP
* 访问接口IP.
* user_ip
*
* String(16)
@ -157,7 +159,7 @@ public class WxPayReportRequest extends BaseWxPayRequest {
private String userIp;
/**
* <pre>
* 商户上报时间
* 商户上报时间.
* time
*
* String(14)

View File

@ -1,11 +1,12 @@
package com.github.binarywang.wxpay.constant;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.time.FastDateFormat;
import java.text.Format;
import java.util.List;
import org.apache.commons.lang3.time.FastDateFormat;
import com.google.common.collect.Lists;
/**
* <pre>
* 微信支付常量类
@ -19,7 +20,7 @@ public class WxPayConstants {
/**
* 拉取订单评价数据接口的参数中日期格式.
*/
public static final Format QUERY_COMMENT_DATE_FORMAT = FastDateFormat.getInstance("yyyyMMddHHmmss");
public static final Format QUERY_COMMENT_DATE_FORMAT = FastDateFormat.getInstance("yyyyMMddHHmmss");
/**
* 校验用户姓名选项企业付款时使用.
@ -108,7 +109,7 @@ public class WxPayConstants {
/**
* 账户类型
*/
public static class AccountType{
public static class AccountType {
/**
* 基本账户
*/
@ -272,49 +273,4 @@ public class WxPayConstants {
*/
public static final String CHANGE = "CHANGE";
}
/**
* 关闭订单结果错误代码.
*/
public static class OrderCloseResultErrorCode {
/**
* 订单已支付.
*/
public static final String ORDER_PAID = "ORDERPAID";
/**
* 系统错误.
*/
public static final String SYSTEM_ERROR = "SYSTEMERROR";
/**
* 订单不存在.
*/
public static final String ORDER_NOT_EXIST = "ORDERNOTEXIST";
/**
* 订单已关闭.
*/
public static final String ORDER_CLOSED = "ORDERCLOSED";
/**
* 签名错误.
*/
public static final String SIGN_ERROR = "SIGNERROR";
/**
* 未使用POST传递参数.
*/
public static final String REQUIRE_POST_METHOD = "REQUIRE_POST_METHOD";
/**
* XML格式错误.
*/
public static final String XML_FORMAT_ERROR = "XML_FORMAT_ERROR";
/**
* 订单状态错误.
*/
public static final String TRADE_STATE_ERROR = "TRADE_STATE_ERROR";
}
}

View File

@ -0,0 +1,495 @@
package com.github.binarywang.wxpay.constant;
/**
* <pre>
* 微信支付错误码
* Created by Binary Wang on 2018/11/18.
* </pre>
*
* @author <a href="https://github.com/binarywang">Binary Wang</a>
*/
public class WxPayErrorCode {
/**
* 统一下单接口的错误码.
* https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1
*/
public static class UnifiedOrder {
/**
* <pre>
* 描述商户无此接口权限.
* 原因商户未开通此接口权限
* 解决方案请商户前往申请此接口权限
* </pre>
*/
public static final String NOAUTH = "NOAUTH";
/**
* <pre>
* 描述余额不足.
* 原因用户帐号余额不足
* 解决方案用户帐号余额不足请用户充值或更换支付卡后再支付
* </pre>
*/
public static final String NOTENOUGH = "NOTENOUGH";
/**
* <pre>
* 描述商户订单已支付.
* 原因商户订单已支付无需重复操作
* 解决方案商户订单已支付无需更多操作
* </pre>
*/
public static final String ORDERPAID = "ORDERPAID";
/**
* <pre>
* 描述订单已关闭.
* 原因当前订单已关闭无法支付
* 解决方案当前订单已关闭请重新下单
* </pre>
*/
public static final String ORDERCLOSED = "ORDERCLOSED";
/**
* <pre>
* 描述系统错误.
* 原因系统超时
* 解决方案系统异常请用相同参数重新调用
* </pre>
*/
public static final String SYSTEMERROR = "SYSTEMERROR";
/**
* <pre>
* 描述APPID不存在.
* 原因参数中缺少APPID
* 解决方案请检查APPID是否正确
* </pre>
*/
public static final String APPID_NOT_EXIST = "APPID_NOT_EXIST";
/**
* <pre>
* 描述MCHID不存在.
* 原因参数中缺少MCHID
* 解决方案请检查MCHID是否正确
* </pre>
*/
public static final String MCHID_NOT_EXIST = "MCHID_NOT_EXIST";
/**
* <pre>
* 描述appid和mch_id不匹配.
* 原因appid和mch_id不匹配
* 解决方案请确认appid和mch_id是否匹配
* </pre>
*/
public static final String APPID_MCHID_NOT_MATCH = "APPID_MCHID_NOT_MATCH";
/**
* <pre>
* 描述缺少参数.
* 原因缺少必要的请求参数
* 解决方案请检查参数是否齐全
* </pre>
*/
public static final String LACK_PARAMS = "LACK_PARAMS";
/**
* <pre>
* 描述商户订单号重复.
* 原因同一笔交易不能多次提交
* 解决方案请核实商户订单号是否重复提交
* </pre>
*/
public static final String OUT_TRADE_NO_USED = "OUT_TRADE_NO_USED";
/**
* <pre>
* 描述签名错误.
* 原因参数签名结果不正确
* 解决方案请检查签名参数和方法是否都符合签名算法要求
* </pre>
*/
public static final String SIGNERROR = "SIGNERROR";
/**
* <pre>
* 描述XML格式错误.
* 原因XML格式错误
* 解决方案请检查XML参数格式是否正确
* </pre>
*/
public static final String XML_FORMAT_ERROR = "XML_FORMAT_ERROR";
/**
* <pre>
* 描述请使用post方法.
* 原因未使用post传递参数
* 解决方案请检查请求参数是否通过post方法提交
* </pre>
*/
public static final String REQUIRE_POST_METHOD = "REQUIRE_POST_METHOD";
/**
* <pre>
* 描述post数据为空.
* 原因post数据不能为空
* 解决方案请检查post数据是否为空
* </pre>
*/
public static final String POST_DATA_EMPTY = "POST_DATA_EMPTY";
/**
* <pre>
* 描述编码格式错误.
* 原因未使用指定编码格式
* 解决方案请使用UTF-8编码格式
* </pre>
*/
public static final String NOT_UTF8 = "NOT_UTF8";
}
/**
* 关闭订单.
* https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_3&index=5
*/
public static class OrderClose {
/**
* 订单已支付.
*/
public static final String ORDER_PAID = "ORDERPAID";
/**
* 系统错误.
*/
public static final String SYSTEM_ERROR = "SYSTEMERROR";
/**
* 订单不存在.
*/
public static final String ORDER_NOT_EXIST = "ORDERNOTEXIST";
/**
* 订单已关闭.
*/
public static final String ORDER_CLOSED = "ORDERCLOSED";
/**
* 签名错误.
*/
public static final String SIGN_ERROR = "SIGNERROR";
/**
* 未使用POST传递参数.
*/
public static final String REQUIRE_POST_METHOD = "REQUIRE_POST_METHOD";
/**
* XML格式错误.
*/
public static final String XML_FORMAT_ERROR = "XML_FORMAT_ERROR";
/**
* 订单状态错误.
*/
public static final String TRADE_STATE_ERROR = "TRADE_STATE_ERROR";
}
/**
* 退款申请.
* https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_4&index=6
*/
public static class Refund {
/**
* <pre>
* 描述接口返回错误.
* 原因系统超时等
* 解决方案请不要更换商户退款单号请使用相同参数再次调用API
* </pre>
*/
public static final String SYSTEMERROR = "SYSTEMERROR";
/**
* <pre>
* 描述退款业务流程错误需要商户触发重试来解决.
* 原因并发情况下业务被拒绝商户重试即可解决
* 解决方案请不要更换商户退款单号请使用相同参数再次调用API
* </pre>
*/
public static final String BIZERR_NEED_RETRY = "BIZERR_NEED_RETRY";
/**
* <pre>
* 描述订单已经超过退款期限.
* 原因订单已经超过可退款的最大期限(支付后一年内可退款)
* 解决方案请选择其他方式自行退款
* </pre>
*/
public static final String TRADE_OVERDUE = "TRADE_OVERDUE";
/**
* <pre>
* 描述业务错误.
* 原因申请退款业务发生错误
* 解决方案该错误都会返回具体的错误原因请根据实际返回做相应处理
* </pre>
*/
public static final String ERROR = "ERROR";
/**
* <pre>
* 描述退款请求失败.
* 原因用户帐号注销
* 解决方案此状态代表退款申请失败商户可自行处理退款
* </pre>
*/
public static final String USER_ACCOUNT_ABNORMAL = "USER_ACCOUNT_ABNORMAL";
/**
* <pre>
* 描述无效请求过多.
* 原因连续错误请求数过多被系统短暂屏蔽
* 解决方案请检查业务是否正常确认业务正常后请在1分钟后再来重试
* </pre>
*/
public static final String INVALID_REQ_TOO_MUCH = "INVALID_REQ_TOO_MUCH";
/**
* <pre>
* 描述余额不足.
* 原因商户可用退款余额不足
* 解决方案此状态代表退款申请失败商户可根据具体的错误提示做相应的处理
* </pre>
*/
public static final String NOTENOUGH = "NOTENOUGH";
/**
* <pre>
* 描述无效transaction_id.
* 原因请求参数未按指引进行填写
* 解决方案请求参数错误检查原交易号是否存在或发起支付交易接口返回失败
* </pre>
*/
public static final String INVALID_TRANSACTIONID = "INVALID_TRANSACTIONID";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案请求参数错误请重新检查再调用退款申请
* </pre>
*/
public static final String PARAM_ERROR = "PARAM_ERROR";
/**
* <pre>
* 描述APPID不存在.
* 原因参数中缺少APPID
* 解决方案请检查APPID是否正确
* </pre>
*/
public static final String APPID_NOT_EXIST = "APPID_NOT_EXIST";
/**
* <pre>
* 描述MCHID不存在.
* 原因参数中缺少MCHID
* 解决方案请检查MCHID是否正确
* </pre>
*/
public static final String MCHID_NOT_EXIST = "MCHID_NOT_EXIST";
/**
* <pre>
* 描述订单号不存在.
* 原因缺少有效的订单号
* 解决方案请检查你的订单号是否正确且是否已支付未支付的订单不能发起退款
* </pre>
*/
public static final String ORDERNOTEXIST = "ORDERNOTEXIST";
/**
* <pre>
* 描述请使用post方法.
* 原因未使用post传递参数
* 解决方案请检查请求参数是否通过post方法提交
* </pre>
*/
public static final String REQUIRE_POST_METHOD = "REQUIRE_POST_METHOD";
/**
* <pre>
* 描述签名错误.
* 原因参数签名结果不正确
* 解决方案请检查签名参数和方法是否都符合签名算法要求
* </pre>
*/
public static final String SIGNERROR = "SIGNERROR";
/**
* <pre>
* 描述XML格式错误.
* 原因XML格式错误
* 解决方案请检查XML参数格式是否正确
* </pre>
*/
public static final String XML_FORMAT_ERROR = "XML_FORMAT_ERROR";
/**
* <pre>
* 描述频率限制.
* 原因2个月之前的订单申请退款有频率限制
* 解决方案该笔退款未受理请降低频率后重试
* </pre>
*/
public static final String FREQUENCY_LIMITED = "FREQUENCY_LIMITED";
}
/**
* 退款查询.
* https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_4&index=7
*/
public static class RefundQuery {
/**
* <pre>
* 描述接口返回错误.
* 原因系统超时
* 解决方案请尝试再次掉调用API
* </pre>
*/
public static final String SYSTEMERROR = "SYSTEMERROR";
/**
* <pre>
* 描述退款订单查询失败.
* 原因订单号错误或订单状态不正确
* 解决方案请检查订单号是否有误以及订单状态是否正确未支付已支付未退款
* </pre>
*/
public static final String REFUNDNOTEXIST = "REFUNDNOTEXIST";
/**
* <pre>
* 描述无效transaction_id.
* 原因请求参数未按指引进行填写
* 解决方案请求参数错误检查原交易号是否存在或发起支付交易接口返回失败
* </pre>
*/
public static final String INVALID_TRANSACTIONID = "INVALID_TRANSACTIONID";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案请求参数错误请检查参数再调用退款申请
* </pre>
*/
public static final String PARAM_ERROR = "PARAM_ERROR";
/**
* <pre>
* 描述APPID不存在.
* 原因参数中缺少APPID
* 解决方案请检查APPID是否正确
* </pre>
*/
public static final String APPID_NOT_EXIST = "APPID_NOT_EXIST";
/**
* <pre>
* 描述MCHID不存在.
* 原因参数中缺少MCHID
* 解决方案请检查MCHID是否正确
* </pre>
*/
public static final String MCHID_NOT_EXIST = "MCHID_NOT_EXIST";
/**
* <pre>
* 描述请使用post方法.
* 原因未使用post传递参数
* 解决方案请检查请求参数是否通过post方法提交
* </pre>
*/
public static final String REQUIRE_POST_METHOD = "REQUIRE_POST_METHOD";
/**
* <pre>
* 描述签名错误.
* 原因参数签名结果不正确
* 解决方案请检查签名参数和方法是否都符合签名算法要求
* </pre>
*/
public static final String SIGNERROR = "SIGNERROR";
/**
* <pre>
* 描述XML格式错误.
* 原因XML格式错误
* 解决方案请检查XML参数格式是否正确
* </pre>
*/
public static final String XML_FORMAT_ERROR = "XML_FORMAT_ERROR";
}
/**
* 下载对账单.
* https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_4&index=8
*/
public static class DownloadBill {
/**
* <pre>
* 描述下载失败.
* 原因系统超时
* 解决方案请尝试再次查询
* </pre>
*/
public static final String SYSTEMERROR = "SYSTEMERROR";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案参数错误请重新检查
* </pre>
*/
public static final String INVALID_BILL_TYPE = "invalid bill_type";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案参数错误请重新检查
* </pre>
*/
public static final String DATA_FORMAT_ERROR = "data format error";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案参数错误请重新检查
* </pre>
*/
public static final String MISSING_PARAMETER = "missing parameter";
/**
* <pre>
* 描述参数错误.
* 原因请求参数未按指引进行填写
* 解决方案参数错误请重新检查
* </pre>
*/
public static final String SIGN_ERROR = "SIGN ERROR";
/**
* <pre>
* 描述账单不存在.
* 原因当前商户号没有已成交的订单不生成对账单
* 解决方案请检查当前商户号在指定日期内是否有成功的交易
* </pre>
*/
public static final String NO_Bill_Exist = "NO Bill Exist";
/**
* <pre>
* 描述账单未生成.
* 原因当前商户号没有已成交的订单或对账单尚未生成
* 解决方案请先检查当前商户号在指定日期内是否有成功的交易如指定日期有交易则表示账单正在生成中请在上午10点以后再下载
* </pre>
*/
public static final String BILL_CREATING = "Bill Creating";
/**
* <pre>
* 描述账单压缩失败.
* 原因账单压缩失败请稍后重试
* 解决方案账单压缩失败请稍后重试
* </pre>
*/
public static final String COMPRESSG_ZIP_ERROR = "CompressGZip Error";
/**
* <pre>
* 描述账单解压失败.
* 原因账单解压失败请稍后重试
* 解决方案账单解压失败请稍后重试
* </pre>
*/
public static final String UN_COMPRESSG_ZIP_ERROR = "UnCompressGZip Error";
}
}