项目中万能封装返回类
改类通常用与包装后端的数据,返回到前端
import org.springframework.http.HttpStatus;
import java.util.HashMap;
import java.util.Map;
/**
* 返回数据
* @author itansh
*/
public class R extends HashMap<String, Object> {
private static final long serialVersionUID = 1L;
//默认返回信息
public R() {
put("code", 0);
put("msg", "success");
}
public static R error() {
return error(HttpStatus.INTERNAL_SERVER_ERROR.value(), "未知异常,请联系管理员");
}
public static R error(String msg) {
return error(HttpStatus.INTERNAL_SERVER_ERROR.value(), msg);
}
public static R error(int code, String msg) {
R r = new R();
r.put("code", code);
r.put("msg", msg);
return r;
}
//带提示参数的返回
public static R ok(String msg) {
R r = new R();
r.put("msg", msg);
return r;
}
//带map数据返回
public static R ok(Map<String, Object> map) {
R r = new R();
r.putAll(map);
return r;
}
//默认返回
public static R ok() {
return new R();
}
//返回一个数据对象,通常使用这个封装数据
@Override
public R put(String key, Object value) {
super.put(key, value);
return this;
}
public R putMap(Map<? extends String, ?> map ){
super.putAll(map);
return this;
}
}
使用方法
这里的就是一个功能模块里面的控制层返回集封装类的用法,大家可以根据自己的需求灵活使用
@RestController
@RequestMapping("/supplyBill")
@RequiredArgsConstructor
public class SupplyBillController {
private final SupplyBillService supplyBillService;
/**
* 供货单信息分页列表
*/
@RequestMapping("/list")
//@RequiresPermissions("chain:supplyBill:list")
public R list(@RequestParam Map<String, Object> params){
PageUtil page = supplyBillService.queryPage(params);
return R.ok().put("data", page);
}
/**
* 获取供货单信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("chain:supplyBill:info")
public R info(@PathVariable("id") Long id){
return R.ok().put("data", supplyBillService.info(id));
}
/**
* 保存供货单信息
*/
@RequestMapping("/save")
//@RequiresPermissions("chain:supplyBill:save")
public R save(@RequestBody SupplyBill supplyBill){
supplyBillService.savaSupplyBill(supplyBill);
return R.ok();
}
/**
* 更新供货单信息
*/
@RequestMapping("/update")
//@RequiresPermissions("chain:supplyBill:update")
public R update(@RequestBody SupplyBill supplyBill){
supplyBillService.updateSupplyBill(supplyBill);
return R.ok();
}
/**
* 删除供货单信息
*/
@RequestMapping("/delete/{id}")
//@RequiresPermissions("chain:supplyBill:delete")
public R delete(@PathVariable("id") Long id){
supplyBillService.removeSupplyBill(id);
return R.ok();
}
/**
* 供货单审核上链
*/
@RequestMapping("/check/{id}")
public R check(@PathVariable("id") Long id){
supplyBillService.check(id);
return R.ok();
}
/**
* 供应商确认供货单
*
*/
@RequestMapping("/confirm/{id}")
public R confirm(@PathVariable("id") Long id) {
supplyBillService.confirm(id);
return R.ok();
}
/**
* 供货单下拉列表
*/
@RequestMapping("/select")
public R select() {
List<Map<String,Object>> list= supplyBillService.select();
return R.ok().put("data",list);
}