package com.sckw.freight.util; import lombok.*; import lombok.experimental.Accessors; import java.io.Serial; import java.io.Serializable; /** * @author xcq * @date 2022年06月14日 13:41 */ @ToString @NoArgsConstructor @AllArgsConstructor @Accessors(chain = true) public class R implements Serializable { @Serial private static final long serialVersionUID = 1L; @Getter @Setter private String msg; @Getter @Setter private Boolean status; @Getter @Setter private T data; public static R ok() { return restResult(null, true, null); } public static R ok(T data) { return restResult(data, true, null); } public static R ok(T data, String msg) { return restResult(data, true, msg); } public static R failed() { return restResult(null, false, null); } public static R failed(String msg) { return restResult(null, false, msg); } public static R failed(T data) { return restResult(data, false, null); } public static R failed(T data, String msg) { return restResult(data, false, msg); } public static R failed(T data, String msg, int code) { return restResult(data, false, msg); } private static R restResult(T data, Boolean status, String msg) { R apiResult = new R<>(); apiResult.setStatus(status); apiResult.setData(data); apiResult.setMsg(msg); return apiResult; } }