目录
1、 商品列表获取
1.1、 编辑controller类
//请求路径: /item/getItemList?query=&pageNum=1&pageSize=10
//请求类型: get
//请求参数: 使用pageResult对象接收
@GetMapping("/getItemList")
public SysResult getItemList(PageResult pageResult){
pageResult=itemService.getItemList(pageResult);
return SysResult.success(pageResult);
}
1.2、 编辑service
@Override
public PageResult getItemList(PageResult pageResult) {
QueryWrapper<Item> queryWrapper = new QueryWrapper<>();
//判断条件: 用户传递query 则添加where条件
//不用if用Boolean,因为queryWrapper.like(boolean condition, R column, Object val)中的第一个参数是Boolean类型
String query = pageResult.getQuery();
boolean flag = StringUtils.hasLength(query);
queryWrapper.like(flag,"title",query);
//page接口原来只有2个,经过分页查询之后,有四个结果
//页数 条数 总数 记录
IPage<Item> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize());
page = itemMapper.selectPage(page,queryWrapper);//分页参数,条件
//获取总数
long total = page.getTotal();
//获取记录数
List<Item> rows = page.getRecords();
//返回分页对象
return pageResult.setTotal(total).setRows(rows);
// //1.获取总记录数 Integer--long 自动转化
// long total = itemMapper.findTotal();
// //2.获取分页结果
// int size = pageResult.getPageSize();//条数
// int start = (pageResult.getPageNum() - 1) * size;//起始位置
// String query=pageResult.getQuery();//查询条件
// List<User> itemList =
// itemMapper.getItemListByPage(start,size,query);
// return pageResult.setTotal(total).setRows(itemList);//返回分页对象
}
1.3、 展示
2、状态更改
2.1、 编辑controller类
//请求路径: /item/updateItemStatus
//请求类型: put
@PutMapping("/updateItemStatus")
public SysResult updateItemStatus(@RequestBody Item item){
itemService.updateItemStatus(item);
return SysResult.success();
}
2.2、 编辑service
@Override
public void updateItemStatus(Item item) {
itemMapper.updateById(item);
}
2.3、 展示
3、 新增列表联合商品详情
3.1、 编辑controller类
/*
* url:http://localhost:8091/item/saveItem
* 参数:{item:this.addItemForm,itemDesc:this.itemDesc}
* 接受数据:ItemVO
* 返回值:SysResult对象
* */
@PostMapping("/saveItem")
public SysResult saveItem(@RequestBody ItemVO itemVO){
itemService.saveItem(itemVO);
return SysResult.success();
}
3.2、 编辑service
@Override
public void saveItem(ItemVO itemVO) {
Item item = itemVO.getItem();
item.setStatus(true); //默认启用状态
//要求入库之后返回主键
//MP如果设定了主键自增则会自动的实现数据回显
itemMapper.insert(item);
ItemDesc itemDesc=itemVO.getItemDesc();
itemDesc.setId(item.getId());
itemDescMapper.insert(itemDesc);
}
3.3、 展示
4、删除列表联合商品详情
4.1、 编辑controller类
//请求路径: /item/deleteItemById
//请求类型: delete
@DeleteMapping("/deleteItemById")
public SysResult deleteItem( Integer id){
itemService.deleteItem(id);
return SysResult.success();
}
4.2、 编辑service
@Override
public void deleteItem(Integer id) {
itemMapper.deleteById(id);
itemDescMapper.deleteById(id);
}
4.3、 展示
5、修改商品列表
5.1、 编辑controller类
@PutMapping("/updateItem")
public SysResult updateItem(@RequestBody Item item){
itemService.updateItem(item);
return SysResult.success();
}
5.2、 编辑service
@Override
public void updateItem(Item item) {
itemMapper.updateById(item);
}