柯桥增值式服务
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

104 рядки
3.8KB

  1. package com.ningdatech.kqapi.common.exception.code;
  2. /**
  3. * 异常编码
  4. *
  5. * @author WendyYang
  6. * @date 2017-12-13 16:22
  7. */
  8. public enum ExceptionCode implements BaseExceptionCode {
  9. //系统相关 start
  10. SUCCESS(0, "成功"),
  11. SYSTEM_BUSY(-1, "系统繁忙~请稍后再试~"),
  12. SYSTEM_TIMEOUT(-2, "系统维护中~请稍后再试~"),
  13. PARAM_EX(-3, "参数类型解析异常"),
  14. SQL_EX(-4, "运行SQL出现异常"),
  15. NULL_POINT_EX(-5, "空指针异常"),
  16. ILLEGAL_ARGUMENT_EX(-6, "无效参数异常"),
  17. MEDIA_TYPE_EX(-7, "请求类型异常"),
  18. LOAD_RESOURCES_ERROR(-8, "加载资源出错"),
  19. BASE_VALID_PARAM(-9, "统一验证参数异常"),
  20. OPERATION_EX(-10, "操作异常"),
  21. SERVICE_MAPPER_ERROR(-11, "Mapper类转换异常"),
  22. CAPTCHA_ERROR(-12, "验证码校验失败"),
  23. JSON_PARSE_ERROR(-13, "JSON解析异常"),
  24. OK(200, "OK"),
  25. BAD_REQUEST(400, "错误的请求"),
  26. /**
  27. * {@code 401 Unauthorized}. 需要重新登录。
  28. * 该HTTP状态码表示认证错误,它是为了认证设计的,而不是为了授权设计的。收到401响应,表示请求没有被认证—压根没有认证或者认证不正确—但是请重新认证和重试。(一般在响应头部包含一个WWW-Authenticate来描述如何认证)。通常由web服务器返回,而不是web应用。从性质上来说是临时的东西。(服务器要求客户端重试)
  29. *
  30. * @see <a href="http://tools.ietf.org/html/rfc7235#section-3.1">HTTP/1.1: Authentication, section 3.1</a>
  31. */
  32. UNAUTHORIZED(401, "未认证"),
  33. /** 该HTTP状态码是关于授权方面的。从性质上来说是永久的东西,和应用的业务逻辑相关联。它比401更具体,更实际。收到403响应表示服务器完成认证过程,但是客户端请求没有权限去访问要求的资源。 */
  34. FORBIDDEN(403, "禁止访问"),
  35. /**
  36. * {@code 404 Not Found}.
  37. *
  38. * @see <a href="http://tools.ietf.org/html/rfc7231#section-6.5.4">HTTP/1.1: Semantics and Content, section 6.5.4</a>
  39. */
  40. NOT_FOUND(404, "没有找到资源"),
  41. METHOD_NOT_ALLOWED(405, "不支持当前请求类型"),
  42. TOO_MANY_REQUESTS(429, "请求超过次数限制"),
  43. INTERNAL_SERVER_ERROR(500, "内部服务错误"),
  44. BAD_GATEWAY(502, "网关错误"),
  45. GATEWAY_TIMEOUT(504, "网关超时"),
  46. //系统相关 end
  47. REQUIRED_FILE_PARAM_EX(1001, "请求中必须至少包含一个有效文件"),
  48. DATA_SAVE_ERROR(2000, "新增数据失败"),
  49. DATA_UPDATE_ERROR(2001, "修改数据失败"),
  50. TOO_MUCH_DATA_ERROR(2002, "批量新增数据过多"),
  51. //jwt token 相关 start
  52. JWT_BASIC_INVALID(40000, "无效的基本身份验证令牌"),
  53. JWT_TOKEN_EXPIRED(40001, "会话超时,请重新登录"),
  54. JWT_SIGNATURE(40002, "不合法的token,请认真比对 token 的签名"),
  55. JWT_ILLEGAL_ARGUMENT(40003, "缺少token参数"),
  56. JWT_GEN_TOKEN_FAIL(40004, "生成token失败"),
  57. JWT_PARSER_TOKEN_FAIL(40005, "解析用户身份错误,请重新登录!"),
  58. JWT_USER_INVALID(40006, "用户名或密码错误"),
  59. JWT_USER_ENABLED(40007, "用户已经被禁用!"),
  60. JWT_OFFLINE(40008, "您已在另一个设备登录!"),
  61. JWT_NOT_LOGIN(40009, "登录超时,请重新登录!"),
  62. //jwt token 相关 end
  63. ;
  64. private final int code;
  65. private String msg;
  66. ExceptionCode(int code, String msg) {
  67. this.code = code;
  68. this.msg = msg;
  69. }
  70. @Override
  71. public int getCode() {
  72. return code;
  73. }
  74. @Override
  75. public String getMsg() {
  76. return msg;
  77. }
  78. public ExceptionCode build(String msg, Object... param) {
  79. this.msg = String.format(msg, param);
  80. return this;
  81. }
  82. public ExceptionCode param(Object... param) {
  83. msg = String.format(msg, param);
  84. return this;
  85. }
  86. }