定时任务 - 定时关闭超期未支付订单
/*** 关闭超时未支付订单*/
public void closeOrder();
@Transactional(propagation = Propagation.REQUIRED)
@Override
public void closeOrder() {// 查询所有未付款订单,判断时间是否超时(1天),超时则关闭交易OrderStatus queryOrder = new OrderStatus();queryOrder.setOrderStatus(OrderStatusEnum.WAIT_PAY.type);List<OrderStatus> list = orderStatusMapper.select(queryOrder);for (OrderStatus os : list) {// 获得订单创建时间Date createdTime = os.getCreatedTime();// 和当前时间进行对比int days = DateUtil.daysBetween(createdTime, new Date());if (days >= 1) {// 超过1天,关闭订单doCloseOrder(os.getOrderId());}}
}
@Transactional(propagation = Propagation.REQUIRED)
void doCloseOrder(String orderId) {OrderStatus close = new OrderStatus();close.setOrderId(orderId);close.setOrderStatus(OrderStatusEnum.CLOSE.type);close.setCloseTime(new Date());orderStatusMapper.updateByPrimaryKeySelective(close);
}
定时任务 - 定时关闭超期未支付订单相关推荐
- 1.超时未支付订单处理
1.超时未支付订单处理 1.1 需求分析 超过限定时间并未支付的订单,我们需要进行超时订单的处理:先调用微信支付api,查询该订单的支付状态.如果未支付调用关闭订单的api,并修改订单状态为已关闭,并 ...
- B2C电商项目(第十三天、超时未支付订单处理、订单批量发货、确认收货与自动收货)
订单处理 课程内容: 通过 rabbitmq的延迟消息完成超时订单处理 完成批量发货功能,了解第三方物流系统 完成自动收货功能 一.超时未支付订单处理 1.1 需求分析 超过限定时间并未支付的订单,我 ...
- java实现订单未支付失效_未支付订单30分钟后,自动取消
未支付订单30分钟后,自动取消 生成订单时发起延时30分钟的任务 /** * 取消订单的任务 * @Title: startCancelOrderTask * @Description: 取消订单的任 ...
- 解决阿里云存在未支付订单请支付或作废后再下单
阿里云服务器或其他云资源无法立即购买,提示"您选择的资源存在未支付订单,请支付或作废后再下单!"什么原因?这是由于你的阿里云账号之前已经创建了该订单,只是订单没有支付,所以无法再次 ...
- 从零开发短视频电商 30分钟未支付订单自动关闭、七天自动确认收货等延迟任务问题
文章目录 常见延迟任务 常见解决方案 主动形式 被动形式 基于Redis实现ZSet的方式.键空间通知的方式 ZSet的方式 键空间通知的方式 RocketMQ延迟消息 延迟消息级别配置 客户端发送延 ...
- Redis key过期事件监听实现 - 30分钟自动取消未支付订单
目录 一.前言 二.实现方案分析 三.Redis key过期事件方案实现步骤 3.1 Redis 安装步骤详见 3.2 修改 Redis 配置 3.3 在获取支付链接视图中设置key过期事件 3.4 ...
- TP5.1 实现超时未支付订单自动关闭
对于这个需求,我以前写过Laravel版本的.今天想在TP5.1中实现这个功能,但是网上基本没什么教程可供参考,所以写篇文章仅供大家学习. 一.前台 1.先来加载订单确认页面 当下单成功后,通过 js ...
- 阿里二面:针对一个100W/秒的未支付订单取消场景,说说你的解决方案
在工作或面试时,常常被问起关于消息队列.MQ或延时消息场景相关的问题. 最常见的延时消息场景,一般有以下几个: 下单后超过30分钟未支付,后台自动取消订单: 订单超过48h未评论,系统自动生成一条好评 ...
- springboot 模拟秒杀 分布式锁 以及 延时取消未支付订单
简易描述秒杀系统的几个主要特点,分布式情况下使用锁,订单超时未支付使用mq的延时队列取消 maven依赖 <dependency><groupId>org.springfram ...
最新文章
- 【c语言】蓝桥杯算法训练 大小写转换
- Webform(Linq高级查、分页、组合查询)
- windows 常用工具
- 【毕业求职季】-听说你想去大厂看学妹,带你看看腾讯微信产品岗面经(已offer)
- iOS设计模式(03):工厂方法
- jQuery EasyUI window窗口使用实例
- 11.13 模10计数器设计
- 一个资深老司机告诉你选车的秘密 (完全版)
- 设计干货 | 时尚简约海报模板
- gradle是干什么_gradle和ant等构建工具有什么核心优势?
- type=radio增加onclick没有效果_佳能6d+小痰盂镜头,加1张餐巾纸拍摄花卉,朦胧美效果你喜欢吗?...
- DE10 Continuation: Complex Characteristic Roots
- 区块链 hyperledger fabric的系统链码有哪些类型 LSCC ESCC VSCC CSCC是什么
- python自定义事件event的含义_pyqt自定义事件学习出现问题
- esp8266接入小爱同学,通过mqtt
- 安装程序总是提示重启计算机,技巧| 安装西门子软件时提示重启电脑的解决办法...
- 【Endnote X9服务器运行失败】
- 【UE4_蓝图】map函数以及Clamped和Unclamped的区别
- 如何进行测试用例评审
- 人工智能中的线性代数:如何理解并更好地应用它