
一、Spring Task
1. 介绍
是spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码
2. cron表达式

cron表达式在线生成器:https://cron.qqe2.com/
3. 使用步骤

在类上加注解@Component
在定时任务上加注解@Scheduled(cron="xxx")(函数名和返回值无要求)
二、订单状态定时处理
1. 需求分析
(1)下单后未支付,订单一直处于"支付中"状态
每隔一分钟检查一次订单状态,若15分钟后还是未支付,则取消订单
(2)收货后未点击完成,订单一直处于"派送中"状态
每天的凌晨一点检查订单状态,将"派送中"的订单状态修改为"已完成"
2. 代码开发
创建OrderTask类@Component,注入OrderMapper
处理(1):查数据库,返回超时订单(下单时间<当前时间-15min),改数据库(每分钟执行)
处理(2):查数据库,返回派送中订单(下单时间<当前时间-1h),改数据库(每天1点执行)
OrderMapper:根据订单状态和时间查询
当前时间-15分钟:LocalDataTime.now().plusMinutes(-15)
三、WebSocket
1. 介绍

2. 实现步骤

导入:老师准备好的代码导到项目里
四、来单提醒
1. 需求分析和设计

2. 代码开发
(没写支付功能,写在下单成功后面吧。。)
orderController:封装JSON数据,sendToAll发送给客户端
五、客户催单
1. 需求分析和设计

小程序点击催单,发送请求给服务端,服务端发送信息给浏览器