common

1.ErrorCodeEnum

 

import java.util.HashMap;
import java.util.Map;


/**
 * 请严格准命名规范
 * ERROR_系统代号_错误类型 <br />
 * 1001 -2000 通用错误码
 * 2001 - 2500 MSC系统错误码
 *
 * @author yan
 * @version 2.0
 */
public enum ErrorCodeEnum {
    ERROR_COMMON_PARAM(1001, "参数不符合规则"),
    ERROR_COMMON_SYSTEM(1002, "系统错误"),
    ERROR_COMMON_HANDING(1003, "系统处理中"),
    ERROR_COMMON_SAVE(1004, "保存数据失败"),
    ERROR_COMMON_UNIQUE(1005, "违反了唯一约束"),
    ERROR_COMMON_CHECK(1006, "条件验证异常"),
    ERROR_COMMON_REPEAT_HANDLER(1007, "重复处理"),
    ERROR_COMMON_NETWORK_ERROR(1008, "网络超时");
    private int code;
    String returnMsg;

    ErrorCodeEnum(int code, String returnMsg) {
        this.code = code;
        this.returnMsg = returnMsg;
    }

    public int getCode() {
        return this.code;
    }

    public <T> ResponseVo<T> getResponseVo(T t) {
        return new ResponseVo(false, this.code, this.returnMsg, t);
    }

    public ResponseVo getResponseVo() {
        return new ResponseVo(false, this.code, this.returnMsg);
    }

    public ResponseVo getResponseVo(String msg) {
        return new ResponseVo(false, this.code, msg);
    }

    private static Map<Integer, ErrorCodeEnum> params;
    private static Object lock = new Object();

    static {
        synchronized (lock) {
            if (params == null) {
                params = new HashMap<Integer, ErrorCodeEnum>();
                for (ErrorCodeEnum e : ErrorCodeEnum.values()) {
                    params.put(e.code, e);
                }
            }
        }
    }


    public static String getNameByCode(int code) {
        return params.get(code).returnMsg;
    }

    public static ErrorCodeEnum getEnumByCode(int code) {
        return params.get(code);
    }
}

 

 

2.ResponseVo

 

import java.io.Serializable;

public class ResponseVo<T> implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = 5436311696304320083L;

    /**
     * 是否成功标志。
     * 需要特别说明的是,如果返回处理中,则此处为false
     */
    private boolean isSuccess;
    
    /**
     * 扩展属性
     */
    private String extraAttr;
    
    /**
     * 错误编码。参考{@link ErrorCodeEnum}
     */
    private int errorCode;
    
    /**
     * 错误返回说明
     */
    private String msg;
    
    /**
     * 返回的实体类
     */
    private T data;
    
    /**
     * 分页总条数
     */
    private long totalProperty;
    
  


    public T getData() {
        return data;
    }


    public void setData(T data) {
        this.data = data;
    }

    public static <T> ResponseVo<T> getSuccessResponse(T obj){
        return new ResponseVo<T>(obj);
    }
    public static <T> ResponseVo<T> getSuccessResponse(){
        
        return new ResponseVo<T>();
    }
    public static <T> ResponseVo<T> getSuccessResponse(long totalProperty,T obj){
        return new ResponseVo<T>(totalProperty,obj);
    }
    public static <T> ResponseVo<T> getErrorResponse(){
        return new ResponseVo<T>(false,-1000,null);
    }
    public static <T> ResponseVo<T> getErrorResponse(String msg){
        return new ResponseVo<T>(false,-1000, msg);
    }
    public static <T> ResponseVo<T> getErrorResponse(int errorCode,String msg){
        return new ResponseVo<T>(false,errorCode,msg);
    }
    public ResponseVo() {
        super();
        this.isSuccess = true;
        this.errorCode=0;
        this.data=null;
    }
    
    public ResponseVo(T obj) {
        super();
        this.isSuccess = true;
        this.errorCode=0;
        this.data=obj;
    }
    
    public ResponseVo(long totalProperty, T obj) {
        super();
        this.isSuccess = true;
        this.errorCode=0;
        this.data=obj;
        this.totalProperty = totalProperty;
    }

    public ResponseVo(boolean isSuccess, int errorCode, String msg) {
        super();
        this.isSuccess = isSuccess;
        this.errorCode = errorCode;
        this.msg = msg;
    }
    public ResponseVo(boolean isSuccess, int errorCode, String msg, T date) {
        super();
        this.isSuccess = isSuccess;
        this.errorCode = errorCode;
        this.msg = msg;
        this.data = date;
    }
    
    public ResponseVo<T> setDataObj(T date){
        this.setData(date);
        return this;
    }
    public boolean isSuccess() {
        return isSuccess;
    }

    public void setSuccess(boolean isSuccess) {
        this.isSuccess = isSuccess;
    }

    public String getExtraAttr() {
        return extraAttr;
    }


    public ResponseVo<T> setExtraAttr(String extraAttr) {
        this.extraAttr = extraAttr;
        return this;
    }


    public int getErrorCode() {
        return errorCode;
    }

    public void setErrorCode(int errorCode) {
        this.errorCode = errorCode;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
    
    
    
    public long getTotalProperty() {
        return totalProperty;
    }


    public void setTotalProperty(long totalProperty) {
        this.totalProperty = totalProperty;
    }

    
}

 

posted @ 2021-10-06 15:09  mimimikasa  阅读(247)  评论(0)    收藏  举报