1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-22 19:44:02 +08:00
course-tencent-cloud/app/Console/Tasks/CloseOrderTask.php
2020-01-30 16:51:10 +08:00

47 lines
966 B
PHP

<?php
namespace App\Console\Tasks;
use App\Models\Order as OrderModel;
use Phalcon\Cli\Task;
class CloseOrderTask extends Task
{
public function mainAction()
{
$orders = $this->findOrders();
if ($orders->count() == 0) {
return;
}
foreach ($orders as $order) {
$order->status = OrderModel::STATUS_CLOSED;
$order->update();
}
}
/**
* 查找待关闭订单
*
* @param int $limit
* @return \Phalcon\Mvc\Model\ResultsetInterface
*/
protected function findOrders($limit = 1000)
{
$status = OrderModel::STATUS_PENDING;
$createdAt = time() - 12 * 3600;
$orders = OrderModel::query()
->where('status = :status:', ['status' => $status])
->andWhere('created_at < :created_at:', ['created_at' => $createdAt])
->limit($limit)
->execute();
return $orders;
}
}