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);
    }

}
相关推荐
王二端茶倒水1 小时前
大龄程序员兼职跑外卖第五周之亲身感悟
前端·后端·程序员
夜色呦2 小时前
现代电商解决方案:Spring Boot框架实践
数据库·spring boot·后端
爱敲代码的小冰3 小时前
spring boot 请求
java·spring boot·后端
java小吕布4 小时前
Java中的排序算法:探索与比较
java·后端·算法·排序算法
Goboy4 小时前
工欲善其事,必先利其器;小白入门Hadoop必备过程
后端·程序员
李少兄5 小时前
解决 Spring Boot 中 `Ambiguous mapping. Cannot map ‘xxxController‘ method` 错误
java·spring boot·后端
代码小鑫5 小时前
A031-基于SpringBoot的健身房管理系统设计与实现
java·开发语言·数据库·spring boot·后端
Json____5 小时前
学法减分交管12123模拟练习小程序源码前端和后端和搭建教程
前端·后端·学习·小程序·uni-app·学法减分·驾考题库
monkey_meng5 小时前
【Rust类型驱动开发 Type Driven Development】
开发语言·后端·rust
落落落sss5 小时前
MQ集群
java·服务器·开发语言·后端·elasticsearch·adb·ruby