美文网首页java
java 请求返回VO对象及错误码

java 请求返回VO对象及错误码

作者: yichen_china | 来源:发表于2020-12-25 09:20 被阅读0次

    ErrorCodeEnums

    import com.alibaba.fastjson.JSONObject;
    import com.fasterxml.jackson.annotation.JsonFormat;
    import com....common.dto.common.ResultVO;
    
    /**
     * @ClassName ErrorCodeEnums
     * @Description 接口返回错误码
     * @Author Ying.bw
     * @Date 2020/5/14 18:36
     * @Version 1.0
     */
    @JsonFormat(shape = JsonFormat.Shape.OBJECT)
    public enum ErrorCodeEnums {
        /*
        异常编码格式:A-BB-CCC
        A:代表错误级别,1表示系统级错误,2表示特定服务级错误,3表示通用服务级错误。
        BB:代表错误项目或者模块号,从00开始。
        CCC:具体错误编号,自增,从001开始。
        */
        SUCCESS("0", "success"),
    //    LOGIN_ERROR("101001", "登录异常"),
        /* 商品异常错误代码 --start*/
        GOODS_CATEGORY_GET_ERROR("101001", "查询分类列表异常"),
        GOODS_RECOMMENDED_GET_ERROR("101002", "查询精品推荐失败"),
        GOODS_INFO_GET_ERROR("101003", "查询商品详情异常"),
        GOODS_LABEL_GET_ERROR("101004", "查询商品标签异常"),
        GOODS_LIST_GET_ERROR("101005", "分页查询商品列表异常"),
        GOODS_DESCRIPTION_GET_ERROR("101006", "查询商品详情和说明书异常"),
        GOODS_PACKAGE_LIST_GET_ERROR("101007", "查询联合售药组合商品异常"),
        GOODS_BRAND_LIST_GET_ERROR("101008", "查询品牌列表异常"),
    
        /* 商品异常错误代码 --end*/
    
        /* 优惠异常错误代码 --start */
        PREFERENTIAL_COMPLIMENTARY_GET_ERROR("102001", "查询商品满赠优惠异常"),
        PREFERENTIAL_LIMIT_DISCOUNT_GET_ERROR("102002", "查询限时折扣商品异常"),
        PREFERENTIAL_UNIT_PRICE_GET_ERROR("102003", "查询商品单价优惠异常"),
        PREFERENTIAL_LIMIT_DISCOUNT_LIST_PAGE_GET_ERROR("102004", "分页查询限时折扣商品列表失败"),
        PREFERENTIAL_LIMIT_DISCOUNT_DETAIL_GET_ERROR("102005", "查询限时折扣商品详情异常"),
        REFERENTIAL_LIMIT_DISCOUNT_USER_ALREADY_BUY_NUM_GET_ERROR("102006", "查询用户在该活动对应商品购买数量异常"),
        /* 优惠异常错误代码 --end */
    
        /* 主页设置异常错误代码 --start */
        HOME_BANNER_LIST_GET_ERROR("103001", "查询广告banner列表异常"),
        HOME_RICH_TEXT_GET_ERROR("103002", "查询广告富文本失败"),
        HOME_SETTING_GET_ERROR("103003","查询首页功能入口列表异常"),
        /* 主页设置异常错误代码 --end */
    
        /* 用户异常错误代码 --start */
        USER_INFO_GET_ERROR("103001", "查询用户信息失败"),
        USER_FULL_NAME_NOT_EXIST_ERROR("103002", "用户姓名未填写,请完善用户信息后重试!"),
        USER_UPDATE_BASE_INFO_ERROR("103003", "用户信息更新失败"),
        USER_DISTRIBUTION_RELATION_GET_ERROR("103004", "用户分销关系获取异常"),
    
        USER_INFO_WECHAT_UPDATE_ERROR("103007", "用户微信个人信息更新失败"),
        USER_INTEGRAL_UPDATE_ERROR("103008", "用户积分更新失败"),
        /* 用户异常错误代码 --end */
    
        /* 分销异常错误代码 --start */
        DISTRIBUTION_APPLY_ERROR("104001", "提交分销申请失败"),
        DISTRIBUTION_CREATE_ERROR("104002", "添加分销信息失败"),
        DISTRIBUTION_UPDATE_STATUS_ERROR("104003", "更新分销状态失败"),
        DISTRIBUTION_ACTUAL_COMMISSION_GET_ERROR("104004", "查询分销可提现金额异常"),
        DISTRIBUTION_TOTAL_COMMISSION_GET_ERROR("104005", "查询分销总金额异常"),
        DISTRIBUTION_COMMISSION_DETAILS_GET_ERROR("104006", "查询佣金明细异常"),
        DISTRIBUTION_COMMISSION_UPDATE_ERROR("104007", "更新佣金金额失败"),
        DISTRIBUTION_APPLY_TOO_MUCH_TIMES_ERROR("104008", "已提交过分销审核,请勿重复提交"),
        DISTRIBUTION_ALREADY_APPLY_ERROR("104009", "账号异常,无法申请分销审核,请联系管理人员"),
        DISTRIBUTION_STATUS_GET_ERROR("104010", "查询分销状态失败"),
        DISTRIBUTION_STATUS_NOT_OPEN_ERROR("104011", "分销功能未开启,无法使用提现功能"),
        DISTRIBUTION_APPLY_WITHDRAWAL_NO_ENOUGH_AMOUNT_ERROR("104012", "账户余额不足,申请提现失败"),
        DISTRIBUTION_APPLY_WITHDRAWAL_REPEAT_COMMIT_ERROR("104013", "您连续提交提现,请1分钟后再试"),
        DISTRIBUTION_APPLY_WITHDRAWAL_ERROR("104014", "提现失败,请重试"),
        DISTRIBUTION_STATUS_CLOSE_ERROR("104015", "您的分销功能已关闭,请您联系客服"),
        DISTRIBUTION_QRCODE_ERROR("104016", "二维码生成失败"),
        /* 分销异常错误代码 --end */
    
        /* 登录异常 --start */
        LOGIN_WECHAT_CODE_ERROR("105001", "微信登录码异常,请重新获取微信登录码"),
        LOGIN_ERROR("105002", "登录异常,请重新登录"),
        PHONE_FORMAT_ABNORMAL("105003", "手机号格式异常"),
        PHONE_VERIFICATION_CODE_SENT_TOO_FREQUENTLY("105004", "验证码发送太频繁"),
        PHONE_CODE_CHECK_FAIL("105005", "手机验证码校验失败"),
        LOGIN_CODE_NULL_ERROR("105006", "微信授权的code不能为空"),
        AUTH_BASE_ERROR("105007", "微信公众号网页静默授权失败"),
        LOGIN_PHONE_NULL_ERROR("105008", "微信授权的手机号不能为空"),
        AUTH_USER_INFO_ERROR("105009", "微信公众号网页授权获取微信用户资料失败"),
        LOGIN_ERROR_YB("105010", "YB登录异常,请重新登录"),
        /* 登录异常 --end */
    
        /* 精品推荐商品异常 --start */
        RECOMMENDED_KEYWORD_GET_ERROR("106001", "精品推荐关键字检索商品名失败"),
        RECOMMENDED_GOODS_LIST_GET_ERROR("106002", "精品推荐商品列表分页查询失败"),
        /* 精品推荐商品异常 --end */
    
        /* 我的收藏异常 --start */
        MY_COLLECTION_STATUS_GET_ERROR("107001", "获取该商品收藏的状态失败"),
        MY_COLLECTION_STATUS_UPDATE_ERROR("107002", "更新该商品收藏的状态失败"),
        MY_COLLECTION_PAGE_LIST_GET_ERROR("107003", "查询我的收藏列表失败"),
    
        /* 我的收藏异常 --end */
    
        /* 我的足迹异常 --start */
        FOOTPRINT_ADD_REDIS_ERROR("108001", "我的足迹添加失败"),
        FOOTPRINT_CLEAR_REDIS_ERROR("108002", "我的足迹清空失败"),
        FOOTPRINT_LIST_GET_ERROR("108003", "查询我的足迹商品列表失败"),
        /* 我的足迹异常 --end */
    
        /* 库存异常 --start */
        ACTUAL_STOCK_GET_ERROR("109001", "实际库存查询失败"),
        LIMIT_STOCK_GET_ERROR("109002", "显示折扣商品库存查询失败"),
        DEDUCT_STOCK_FOR_ORDER_UNPAID_ERROR("109003", "订单创建时扣减库存失败"),
        DEDUCT_STOCK_FOR_ORDER_UNPAID_GIFT_GOODS_ERROR("109004", "订单创建时赠品扣减库存失败"),
        /* 库存异常 --end */
    
        /* 省市区接口异常 --start */
        REGION_SECOND_LEVEL_REGION_GET_ERROR("110001", "获取全国二级城市失败"),
        REGION_GET_REGION_BY_LAT_LNG_ERROR("110002", "通过经纬度查询城市失败"),
        /* 省市区接口异常 --end */
    
        /* 支付接口异常 --start */
        ALI_PAY_ERROR("120001","支付宝支付失败"),
        ORDER_STATUS_INCORRECTNESS("120002", "订单状态不正确"),
        ALI_PAY_REFUND_FAILED("120003", "支付宝退款失败"),
        WX_REFUND_FAILED("120004", "微信退款失败"),
        REFUND_FAILED("120005", "退款失败"),
        /* 支付接口异常 --end */
    
        /* 通用异常错误代码 --start */
        PARAMS_ERROR("301001", "参数异常,请检查参数是否正确"),
        PHONE_ERROR("301002", "手机号格式不正确,请重新输入"),
        SYSTEM_ERROR("301003", "系统错误"),
        XML_DATA_INCORRECTNESS("301004", "xml数据格式不正确"),
        /* 通用异常错误代码 --end */
        
        ;
    
        public static final String codeName = "errcode";
    
        private String errcode;
        private String errmessage;
    
        ErrorCodeEnums(String errcode, String errmessage){
            this.errcode = errcode;
            this.errmessage = errmessage;
        };
    
        public String getErrcode() {
            return errcode;
        }
    
        public void setErrcode(String errcode) {
            this.errcode = errcode;
        }
    
        public String getErrmessage() {
            return errmessage;
        }
    
        public void setErrmessage(String errmessage) {
            this.errmessage = errmessage;
        }
    
        public JSONObject toJSONObject() {
            JSONObject out = new JSONObject();
            out.put("errcode", errcode);
            out.put("errmessage", errmessage);
            return out;
        }
    
        public static JSONObject toJSONObjectPlus(String errcode, String errmessage ) {
            JSONObject out = new JSONObject();
            out.put("errcode", errcode);
            out.put("errmessage", errmessage);
            return out;
        }
    
        @Override
        public String toString() {
            return toJSONObject().toString();
        }
    
        public static void main(String[] args) {
            ResultVO resultVO = ResultVO.success();
            System.out.println(resultVO.getCode());
            System.out.println(ErrorCodeEnums.SUCCESS);
            System.out.println(resultVO.getCode().equals(ErrorCodeEnums.SUCCESS));
        }
    }
    

    ResultVO

    import com.alibaba.fastjson.JSONObject;
    import com.....common.enums.ErrorCodeEnums;
    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    
    import java.io.Serializable;
    
    /**
     * @description:
     * @author: YeQingchao
     * @create: 2020-03-11 16:27
     */
    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    public class ResultVO<T> implements Serializable{
    
        private static final long serialVersionUID = 8518955172797076258L;
        // 数据
        private T data;
        // 返回码
        private ErrorCodeEnums code;
    
        public static <T> ResultVO<T> success() {
            ResultVO<T> resultVO = new ResultVO<>();
    //        JSONObject codeJson = new JSONObject();
    //        codeJson.put("code", ErrorCodeEnums.SUCCESS);
    //        resultVO.setCode(codeJson);
            resultVO.setCode(ErrorCodeEnums.SUCCESS);
            return resultVO;
        }
    
        public static <T> ResultVO<T> success(T data) {
            ResultVO<T> resultVO = new ResultVO<>();
    //        JSONObject codeJson = new JSONObject();
    //        codeJson
            resultVO.setCode(ErrorCodeEnums.SUCCESS);
            resultVO.setData(data);
            return resultVO;
        }
    
    
        public static <T> ResultVO<T> fail(ErrorCodeEnums errorCodeEnums) {
            ResultVO<T> resultVO = new ResultVO<>();
    //        JSONObject codeJson = JSONObject.parseObject(errorCodeEnums.toString());
    //        resultVO.setCode(codeJson);
            resultVO.setCode(errorCodeEnums);
            return resultVO;
        }
    
        public static <T> ResultVO<T> fail(ErrorCodeEnums errorCodeEnums, T data) {
            ResultVO<T> resultVO = new ResultVO<>();
    //        JSONObject codeJson = JSONObject.parseObject(errorCodeEnums.toString());
    //        resultVO.setCode(codeJson);
            resultVO.setCode(errorCodeEnums);
            resultVO.setData(data);
            return resultVO;
        }
    
        public JSONObject toJSONObject() {
            JSONObject out = new JSONObject();
            out.put("data", data);
            out.put("code", code);
            return out;
        }
    
        @Override
        public String toString() {
            return toJSONObject().toString();
        }
    
        public static void main(String[] args) {
            ResultVO resultVO = ResultVO.success(new JSONObject());
            System.out.println(resultVO.toString());
        }
    }
    
    

    相关文章

      网友评论

        本文标题:java 请求返回VO对象及错误码

        本文链接:https://www.haomeiwen.com/subject/vjrbnktx.html