package com.guwan.backend.common; import lombok.Data; import java.text.SimpleDateFormat; import java.util.Date; @Data public class SearchResult { private Integer code; private String message; private T data; private Long total; private String time; public SearchResult() { this.time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); } public static SearchResult success() { SearchResult result = new SearchResult<>(); result.setCode(200); result.setMessage("操作成功"); return result; } public static SearchResult success(T data) { SearchResult result = new SearchResult<>(); result.setCode(200); result.setMessage("操作成功"); result.setData(data); return result; } public static SearchResult success(T data, Long total) { SearchResult result = new SearchResult<>(); result.setCode(200); result.setMessage("操作成功"); result.setData(data); result.setTotal(total); return result; } public static SearchResult success(String message, T data) { SearchResult result = new SearchResult<>(); result.setCode(200); result.setMessage(message); result.setData(data); return result; } public static SearchResult error(String message) { SearchResult result = new SearchResult<>(); result.setCode(500); result.setMessage(message); return result; } public static SearchResult error(Integer code, String message) { SearchResult result = new SearchResult<>(); result.setCode(code); result.setMessage(message); return result; } public static SearchResult error(Integer code, String message, T data) { SearchResult result = new SearchResult<>(); result.setCode(code); result.setMessage(message); result.setData(data); return result; } // 常用状态码 public static final int SUCCESS = 200; public static final int ERROR = 500; public static final int UNAUTHORIZED = 401; public static final int FORBIDDEN = 403; public static final int NOT_FOUND = 404; public static final int VALIDATE_FAILED = 400; // 业务状态码 public static SearchResult validateFailed(String message) { return error(VALIDATE_FAILED, message); } public static SearchResult unauthorized(String message) { return error(UNAUTHORIZED, message); } public static SearchResult forbidden(String message) { return error(FORBIDDEN, message); } public static SearchResult notFound(String message) { return error(NOT_FOUND, message); } }