个人名片:
博主:酒徒ᝰ.
专栏:瑞吉外卖
个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。
本篇励志:一个人静静坐在电脑面前写代码的感觉,那是什么感觉?那是武林高手闭关修炼的感觉。
本项目基于B站黑马程序员Java项目实战《瑞吉外卖》,轻松掌握springboot + mybatis plus开发核心技术的真java实战项目。
视频链接【黑马程序员Java项目实战《瑞吉外卖》,轻松掌握springboot + mybatis
plus开发核心技术的真java实战项目】 https://www.bilibili.com/video/BV13a411q753?
点击观看
因为订单是前端购物确认的,所有大部分内容在前端。这里就比较少了
一、页面显示
1.全部显示
分析:order地址,GET方式,page地址,page,pageSize属性
/**
* 页面显示
* @param page
* @param pageSize
* @return
*/
@GetMapping("/page")
public R<Page> page(int page, int pageSize){
//页面构造器
Page<Orders> pageInfo = new Page<>(page, pageSize);
//查询所有orders表信息
LambdaQueryWrapper<Orders> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.orderByDesc(Orders::getOrderTime);
ordersService.page(pageInfo, queryWrapper);
return R.success(pageInfo);
}
2.输入框查询显示
相对于全部显示来说,多了number,beginTime,endTime属性
beginTime,endTime为时间,在LambdaQueryWrapper中,可以用string来比较时间。
/**
* 页面显示——输入框查询
* @param page
* @param pageSize
* @return
*/
@GetMapping("/page")
public R<Page> page(int page, int pageSize, Long number, String beginTime, String endTime){
//log.info("beginTime:{}",beginTime);
//log.info("endTime:{}",endTime);
//页面构造器
Page<Orders> pageInfo = new Page<>(page, pageSize);
//查询所有orders表信息
LambdaQueryWrapper<Orders> queryWrapper = new LambdaQueryWrapper<>();
//查询name
if (number != null){
queryWrapper.like(Orders::getNumber, number);
}
//查询beginTime 大于等于这个时间
if (beginTime != null){
queryWrapper.ge(Orders::getOrderTime, beginTime);
}
//查询endTime 小于等于这个时间
if (endTime != null){
queryWrapper.le(Orders::getOrderTime, endTime);
}
queryWrapper.orderByDesc(Orders::getOrderTime);
ordersService.page(pageInfo, queryWrapper);
return R.success(pageInfo);
}
二、订单状态修改
建议完成移动端后再完善此处。
分析:order地址,PUT方式。
/**
* 订单状态修改——管理端
* @param orders
* @return
*/
@PutMapping
public R<String> order(@RequestBody Orders orders){
//log.info("orders:{}", orders);
Orders order = ordersService.getById(orders.getId());
if (order.getStatus() == 2){
orders.setStatus(3);
ordersService.updateById(orders);
return R.success("订单派送成功");
}else {
orders.setStatus(4);
ordersService.updateById(orders);
return R.success("订单已完成");
}
}