|
|
@@ -1,40 +1,80 @@
|
|
|
package com.tzld.piaoquan.supply.demand.engine.common.enums;
|
|
|
|
|
|
+import lombok.Getter;
|
|
|
+
|
|
|
/**
|
|
|
* 异常
|
|
|
*
|
|
|
* @author supeng
|
|
|
- * @date 2020/08/31
|
|
|
*/
|
|
|
+@Getter
|
|
|
public enum ExceptionEnum {
|
|
|
|
|
|
SUCCESS(0, "成功"),
|
|
|
- SYSTEM_ERROR(1, "系统错误"),
|
|
|
- PARAMS_INVALID(2, "参数错误"),
|
|
|
- DATA_NOT_EXIST(3, "数据不存在"),
|
|
|
- DATA_ERROR(4, "数据错误"),
|
|
|
- EXIST_RELATED_DATA(5, "存在关联数据"),
|
|
|
- DATA_EXIST(6, "数据已存在"),
|
|
|
- ILLEGAL_OPERATION (7, "非法操作"),
|
|
|
- CONFIG_ERROR (8, "配置异常"),
|
|
|
- FLOW_POOL_AUTO_ENTER_ERROR (9, "只能同时一个流量池打开【自动入池】开关"),
|
|
|
- FLOW_POOL_1_AUTO_ENTER_HOLD (10, "流量池【id=1】,作为尾号流量池的开关切换策略,需要保持【自动入池】状态"),
|
|
|
- FLOW_POOL_AUTO_ENTER_EXCEPT_SUPPLY (11, "除了供给池,只能同时一个流量池打开【自动入池】开关"),
|
|
|
- ;
|
|
|
-
|
|
|
- private int code;
|
|
|
- private String msg;
|
|
|
-
|
|
|
- public int getCode() {
|
|
|
- return code;
|
|
|
- }
|
|
|
|
|
|
+ // ========================= 1000 系统/平台错误 =========================
|
|
|
+ SYSTEM_ERROR(1000, "系统错误"),
|
|
|
+ CONFIG_ERROR(1001, "配置异常"),
|
|
|
+ SERVICE_UNAVAILABLE(1002, "服务不可用"),
|
|
|
+ DATABASE_CONNECTION_ERROR(1003, "数据库连接失败"),
|
|
|
+ CACHE_ERROR(1004, "缓存错误"),
|
|
|
+ UNKNOWN_ERROR(1005, "未知系统异常"),
|
|
|
|
|
|
- public String getMsg() {
|
|
|
- return msg;
|
|
|
- }
|
|
|
+ // ========================= 2000 认证/权限类 =========================
|
|
|
+ UNAUTHORIZED(2000, "未认证或认证失败"),
|
|
|
+ FORBIDDEN(2001, "无权限"),
|
|
|
+ TOKEN_EXPIRED(2002, "令牌过期"),
|
|
|
+ ACCOUNT_LOCKED(2003, "账号锁定"),
|
|
|
+ SESSION_INVALID(2004, "会话失效"),
|
|
|
+
|
|
|
+ // ========================= 3000 参数/校验类 =========================
|
|
|
+ PARAMS_INVALID(3000, "参数无效"),
|
|
|
+ MISSING_PARAM(3001, "缺少参数"),
|
|
|
+ TYPE_MISMATCH(3002, "参数类型不匹配"),
|
|
|
+ FORMAT_INVALID(3003, "参数格式错误"),
|
|
|
+ VALUE_OUT_OF_RANGE(3004, "参数值超出范围"),
|
|
|
+
|
|
|
+ // ========================= 4000 数据/资源类 =========================
|
|
|
+ DATA_NOT_EXIST(4000, "数据不存在"),
|
|
|
+ DATA_ERROR(4001, "数据错误"),
|
|
|
+ DATA_EXIST(4002, "数据已存在"),
|
|
|
+ EXIST_RELATED_DATA(4003, "存在关联数据"),
|
|
|
+ RESOURCE_NOT_FOUND(4004, "资源未找到"),
|
|
|
+ DATA_CONFLICT(4005, "数据冲突"),
|
|
|
+ DATA_INTEGRITY_VIOLATION(4006, "数据完整性异常"),
|
|
|
+
|
|
|
+ // ========================= 5000 外部依赖/网络类 =========================
|
|
|
+ EXTERNAL_SERVICE_ERROR(5000, "外部服务异常"),
|
|
|
+ EXTERNAL_SERVICE_TIMEOUT(5001, "外部服务超时"),
|
|
|
+ NETWORK_ERROR(5002, "网络错误"),
|
|
|
+ HTTP_REQUEST_ERROR(5003, "HTTP请求异常"),
|
|
|
+
|
|
|
+ // ========================= 6000 业务规则/操作类 =========================
|
|
|
+ ILLEGAL_OPERATION(6000, "非法操作"),
|
|
|
+ BUSINESS_RULE_VIOLATION(6001, "业务规则冲突"),
|
|
|
+ FEATURE_FLAG_CONFLICT(6002, "功能开关冲突"),
|
|
|
+ FLOW_POOL_AUTO_ENTER_CONFLICT(6003, "只能同时一个流量池打开自动入池开关"),
|
|
|
+ FLOW_POOL_TAIL_POLICY_HOLD(6004, "流量池作为尾号流量池时必须保持自动入池"),
|
|
|
+ FLOW_POOL_AUTO_ENTER_EXCEPT_SUPPLY(6005, "供给池以外只能同时一个流量池打开自动入池开关"),
|
|
|
+
|
|
|
+ // ========================= 7000 并发/事务类 =========================
|
|
|
+ CONCURRENT_MODIFICATION(7000, "并发修改冲突"),
|
|
|
+ LOCK_ACQUIRE_FAILED(7001, "锁获取失败"),
|
|
|
+ TRANSACTION_FAILED(7002, "事务失败"),
|
|
|
+
|
|
|
+ // ========================= 8000 限流/风控类 =========================
|
|
|
+ RATE_LIMITED(8000, "请求被限流"),
|
|
|
+ QUOTA_EXCEEDED(8001, "配额超限"),
|
|
|
+ RISK_BLOCKED(8002, "风控拦截"),
|
|
|
+
|
|
|
+ // ========================= 9000 灰度/实验类 =========================
|
|
|
+ FEATURE_UNAVAILABLE_IN_GRAY(9000, "灰度功能不可用"),
|
|
|
+ EXPERIMENTAL_FEATURE_DISABLED(9001, "实验功能禁用");
|
|
|
+
|
|
|
+ private final Integer code;
|
|
|
+ private final String msg;
|
|
|
|
|
|
- ExceptionEnum(int code, String msg) {
|
|
|
+ ExceptionEnum(Integer code, String msg) {
|
|
|
this.code = code;
|
|
|
this.msg = msg;
|
|
|
}
|