Implement cron to remove expired bids

This commit is contained in:
Kevin
2018-08-25 01:07:14 +08:00
parent 1c32ef838d
commit 796053cfa5
8 changed files with 242 additions and 23 deletions

View File

@@ -0,0 +1,30 @@
<?php
namespace App\Cron\Hourly;
use App\Events\CronHourly;
use App\Interfaces\Listener;
use App\Models\Bid;
use Carbon\Carbon;
/**
* Remove expired bids
* @package App\Listeners\Cron\Hourly
*/
class RemoveExpiredBids extends Listener
{
/**
* Remove expired bids
* @param CronHourly $event
* @throws \Exception
*/
public function handle(CronHourly $event): void
{
if(setting('bids.expire_time') === 0) {
return;
}
$date = Carbon::now()->subHours(setting('bids.expire_time'));
Bid::whereDate('created_at', '<', $date)->delete();
}
}