当前位置: 首页 > news >正文

laravel延迟队列 取消未支付超时订单订单

1:生成待支付订单时,调用延迟队列

超过十五分钟未支付自动取消

use App\Jobs\endTask;
use Illuminate\Support\Carbon;

$resPost1 = array("act" => "cy_order_cancel", "id" => $id);

endTask::dispatch($resPost1)->delay(Carbon::now()->addMinutes(15));

2:延迟队列生效,检测订单状态,依旧未支付改为取消

endTask.php

public function handle()

{

        $act = $this->post['act'];

        switch ($act){

                case "order_cancel"://订单超时取消

                        Order::cancel($this->post);

                        break;

                default:

                        break;

        }

}

订单取消方法:

public static function cancel($post){

        if(isset($post['id'])){

                //拿到定时时的订单号处理具体业务逻辑

        }

}

任务队列需要重启***写入新的逻辑

ps:消息队列处理可以echo  输出或写入日志文件但不要打断  如die  或框架语言 error方法等会导致消息队列崩溃停止

http://www.lryc.cn/news/451159.html

相关文章:

  • 解锁高效开发的秘密武器
  • 【CSS】兼容处理
  • C语言线程
  • 自闭症寄宿学校 vs. 日常教育:为孩子提供更多可能
  • RxSwift系列(二)操作符
  • Gin框架简易搭建(3)--Grom与数据库
  • JavaScript模块化-CommonJS规范和ESM规范
  • 解决银河麒麟V10中的apt Lock异常
  • windows11环境安装lua及luarocks(踩坑篇)
  • Glide基本用法及With方法源码解析
  • html中的文本标签(含标签的实现案例)
  • 通信协议感悟
  • IDEA几大常用AI插件
  • 51单片机学习第六课---B站UP主江协科技
  • sadTalker本地编译
  • 强化学习核心概念与公式总结
  • 基础算法--双指针【概念+图解+题解+解释】
  • 国产化系统/鸿蒙开发足浴店收银源码-收缩左侧———未来之窗行业应用跨平台架构
  • 如何从硬盘恢复丢失/删除的视频
  • 《Effective C++》第三版——设计与声明(1)
  • 数值计算的程序设计问题举例
  • Java之方法的使用
  • sudo 命令:掌握系统权限控制,实现安全高效管理
  • AndroidStudio导入so文件
  • Kuebernetes 群集基于 Docker 部署
  • 追随 HarmonyOS NEXT,Solon v3.0 将在10月8日发布
  • 服装时尚与动漫游戏的跨界联动:创新运营与策划策略研究
  • Redis中String类型的常用命令(append,getrenge,setrange等命令)
  • 深度拆解:如何在Facebook上做跨境电商?
  • 为啥数据需转换成tensor才能参与后续建模训练