package com.ruoyi.im.comm; import java.io.Serializable; /** * REST API 统一返回结果封装类 * @param 返回数据类型 */ public class Result implements Serializable { // 状态码 private int code; // 消息提示 private String message; // 返回数据 private T data; // 时间戳 private long timestamp; // 常用状态码 public static final int SUCCESS_CODE = 200; public static final int BAD_REQUEST_CODE = 400; public static final int UNAUTHORIZED_CODE = 401; public static final int FORBIDDEN_CODE = 403; public static final int NOT_FOUND_CODE = 404; public static final int SERVER_ERROR_CODE = 500; // 私有构造器 private Result(int code, String message, T data) { this.code = code; this.message = message; this.data = data; this.timestamp = System.currentTimeMillis(); } // ============= 成功响应方法 ============= public static Result success() { return new Result<>(SUCCESS_CODE, "操作成功", null); } public static Result success(T data) { return new Result<>(SUCCESS_CODE, "操作成功", data); } public static Result success(String message, T data) { return new Result<>(SUCCESS_CODE, message, data); } // ============= 错误响应方法 ============= public static Result error() { return new Result<>(SERVER_ERROR_CODE, "系统错误", null); } public static Result error(String message) { return new Result<>(SERVER_ERROR_CODE, message, null); } public static Result error(int code, String message) { return new Result<>(code, message, null); } public static Result badRequest(String message) { return new Result<>(BAD_REQUEST_CODE, message, null); } public static Result unauthorized(String message) { return new Result<>(UNAUTHORIZED_CODE, message, null); } public static Result forbidden(String message) { return new Result<>(FORBIDDEN_CODE, message, null); } public static Result notFound(String message) { return new Result<>(NOT_FOUND_CODE, message, null); } // ============= Getter方法 ============= public int getCode() { return code; } public String getMessage() { return message; } public T getData() { return data; } public long getTimestamp() { return timestamp; } }