根据条件查询分类数据
[TOC]
简要描述
- 根据条件查询分类数据
前端页面和服务端的交互过程
- 页面(front/index.html)发送ajax请求,获取分类数据(菜品分类和套餐分类)
触发事件
- 初始化数据
接口调用
Promise.all([categoryListApi(),cartListApi({})]).then(res=>{
//获取分类数据
if(res[0].code === 1){
this.categoryList = res[0].data
if(Array.isArray(res[0].data) && res[0].data.length > 0){
this.categoryId = res[0].data[0].id
if(res[0].data[0].type === 1){
this.getDishList()
}else{
this.getSetmealData()
}
}
}else{
this.$notify({ type:'warning', message:res[0].msg});
}
})
请求URL
[context-path]/category/list
请求方式
- GET
接口API
function categoryListApi() {
return $axios({
'url': '/category/list',
'method': 'get',
})
}
返回示例
code: 1
data: [{id: "1397844263642378242", type: 1, name: "锅底", sort: 1, createTime: "2021-05-27 09:16:58",…},…]
map: {}
msg: null
返回参数说明
参数名 | 类型 | 说明 |
---|---|---|
code | int | 编码:1成功,0和其它数字为失败 |
data | object | 数据 |
map | Map | 动态数据 |
msg | String | 错误信息 |
备注
data有两种返回值
public static <T> R<T> success(T object) {
R<T> r = new R<T>();
r.data = object;
r.code = 1;
return r;
}
public static <T> R<T> error(String msg) {
R r = new R();
r.msg = msg;
r.code = 0;
return r;
}
后端接口请求参数
- 映射Category对象类型参数
后端代码
@GetMapping("/list")
public R<List<Category>> list(Category category){
LambdaQueryWrapper<Category> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(category.getType()!=null,Category::getType,category.getType());
queryWrapper.orderByAsc(Category::getSort).orderByDesc(Category::getUpdateTime);
List<Category> list = categoryService.list(queryWrapper);
return R.success(list);
}