统一返回结果

代码结构如下:

 

相关代码:

package com.hhxy.lab.utils.result;

import lombok.Data;

import java.util.HashMap;
import java.util.Map;

/**
 * @author panlx
 * @version 1.0
 * @date 2020-11-04 22:12
 * 统一返回结果
 */
@Data
public class R {
    private Boolean success;

    private Integer code;

    private String message;


    private Map<String, Object> data = new HashMap<String, Object>();

    private R(){}

    public static R ok(){
        R r = new R();
        r.setSuccess(true);
        r.setCode(ResultCode.SUCCESS);
        r.setMessage("成功");
        return r;
    }

    public static R error(){
        R r = new R();
        r.setSuccess(false);
        r.setCode(ResultCode.ERROR);
        r.setMessage("失败");
        return r;
    }

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

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

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

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

    public R data(Map<String, Object> map){
        this.setData(map);
        return this;
    }
}
package com.hhxy.lab.utils.result;

public interface ResultCode {
  //此处为返回的状态码
public static Integer SUCCESS = 200; public static Integer ERROR = 500; }

使用示例代码:

    //增加仓库
    @RequestMapping("/addDepot")
    public R addDepot(@RequestBody Depot depot){
        System.out.println(depot);
        boolean res=depotService.save(depot);
        return R.ok();
    //遇到多返回结果
    //Map map = new HashMap();
    //map.put("list",list);
    //map.put("total",total);
    //return R.ok().data(map);

    //或者
    //return R.ok().data("list",list).data("total",total); }

 

posted @ 2020-11-05 14:02  pansin  阅读(111)  评论(0编辑  收藏  举报