统一返回结果

1、Code

public interface Code {
    /**
     *  获取响应码
     * @return 响应码
     */
    Integer getCode();


    /**
     * 获取响应信息
     *
     * @return 响应信息
     */
    String getMsg();
}

2、ResultCode

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum ResultCode implements Code{
    SUCCESS(20000, "操作成功"),

    ERROR(20001, "响应失败"),
    FILE_IS_EMPTY(20002, "请上传文件!!!"),

    SAVE_ERROR(20003, "添加失败"),

    UPDATE_ERROR(20004, "更新失败"),

    DATA_NO_EXIST(20005, "数据不存在"),

    UPLOAD_FILE_ERROR(20010, "文件上传失败"),

    FILE_EMPTY(20011, "文件为空"),

    DELETE_ERROR(20012, "删除失败"),

    VALID_CODE_SEND_FAIL(20013, "短信验证码发送失败"),

    LOGIN_ERROR(20014, "登录失败,用户名或密码错误!"),

    REGISTER_ERROR(20015, "注册失败"),

    GET_PLAYAUTH_FAIL(20016, "获取视频凭证失败"),

    REMOTE_CALL_COURSE(20017, "远程调用查询课程信息失败"),

    REMOTE_CALL_MEMBER(20018, "远程调用会员模块失败"),

    WXPAY_FAIL(20019, "微信支付失败"),

    PARAMS_ERROR(20020, "参数校验失败");


    private Integer code;

    private String msg;
}

3、Result

@ApiModel("统一返回结果")
@Data
public class Result {
    @ApiModelProperty("是否成功")
    private Boolean success;

    @ApiModelProperty("返回码")
    private Integer code;

    @ApiModelProperty("返回信息")
    private String message;

    @ApiModelProperty("返回数据")
    private Map<String, Object> data = new HashMap<>();

    /**
     * 构造方法私有化
     */
    private Result() {
    }

    /**
     * 成功的静态方法
     *
     * @return Result
     */
    public static Result ok() {
        Result Result = new Result();
        Result.setSuccess(true);
        Result.setCode(ResultCode.SUCCESS.getCode());
        Result.setMessage(ResultCode.SUCCESS.getMsg());
        return Result;
    }

    /**
     * 失败的静态方法
     *
     * @return Result
     */
    public static Result error() {
        Result Result = new Result();
        Result.setSuccess(false);
        Result.setCode(ResultCode.ERROR.getCode());
        Result.setMessage(ResultCode.ERROR.getMsg());
        return Result;
    }


    public Result success(Boolean success) {
        this.setSuccess(success);
        return this;
    }

    public Result message(String message) {
        this.setMessage(message);
        return this;
    }

    public Result code(Integer code) {
        this.setCode(code);
        return this;
    }

    public Result data(String key, Object value) {
        this.data.put(key, value);
        return this;
    }


    public Result data(Map<String, Object> map) {
        this.setData(map);
        return this;
    }

    public Result codeAndMessage(Code resultCode) {
        this.setCode(resultCode.getCode());
        this.setMessage(resultCode.getMsg());
        return this;
    }
}

4、使用

public Result findAll() {
    List<EduTeacher> list = teacherService.list();
    return Result.ok().data("datas", list);
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值