0
0
Files
Babyclass/app/Jobs/ClosedOrder.php
2020-08-04 10:09:42 +08:00

60 lines
1.1 KiB
PHP

<?php
namespace App\Jobs;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
use RuLong\Order\Models\Order;
/**
* 自动关闭订单
*/
class ClosedOrder implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, SerializesModels;
/**
* 队列名称
* @var string
*/
public $queue = 'ORDER';
/**
* 队列执行 延迟时间
* @var integer
*/
public $delay = 0.5 * 3600;
/**
* 最大尝试次数
* @var integer
*/
public $tries = 1;
/**
* 脚本超时时间
* @var integer
*/
public $timeout = 10;
protected $order;
public function __construct(Order $order)
{
$this->order = $order;
}
public function handle()
{
$order_curr = Order::find($this->order->id);
if ($order_curr && $order_curr->canClose()) {
$this->order->close();
} else {
return false;
}
}
}