package com.dsh.other.util;
|
|
import com.alibaba.fastjson.JSONObject;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
|
/**
|
* 定义统一返回对象
|
*/
|
@ApiModel(value = "统一返回结果集")
|
@Data
|
public class ResultUtil<T> {
|
|
public static final Integer SUCCESS = 200;
|
|
public static final Integer PARAM_ERROR = 300;
|
|
public static final Integer RUNTIME_ERROR = 400;
|
|
public static final Integer ERROR = 500;
|
|
public static final Integer TOKEN_ERROR = 600;
|
|
public static final Integer SIGN_ERROR = 700;
|
|
public static final String Token = "TOKEN_INVALID";
|
|
public static final String SIGN = "SIGN_INVALID";
|
|
@ApiModelProperty(name = "code", value = "业务状态码 200:成功,300:参数错误,400:运行异常,500:其他异常, 600:token无效,需重新登录,700:签名无效")
|
private Integer code;//备用状态码
|
|
@ApiModelProperty(name = "msg", value = "返回结果说明")
|
private String msg;//返回说明
|
|
@ApiModelProperty(name = "data", value = "返回结果值")
|
private T data;//返回数据
|
|
|
public String getMsg() {
|
return msg;
|
}
|
|
public T getData() {
|
return data;
|
}
|
|
|
public Integer getCode() {
|
return code;
|
}
|
|
public ResultUtil(Integer code, String msg) {
|
this.code = code;
|
this.msg = msg;
|
}
|
|
private ResultUtil(Integer code, String msg, T data) {
|
this.code = code;
|
this.msg = msg;
|
this.data = data;
|
}
|
|
|
public static <T> ResultUtil<T> getResult(Integer code, String msg) {
|
return new ResultUtil<>(code, msg);
|
}
|
|
public static <T> ResultUtil<T> getResult(Integer code, String msg, T data) {
|
return new ResultUtil<>(code, msg, data);
|
}
|
|
/**
|
* 错误信息
|
*
|
* @return
|
*/
|
public static ResultUtil error(String mag) {
|
return ResultUtil.getResult(ResultUtil.ERROR, mag, new JSONObject());
|
}
|
|
/**
|
* 错误信息
|
*
|
* @return
|
*/
|
public static <T> ResultUtil<T> error(String mag, T obj) {
|
return ResultUtil.getResult(ResultUtil.ERROR, mag, obj);
|
}
|
|
/**
|
* token失效
|
*
|
* @return
|
*/
|
public static ResultUtil tokenErr() {
|
return ResultUtil.getResult(ResultUtil.TOKEN_ERROR, ResultUtil.Token, new JSONObject());
|
}
|
|
/**
|
* token失效
|
*
|
* @return
|
*/
|
public static ResultUtil tokenErr(String msg) {
|
return ResultUtil.getResult(ResultUtil.TOKEN_ERROR, msg, new JSONObject());
|
}
|
|
/**
|
* 参数异常
|
*
|
* @return
|
*/
|
public static ResultUtil paranErr(String ages) {
|
return ResultUtil.getResult(ResultUtil.PARAM_ERROR, "【" + ages + "】参数异常", new JSONObject());
|
}
|
|
/**
|
* 参数异常
|
*
|
* @return
|
*/
|
public static <T> ResultUtil<T> paranErr(T data) {
|
return ResultUtil.getResult(ResultUtil.PARAM_ERROR, "PARAM_ERROR", data);
|
}
|
|
|
/**
|
* 运行异常
|
*
|
* @return
|
*/
|
public static ResultUtil runErr() {
|
return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, "SYSTEM_RUN_ERROR", new JSONObject());
|
}
|
|
|
/**
|
* 运行异常
|
*
|
* @return
|
*/
|
public static <T> ResultUtil<T> runErr(T data) {
|
return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, "SYSTEM_RUN_ERROR", data);
|
}
|
|
/**
|
* 运行异常
|
*
|
* @return
|
*/
|
public static <T> ResultUtil<T> runErr(T data, String msg) {
|
return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, msg, data);
|
}
|
|
|
/**
|
* 返回成功
|
*
|
* @param
|
* @return
|
*/
|
public static ResultUtil success() {
|
return ResultUtil.getResult(ResultUtil.SUCCESS, "SUCCESS", new JSONObject());
|
}
|
|
|
/**
|
* 返回成功
|
*
|
* @param data
|
* @param <T>
|
* @return
|
*/
|
public static <T> ResultUtil<T> success(T data) {
|
return ResultUtil.getResult(ResultUtil.SUCCESS, "SUCCESS", data);
|
}
|
|
/**
|
* 返回成功
|
*
|
* @param msg
|
* @param data
|
* @param <T>
|
* @return
|
*/
|
public static <T> ResultUtil<T> success(String msg, T data) {
|
return ResultUtil.getResult(ResultUtil.SUCCESS, msg, data);
|
}
|
|
|
/**
|
* 签名无效
|
*
|
* @param <T>
|
* @return
|
*/
|
public static <T> ResultUtil<T> sign() {
|
return ResultUtil.getResult(ResultUtil.SIGN_ERROR, SIGN);
|
}
|
|
}
|