|
|
package com.iflytop.gd.common.result;
import lombok.AllArgsConstructor; import lombok.Getter;
import java.io.Serializable;
/** * 统一前端响应码定义 */ @Getter @AllArgsConstructor public enum ResultCode implements IResultCode, Serializable { //================================ 通用 =================================
SUCCESS("0", "成功"), FAILED("-1", "未知错误"),
//============================ 1xxx:请求 & 参数 ============================
INVALID_PARAMETER("1000", "参数无效或缺失"), PARAMETER_TYPE_MISMATCH("1001", "参数类型不匹配"), PARAMETER_OUT_OF_RANGE("1002", "参数超出允许范围"),
//============================ 2xxx:认证 & 授权 ============================
UNAUTHORIZED("2000", "未认证或登录失效"), FORBIDDEN("2001", "无访问权限"), TOKEN_EXPIRED("2002", "Token 已过期"), TOKEN_INVALID("2003", "Token 无效"),
//============================ 3xxx:资源访问 ============================
NOT_FOUND("3000", "资源不存在"), METHOD_NOT_ALLOWED("3001", "不支持的请求方法"),
//============================ 4xxx:业务错误 ============================
USER_NOT_FOUND("4000", "用户不存在"), USER_ALREADY_EXISTS("4001", "用户已存在"), INVALID_CREDENTIALS("4002", "用户名或密码错误"), OPERATION_NOT_ALLOWED("4003", "业务操作不允许"), DATA_ALREADY_EXISTS("4004", "数据已存在"),
CONTAINER_NOT_FOUND("4005", "未找到对应溶液容器"),
CRAFT_RUNNING("4101", "工艺正在执行"), CRAFT_CONTEXT_NULL("4102", "请先配置该加热区工艺"), CRAFT_NO_TRAY("4005", "工艺未找到托盘"), //============================ 5xxx:系统 & 第三方 ============================
SYSTEM_ERROR("5000", "系统内部错误"), SERVICE_UNAVAILABLE("5001", "服务暂不可用"), EXTERNAL_API_ERROR("5002", "第三方服务调用失败"), COMMAND_EXEC_TIMEOUT("5003", "命令执行超时"), HARDWARE_ERROR("5004", "硬件错误"), EMERGENCY_STOP("5555", "设备急停中"), //============================ 6xxx:设备、指令相关 ============================
COMMAND_NOT_FOUND("6000", "指令未找到"), COMMAND_ALREADY_EXECUTING("6001", "指令正在执行,无法重复执行"), SENSOR_STATUS_FAILED("6010", "获取传感器状态失败"), TARGET_HEAT_MODULE_OCCUPIED("6021", "目标加热模块被占用"), TARGET_HEAT_MODULE_NO_TRAY("6022", "目标加热模块无托盘"), SOLUTION_MODULE_NO_TRAY("6023", "加液模块无托盘"), CAP_LIFT_ERROR("6024", "拍子升降错误"), CMD_BUSY("6025", "设备忙,请稍后"), HEAT_MODULE_NO_IDLE("6026", "加热模块无空闲"), CAP_MODULE_NO_CAP("6027", "拍子存放区未检测到拍子"), SOLUTION_MODULE_OCCUPIED("6028", "加液模块被占用"), ; /** 状态码 */ private final String code; /** 提示信息 */ private final String msg;
@Override public String getCode() { return code; }
@Override public String getMsg() { return msg; }
/** * 根据 code 获取枚举 */ public static ResultCode parse(String code) { for (ResultCode item : values()) { if (item.code.equals(code)) { return item; } } return FAILED; }
@Override public String toString() { return "{\"code\":\"" + code + "\", \"msg\":\"" + msg + "\"}"; } }
|