Restful

MessageEnum

java 复制代码
public enum MessageEnum {

    /**
     * 请求状态
     */
    SYS_SUCCESS(200, "请求成功!"),
    SYS_ERROR(400, "请求失败!"),
    SYS_NOT_FOUND(404, "接口、资源不存在!"),
    SYS_SERVER_ERROR(500, "系统繁忙,请稍候再试!"),
    /**
     * 权限问题
     */
    NOT_PERMISSION(403, "无权限!"),
//    NOT_PERMISSION(403, "无资源访问权限!"),
    /**
     * 空问题
     */
    EM1_PARAM_NOT_NULL(1001, "请求参数不能为空!"),
    EM1_ID_NOT_NULL(1002, "ID不能为空!"),
    EM1_USERNAME_NOT_NULL(1003, "用户名不能为空!"),
    EM1_PWD_NOT_NULL(1004, "密码不能为空!"),
    EM1_KAPTCHA_NOT_NULL(1005, "验证码不能为空!"),
    EM1_KAPTCHA_ERROR(1006, "验证码错误!"),
    /**
     * 不合法问题
     */
    // ----start----
    EM2_TOKEN_NOLEGAL(2001, "当前token无效或过期!"),
    EM2_DATE_NOLEGAL(2002, "日期格式无效!"),
    EM2_REQ_NOLEGAL(2003, "请求参数无效!"),
    EM2_FILE_SIZE_NOLEGAL(2004, "不合法的文件大小!"),
    EM2_SESSION_NOLEGAL(2005, "当前会话无效或过期!"),
    // ----end----

    /**
     * 增删改查
     */
    // ----start----
    EM3_QUERY_SUCCESS(3001, "查询成功!"),
    EM3_QUERY_ERROR(3002, "查询失败!"),
    EM3_INSERT_SUCCESS(3003, "保存成功!"),
    EM3_INSERT_ERROR(3004, "保存失败!"),
    EM3_DELETE_SUCCESS(3005, "删除成功!"),
    EM3_DELETE_ERROR(3006, "删除失败!"),
    EM3_UPDATE_SUCCESS(3007, "更新成功!"),
    EM3_UPDATE_ERROR(3008, "更新失败!"),
    EM3_BATCH_DELETE_SUCCESS(3009, "批量删除成功!"),
    EM3_BATCH_DELETE_ERROR(3010, "批量删除失败!"),
    EM3_BATCH_INSERT_SUCCESS(3011, "批量添加失败!"),
    EM3_BATCH_UPDATE_SUCCESS(3013, "批量更新成功!"),
    EM3_BATCH_UPDATE_ERROR(3014, "批量更新失败!"),
    EM4_USER_ALREADY_REG(4001, "该用户已经注册!"),
    EM4_NO_THIS_USER(4002, "没有此用户!"),
    EM4_USER_NOT_EXISTED(4003, "没有此用户!"),
    EM4_ACCOUNT_FREEZED(4004, "账号被冻结!"),
    EM4_OLD_PWD_NOT_RIGHT(4005, "原密码不正确!"),
    EM4_TWO_PWD_NOT_MATCH(4006, "两次输入密码不一致!"),
    EM4_USER_PWD_ERROR(4007, "用户名或密码不对!"),
    // ----end----


    /**
     * 上传下载 与 GZIP 解压缩
     */
    // ----start----
    EM5_UPLOAD_FILE_ERROR(5001, "上传文件失败"),
    EM5_UPLOAD_REVIT_ERROR(5002, "上传revit模型文件失败"),
    EM5_GZIP_ERROR(5003, "GZIP压缩失败,文件为空"),

    EM5_MERGE_ERROR(5005, "文件合并失败"),

    EM5_PARSE_ERROR(5004, "文件解析不了"),

    // ----end----
    MSG_ERR(500, "Err"), // Error


    MSG_OK(200, "OK"), // OK


    //解析excel
    ANALYSIS_SUCC(2401, "解析成功"),
    TIMEOUT_ERROR(2601, "超时错误"),
    DISCONN_ERROR(2602, "解析器失去连接"),
    PARSE_ERROR(2603, "解析错误"),
    UNEXPECTEDLY_ERROR(2604, "未知错误"),
    ANALYSIS_FAIL(2605, "解析失败"),
    EXCEL_FORMAT_ERROR(2606, "excel格式错误"),
    /**
     * 数据录入过程中的异常状况
     */
    LOAD_SUCCESS(2607, "加载数据成功"),
    PROJECT_INCOMPLETE(2608, "项目数据不完整"),
    SPECIFIC_DATA_ANALYSIS(2609, "具体数据解析错误"),
    EXIST_UNCLASSIFIED_ITEM(2610, "存在未能成功分类的sheet页"),
    ABNORMAL_DATA_INSERTION(2611, "数据录入失败"),
    DATA_RELATIONSHIP_INSERTION_EXCEPTION(2612, "数据间关系录入失败"),
    DATA_ANALYSIS_ERROR(2613, "数据解析错误"),
    JSON_DATA_IS_NULL(2614, "json数据为空"),

    /**
     * 创建文件异常
     */
    MAKE_DIR_ERROR(2615, "文件夹生成失败"),
    FILER_NOT_EXIST(2623, "文件或文件夹不存在!"),
    GET_FILE_LINK_ERROR(2624, "获取链接失败!"),
    NO_CORRESPONDING_FOLDER(2625, "该文件夹没有对应的子文件夹名称"),

    /**
     * 服务异常
     */
    INTERFACE_CURRENT_LIMITING(2616, "接口限流了"),
    SERVICE_DEGRADE(2617, "服务降级了"),
    SYSTEM_BLOCK(2618, "系统保护规则"),
    AUTHORITY_EXCEPTION(2619, "授权规则不通过"),
    PARAM_FLOW_EXCEPTION(2620, "热点参数异常"),

    /**
     * 添加项目属性异常
     */
    ADD_PROJECT_ATTRIBUTE(2621, "添加项目属性异常"),
    NULL_PROJECT_EXCEPTION(2622, "项目为空"),//2624
    GROUP_ATTRIBUTE_BIND_ERROR(2624, "属性关系绑定异常!"),

    /**
     * 信息表中的异常value
     */
    SELECT_PROJECT_ATTRIBUTE(3601, "没有找到属性id"),
    SELECT_PROJECT_ATTRIBUTE_VALUE(3602, "没有找到属性的值"),
    NOT_EXIST_PROJECT_NODE_ERROR(3603, "没有项目节点"),
    ILLEGAL_REQUEST_PARAMETER(3604, "非法请求参数"),
    ILLEGAL_OPERATION_ERROR(3605, "非法操作!"),
    RPC_CALL_ERROR(3606, "rpc非法操作!"),
    NOT_EXIST_INFORMATION_TABLE_ERROR(3607, "信息表不存在"),
    SAME_ATTRIBUTE_NAME_ERROR(3608, "请从已有属性创建"),
    /***
     * html转化异常
     */
    HTML_TO_FILE_ERROR(3607, "html转file发生错误"),

    // ----end----
//    SYS_SUCCESS(200, "请求成功!"),
//    SYS_ERROR(400, "请求失败!"),
//    SYS_NOT_FOUND(404, "接口、资源不存在!"),
//    SYS_SERVER_ERROR(500, "系统繁忙,请稍候再试!");


    DATA_NOT_EXIST(3608, "数据不存在"),
    INCONSISTENT_VERSION(3609, "当前页面已经更新,请刷新"),//版本不一致
    MODIFICATION_CONFLICT(3610, "存在其他用户对该资源进行错操作的情况"),

    BUILDING_TYPE_NOT_EXIST(4600, "建筑类型不存在"),
    BUSINESS_TYPE_NOT_EXIST(4601, "建筑类型不存在"),
    TIME_PARSE_ERROR(4701, "时间转换出错");

ResultVO

java 复制代码
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ResultVO<T> {
    private Integer code;
    private String message;
    private T data;

    /**
     * 成功返回对象
     *
     * @param messageEnum
     * @return
     */
    public static ResultVO success(MessageEnum messageEnum) {
        return new ResultVO(messageEnum.getResCode(), messageEnum.getResMsg(), null);
    }

    /**
     * 成功返回对象
     *
     * @param messageEnum
     * @param data
     * @return
     */
    public static <T> ResultVO<T> success(MessageEnum messageEnum, T data) {
        return new ResultVO(messageEnum.getResCode(), messageEnum.getResMsg(), data);
    }

    /**
     * 失败返回对象
     *
     * @param messageEnum
     * @return
     */
    public static ResultVO error(MessageEnum messageEnum) {
        return new ResultVO(messageEnum.getResCode(), messageEnum.getResMsg(), null);
    }

    public static ResultVO error(String error) {
        return new ResultVO(400, error, null);
    }

    /**
     * 失败返回对象
     *
     * @param messageEnum
     * @param data
     * @return
     */
    public static <T> ResultVO<T> error(MessageEnum messageEnum, T data) {
        return new ResultVO(messageEnum.getResCode(), messageEnum.getResMsg(), data);
    }

}
相关推荐
wowocpp2 小时前
spring boot Controller 和 RestController 的区别
java·spring boot·后端
后青春期的诗go2 小时前
基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(二)
开发语言·后端·rust·rocket框架
freellf2 小时前
go语言学习进阶
后端·学习·golang
全栈派森4 小时前
云存储最佳实践
后端·python·程序人生·flask
CircleMouse4 小时前
基于 RedisTemplate 的分页缓存设计
java·开发语言·后端·spring·缓存
獨枭5 小时前
使用 163 邮箱实现 Spring Boot 邮箱验证码登录
java·spring boot·后端
维基框架5 小时前
Spring Boot 封装 MinIO 工具
java·spring boot·后端
秋野酱5 小时前
基于javaweb的SpringBoot酒店管理系统设计与实现(源码+文档+部署讲解)
java·spring boot·后端
☞无能盖世♛逞何英雄☜5 小时前
Flask框架搭建
后端·python·flask
进击的雷神6 小时前
Perl语言深度考查:从文本处理到正则表达式的全面掌握
开发语言·后端·scala