package com.stylefeng.guns.modular.system.util;
|
|
import java.io.Serializable;
|
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
import lombok.extern.log4j.Log4j2;
|
|
/**
|
* 响应信息主体
|
*
|
* @author wakeman
|
*/
|
@Log4j2
|
public class R<T> implements Serializable
|
{
|
private static final long serialVersionUID = 1L;
|
|
/** 成功 */
|
public static final int SUCCESS = Constants.SUCCESS;
|
|
/** 失败 */
|
public static final int FAIL = Constants.FAIL;
|
|
private int code;
|
|
private String msg;
|
|
private T data;
|
|
public static <T> R<T> ok() {
|
return restResult(null, SUCCESS, null);
|
}
|
|
public static <T> R<T> ok(Integer code) {
|
return restResult(null, code, null);
|
}
|
|
public static <T> R<T> ok(T data) {
|
return restResult(data, SUCCESS, null);
|
}
|
|
public static <T> R<T> ok(T data, String msg) {
|
log.error(msg);
|
return restResult(data, SUCCESS, msg);
|
}
|
|
public static <T> R<T> fail() {
|
|
return (R<T>) restResult(new Object(), FAIL, null);
|
}
|
|
public static <T> R<T> fail(String msg) {
|
log.error(msg);
|
return (R<T>) restResult(new Object(), FAIL, msg);
|
}
|
|
public static <T> R<T> fail(T data) {
|
return restResult(data, FAIL, null);
|
}
|
|
public static <T> R<T> fail(T data, String msg) {
|
return restResult(data, FAIL, msg);
|
}
|
|
public static <T> R<T> fail(int code, String msg) {
|
return restResult(null, code, msg);
|
}
|
|
private static <T> R<T> restResult(T data, int code, String msg) {
|
R<T> apiResult = new R<>();
|
apiResult.setCode(code);
|
apiResult.setData(data);
|
apiResult.setMsg(msg);
|
return apiResult;
|
}
|
|
public int getCode() {
|
return code;
|
}
|
|
public void setCode(int code) {
|
this.code = code;
|
}
|
|
public String getMsg() {
|
return msg;
|
}
|
|
public void setMsg(String msg) {
|
this.msg = msg;
|
}
|
|
public T getData() {
|
return data;
|
}
|
|
public void setData(T data) {
|
this.data = data;
|
}
|
|
public static <T> Boolean isError(R<T> ret) {
|
return !isSuccess(ret);
|
}
|
|
public static <T> Boolean isSuccess(R<T> ret) {
|
return R.SUCCESS == ret.getCode();
|
}
|
}
|