package com.dtb.portal.util; import lombok.AllArgsConstructor; import lombok.Getter; /** * 返回的错误代码, 返回前端用 int, 后端用枚举, 可以减少数据传输 * 可以基于 code 的 name 进行国际化 * 这里只列出系统默认的 code, 其他的 code, 应该按 CodePerson 这样进行区分 * 建议划分方法, 使用 9 位数字 (一个 int 可以表示完全), 第一位固定是 1, 接下来 4 位划分模块, 最后四位划分具体的 errorCode; * 如: 100010001, 表示系统错误 * * @author MoSence */ @AllArgsConstructor public enum CodeDefault implements CodeEnum { /** * 成功 */ OK(0, "成功"), /** * 成功 SESSION_EXPIRE(-2, "会话超时,请重新登录"), /** * 部分成功 */ PARTIAL_SUCCESS(100010001L, "部分成功"), /** * 未处理异常 */ INTERNAL_SERVER_ERROR(100010002L, "未处理异常"), /** * 客户端输入参数错误 */ ILLEGAL_ARGUMENT(100010003L, "客户端输入参数错误"), /** * 主键生成错误 */ PRIMARY_ID_ERROR(100010004L, "主键生成错误"), /** * 日期格式错误 */ ILLEGAL_DATE_FORMAT(100010005L, "日期格式错误"), /** * 数据不存在 */ DATA_NOEXIT(100000005, "数据不存在"), /** * 数据不存在 */ PARA_NOEXIT(1000000010, "参数不存在"), /** * 数据不存在 */ DATA_EXIT(100000005, "数据存在"), /** * 空值异常 */ NULL_POINT_ERROR(100010006L, "空值异常"), /** * 验证生成异常 */ CODE_CREATE_ERROR(100010007L, "验证生成异常"), /** * 登录失效 */ LOGIN_FAIL_INPUT_ISNULL(4004, "登录失败,登录输入项为空"), /** * 登录失效 */ LOGIN_FAIL_CHECKCODE_INVALID(4005, "登录失败,验证码无效"), /** * 登录失效 */ LOGIN_FAIL_USERNAME_PASSWORD_ERROR(4001, "登录失败,用户名或密码错误"), /** * 登录失效 */ LOGIN_FAIL_USER_IS_DISABLED(4003, "登录失败,用户无效"), /** * 登录失效 */ LOGIN_FAIL_USER_IS_LOCK(4002, "登录失败,用户已锁定"), /** * 登录失效 */ SYSTEM_ERROR(100000000, "系统异常"), /** * 认证失败 */ AUTH_FAIL(403, "认证失败,请求无效"), /** * 添加数据失败 */ INSERT_FAIL(500, "添加数据失败"), /** * 添加文件失败 */ INSERT_FILE_FAIL(501, "添加文件失败"), /** * 文件类型找不到 */ FILE_TYPE_NO_FOUND_FAIL(509, "文件类型找不到"), /** * 文件找不到 */ FILE_NO_FOUND_FAIL(510, "文件类型找不到"), /** * 更新失败 */ UPDATE_FAIL(502, "更新失败"), /** * 用户类型没有失败 */ USER_TYPE_NO_FOUND_FAIL(501, "该用户不是管理员类型"), NO_USERPOOL_ID_FAIL(503, "没有用户池ID"), LIST_IS_NULL_FAIL(504, "集合为null异常"), PASSWORD_NOT_IDENTICAL_FAIL(505, "两次收入密码不相同"), ; /** * 返回客户端的编码 */ @Getter private final long code; /** * 默认消息 */ @Getter private final String defaultMessage; }