package com.example.client.entity; /** * Copyright (c) 2018 人人开源 All rights reserved. *
* https://www.renren.io *
* 版权所有,侵权必究! */ /** * 错误编码,由5位数字组成,前2位为模块编码,后3位为业务编码 *
* 如:10001(10代表系统模块,001代表业务代码) *
* * @author Mark sunlightcs@gmail.com * @since 1.0.0 */ public enum ErrorCode { INTERNAL_SERVER_ERROR(500, "服务器内部异常"), UNAUTHORIZED(401,"未授权"), FORBIDDEN(403, "拒绝访问,没有权限"), NOT_NULL(10001, "{0}不能为空"), DB_RECORD_EXISTS(10002, "数据库中已存在该记录"), PARAMS_GET_ERROR(10003, "获取参数失败"), ACCOUNT_PASSWORD_ERROR(10004, "账号或密码错误"), ACCOUNT_DISABLE(10005, "账号已被停用"), IDENTIFIER_NOT_NULL(10006, "唯一标识不能为空"), CAPTCHA_ERROR(10007, "验证码不正确"), SUB_MENU_EXIST(10008, "先删除子菜单或按钮"), PASSWORD_ERROR(10009, "原密码不正确"), ACCOUNT_NOT_EXIST(10010, "账号不存在"), SUPERIOR_DEPT_ERROR(10011, "上级部门选择错误"), SUPERIOR_MENU_ERROR(10012, "上级菜单不能为自身"), DATA_SCOPE_PARAMS_ERROR(10013, "数据权限接口,只能是Map类型参数"), DEPT_SUB_DELETE_ERROR(10014, "请先删除下级部门"), DEPT_USER_DELETE_ERROR(10015, "请先删除部门下的用户"), ACT_DEPLOY_ERROR(10016, "部署失败,没有流程"), ACT_MODEL_IMG_ERROR(10017, "模型图不正确,请检查"), ACT_MODEL_EXPORT_ERROR(10018, "导出失败,模型ID为{0}"), UPLOAD_FILE_EMPTY(10019, "请上传文件"), TOKEN_NOT_EMPTY(10020, "token不能为空"), TOKEN_INVALID(10021, "token失效,请重新登录"), ACCOUNT_LOCK(10022, "账号已被锁定"), ACT_DEPLOY_FORMAT_ERROR(10023, "请上传zip、bar、bpmn、bpmn20.xml格式文件"), OSS_UPLOAD_FILE_ERROR(10024, "上传文件失败{0}"), SEND_SMS_ERROR(10025, "发送短信失败{0}"), MAIL_TEMPLATE_NOT_EXISTS(10026, "邮件模板不存在"), REDIS_ERROR(10027, "Redis服务异常"), JOB_ERROR(10028, "定时任务失败"), INVALID_SYMBOL(10029, "不能包含非法字符"), JSON_FORMAT_ERROR(10030, "参数格式不正确,请使用JSON格式"), SMS_CONFIG(10031, "请先完成短信配置"), TASK_CLIME_FAIL(10032, "任务已被签收,操作失败"), NONE_EXIST_PROCESS(10033, "不存在的流程定义"), SUPERIOR_NOT_EXIST(10034, "上级节点不存在"), REJECT_MESSAGE(10035, "驳回"), ROLLBACK_MESSAGE(10036, "回退"), UNCLAIM_ERROR_MESSAGE(10037, "任务没有分组,无法取消认领"), SUPERIOR_REGION_ERROR(10038, "上级区域选择错误"), REGION_SUB_DELETE_ERROR(10039, "请先删除下级区域"), PROCESS_START_ERROR(10040, "流程已挂起,不能启动实例"), REJECT_PROCESS_PARALLEL_ERROR(10041, "多实例任务不能驳回"), REJECT_PROCESS_HANDLEING_ERROR(10042, "存在多个处理中的任务,不能驳回"), END_PROCESS_PARALLEL_ERROR(10043, "多实例任务不能终止"), END_PROCESS_HANDLEING_ERROR(10044, "终止"), END_PROCESS_MESSAGE(10045, "多实例任务不能回退"), BACK_PROCESS_PARALLEL_ERROR(10046, "存在多个并行执行的任务,不能回退"), BACK_PROCESS_HANDLEING_ERROR(10047, "存在多个处理中的任务,不能终止流程"), DATA_ERROR(10048, "数据异常,请刷新页面"), ACCOUNT_THERE_ARE_MULTIPLE_ERROR(10049,"帐号存在多个"), ACCOUNT_ERROR(10050,"该帐号不存在"); ErrorCode(int code, String message) { this.code = code; this.message = message; } private int code; private String message; public int getCode() { return code; } public void setCode(int code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public static ErrorCode getObject(int code) { for (ErrorCode c : ErrorCode.values()) { if (c.getCode() == code) { return c; } } return ErrorCode.INTERNAL_SERVER_ERROR; } // 通过code获取message信息,判断是否有传参; public static String getMessage(int code, String... params) { for (ErrorCode c : ErrorCode.values()) { if (c.getCode() == code) { return getParamMessage(c.message,params); } } return ErrorCode.INTERNAL_SERVER_ERROR.getMessage(); } private static String getParamMessage(String message, String... params) { for (int i = 0; i < params.length; i++) { String str = params[i]; message = message.replaceAll("\\{" + (i) + "\\}", "" + str + ""); } return message; } }