/*** 关闭超时未支付订单*/
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.1 需求分析 超过限定时间并未支付的订单,我们需要进行超时订单的处理:先调用微信支付api,查询该订单的支付状态.如果未支付调用关闭订单的api,并修改订单状态为已关闭,并 ...

  2. B2C电商项目(第十三天、超时未支付订单处理、订单批量发货、确认收货与自动收货)

    订单处理 课程内容: 通过 rabbitmq的延迟消息完成超时订单处理 完成批量发货功能,了解第三方物流系统 完成自动收货功能 一.超时未支付订单处理 1.1 需求分析 超过限定时间并未支付的订单,我 ...

  3. java实现订单未支付失效_未支付订单30分钟后,自动取消

    未支付订单30分钟后,自动取消 生成订单时发起延时30分钟的任务 /** * 取消订单的任务 * @Title: startCancelOrderTask * @Description: 取消订单的任 ...

  4. 解决阿里云存在未支付订单请支付或作废后再下单

    阿里云服务器或其他云资源无法立即购买,提示"您选择的资源存在未支付订单,请支付或作废后再下单!"什么原因?这是由于你的阿里云账号之前已经创建了该订单,只是订单没有支付,所以无法再次 ...

  5. 从零开发短视频电商 30分钟未支付订单自动关闭、七天自动确认收货等延迟任务问题

    文章目录 常见延迟任务 常见解决方案 主动形式 被动形式 基于Redis实现ZSet的方式.键空间通知的方式 ZSet的方式 键空间通知的方式 RocketMQ延迟消息 延迟消息级别配置 客户端发送延 ...

  6. Redis key过期事件监听实现 - 30分钟自动取消未支付订单

    目录 一.前言 二.实现方案分析 三.Redis key过期事件方案实现步骤 3.1 Redis 安装步骤详见 3.2 修改 Redis 配置 3.3 在获取支付链接视图中设置key过期事件 3.4 ...

  7. TP5.1 实现超时未支付订单自动关闭

    对于这个需求,我以前写过Laravel版本的.今天想在TP5.1中实现这个功能,但是网上基本没什么教程可供参考,所以写篇文章仅供大家学习. 一.前台 1.先来加载订单确认页面 当下单成功后,通过 js ...

  8. 阿里二面:针对一个100W/秒的未支付订单取消场景,说说你的解决方案

    在工作或面试时,常常被问起关于消息队列.MQ或延时消息场景相关的问题. 最常见的延时消息场景,一般有以下几个: 下单后超过30分钟未支付,后台自动取消订单: 订单超过48h未评论,系统自动生成一条好评 ...

  9. springboot 模拟秒杀 分布式锁 以及 延时取消未支付订单

    简易描述秒杀系统的几个主要特点,分布式情况下使用锁,订单超时未支付使用mq的延时队列取消 maven依赖 <dependency><groupId>org.springfram ...

最新文章

  1. 【c语言】蓝桥杯算法训练 大小写转换
  2. Webform(Linq高级查、分页、组合查询)
  3. windows 常用工具
  4. 【毕业求职季】-听说你想去大厂看学妹,带你看看腾讯微信产品岗面经(已offer)
  5. iOS设计模式(03):工厂方法
  6. jQuery EasyUI window窗口使用实例
  7. 11.13 模10计数器设计
  8. 一个资深老司机告诉你选车的秘密 (完全版)
  9. 设计干货 | 时尚简约海报模板
  10. gradle是干什么_gradle和ant等构建工具有什么核心优势?
  11. type=radio增加onclick没有效果_佳能6d+小痰盂镜头,加1张餐巾纸拍摄花卉,朦胧美效果你喜欢吗?...
  12. DE10 Continuation: Complex Characteristic Roots
  13. 区块链 hyperledger fabric的系统链码有哪些类型 LSCC ESCC VSCC CSCC是什么
  14. python自定义事件event的含义_pyqt自定义事件学习出现问题
  15. esp8266接入小爱同学,通过mqtt
  16. 安装程序总是提示重启计算机,技巧| 安装西门子软件时提示重启电脑的解决办法...
  17. 【Endnote X9服务器运行失败】
  18. 【UE4_蓝图】map函数以及Clamped和Unclamped的区别
  19. 如何进行测试用例评审
  20. 人工智能中的线性代数:如何理解并更好地应用它

热门文章

  1. 【Python3.6】之在Windows中安装Python3.6.1
  2. JavaScript内存泄漏知多少?
  3. iOS UI、Xcode、调试、代码等常见问题总汇(持续更新中)
  4. 编写Tesseract的Python扩展
  5. 发现自己的代码写的越来越玄幻了
  6. 程序员是吃青春饭的吗?未来发展前途如何?
  7. 云盒子企业网盘入驻阿里云市场,正式向公有云市场发力!
  8. 动态字段插入及查询redis小结
  9. Install ruby on rails in Ubuntu 12.04
  10. [原创]Logo与Banner