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

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.kler.cn/news/322823.html

相关文章:

  • 堆排序,TopK问题|向上调整建堆|向下调整建堆(C)
  • Kafka系列之:安装使用kafka_exporter详细步骤
  • Agent智能体
  • 常见错误1:访问指针类型
  • 【Java异常】(简简单单拿捏)
  • Python(六)-拆包,交换变量名,lambda
  • vue3中使用echarts折线图初始化只显示一条数据,其余折线根据用户点击进行显示
  • 【java】前端RSA加密后端解密
  • 外贸电商系统卷轴模式开发:技术深度解析与实践
  • 联宇集团:如何利用CRM实现客户管理精细化与业务流程高效协同
  • 解决element树形结构切换节点,form表单缓存问题
  • 如何解决跨域请求中的 CORS 错误
  • 前端大模型入门:使用Transformers.js实现纯网页版RAG(一)
  • mobaxterm、vscode通过跳板机连接服务器
  • cocosCreator 2.x 原生平台不息屏
  • 3D 模型GLTF、GLB格式文件介绍使用;FBX格式
  • 【单调栈】单调栈基础及经典案例
  • 【计算机网络 - 基础问题】每日 3 题(十九)
  • echarts地图下钻的 两种方法
  • Text-to-SQL方法研究
  • 更换硬盘后,电脑装完系统进不去?或PE能识别硬盘但开机/启动/BIOS识别不了硬盘解决办法
  • 每日一题学习笔记
  • 深入解析JVM常用参数与配置详
  • 双端之Nginx+Php结合PostgreSQL搭建Wordpress
  • 【Streamlit案例】制作销售数据可视化看板
  • 算法实战(五):如何用学过的数据结构和算法实现一个短网址系统?
  • 【在.net6和WPF框架下进行海康SDK开发】(一)如何引用Dll
  • Llama 3.2 使用指南:工作原理及示例
  • 在 Delphi BSD11中安装 DCU 格式的第三方组件库
  • python数据分析与可视化需要掌握哪些知识点