package com.mes.vo;
|
|
import lombok.Data;
|
|
/**
|
* 统一API响应结果
|
*
|
* @author huang
|
* @date 2025/10/29
|
*/
|
@Data
|
public class Result<T> {
|
|
/**
|
* 响应码
|
*/
|
private Integer code;
|
|
/**
|
* 响应消息
|
*/
|
private String message;
|
|
/**
|
* 响应数据
|
*/
|
private T data;
|
|
/**
|
* 时间戳
|
*/
|
private Long timestamp;
|
|
/**
|
* 私有构造函数
|
*/
|
private Result() {
|
this.timestamp = System.currentTimeMillis();
|
}
|
|
/**
|
* 成功响应
|
*/
|
public static <T> Result<T> success() {
|
Result<T> result = new Result<>();
|
result.setCode(200);
|
result.setMessage("操作成功");
|
return result;
|
}
|
|
/**
|
* 成功响应(带数据)
|
*/
|
public static <T> Result<T> success(T data) {
|
Result<T> result = new Result<>();
|
result.setCode(200);
|
result.setMessage("操作成功");
|
result.setData(data);
|
return result;
|
}
|
|
/**
|
* 成功响应(自定义消息)
|
*/
|
public static <T> Result<T> success(String message, T data) {
|
Result<T> result = new Result<>();
|
result.setCode(200);
|
result.setMessage(message);
|
result.setData(data);
|
return result;
|
}
|
|
/**
|
* 失败响应
|
*/
|
public static <T> Result<T> error() {
|
Result<T> result = new Result<>();
|
result.setCode(500);
|
result.setMessage("操作失败");
|
return result;
|
}
|
|
/**
|
* 失败响应(自定义消息)
|
*/
|
public static <T> Result<T> error(String message) {
|
Result<T> result = new Result<>();
|
result.setCode(500);
|
result.setMessage(message);
|
return result;
|
}
|
|
/**
|
* 失败响应(自定义码和消息)
|
*/
|
public static <T> Result<T> error(Integer code, String message) {
|
Result<T> result = new Result<>();
|
result.setCode(code);
|
result.setMessage(message);
|
return result;
|
}
|
|
/**
|
* 判断是否成功
|
*/
|
public boolean isSuccess() {
|
// 使用Integer.valueOf避免自动拆箱问题
|
return this.code != null && Integer.valueOf(200).equals(this.code);
|
}
|
}
|