| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package top.lvzhiqiang.dto;
- import lombok.Data;
- import top.lvzhiqiang.enumeration.ResultCodeEnum;
- /**
- * 统一结果类
- *
- * @author lvzhiqiang
- * 2022/4/11 16:55
- */
- @Data
- public class R<T> {
- private Boolean success;
- private Integer code;
- private String message;
- private T data;
- // 构造器私有
- private R() {
- }
- // 通用返回成功
- public static R ok() {
- R r = new R();
- r.setSuccess(ResultCodeEnum.SUCCESS.getSuccess());
- r.setCode(ResultCodeEnum.SUCCESS.getCode());
- r.setMessage(ResultCodeEnum.SUCCESS.getMessage());
- return r;
- }
- // 通用返回失败,未知错误
- public static R error() {
- R r = new R();
- r.setSuccess(ResultCodeEnum.UNKNOWN_ERROR.getSuccess());
- r.setCode(ResultCodeEnum.UNKNOWN_ERROR.getCode());
- r.setMessage(ResultCodeEnum.UNKNOWN_ERROR.getMessage());
- return r;
- }
- // 设置结果,形参为结果枚举
- public static R setResult(ResultCodeEnum result) {
- R r = new R();
- r.setSuccess(result.getSuccess());
- r.setCode(result.getCode());
- r.setMessage(result.getMessage());
- return r;
- }
- /**
- * ------------使用链式编程,返回类本身-----------
- **/
- // 自定义返回数据
- public R data(T data) {
- this.setData(data);
- return this;
- }
- // 自定义状态信息
- public R message(String message) {
- this.setMessage(message);
- return this;
- }
- // 自定义状态码
- public R code(Integer code) {
- this.setCode(code);
- return this;
- }
- // 自定义返回结果
- public R success(Boolean success) {
- this.setSuccess(success);
- return this;
- }
- }
|