refactor(reservations): unify expiration command
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
<?php
|
||||
|
||||
use App\Domains\Cart\Services\ExpireCartReservationsService;
|
||||
use App\Domains\Purchase\Services\CheckoutService;
|
||||
use App\Domains\Catalog\Services\ExpireStockReservationsService;
|
||||
use Illuminate\Foundation\Inspiring;
|
||||
use Illuminate\Support\Facades\Artisan;
|
||||
use Illuminate\Support\Facades\Schedule;
|
||||
@@ -10,24 +9,13 @@ Artisan::command('inspire', function () {
|
||||
$this->comment(Inspiring::quote());
|
||||
})->purpose('Display an inspiring quote');
|
||||
|
||||
Artisan::command('purchases:expire', function (): void {
|
||||
$expiredCount = app(CheckoutService::class)
|
||||
->expireOverduePurchases();
|
||||
Artisan::command('reservations:expire', function (): void {
|
||||
$expired = app(ExpireStockReservationsService::class)->expireOverdue();
|
||||
|
||||
$this->info("Expired purchases: {$expiredCount}");
|
||||
})->purpose('Release stock reservations from expired purchases');
|
||||
$this->info("Expired purchases: {$expired['purchases']}");
|
||||
$this->info("Expired cart items: {$expired['cart_items']}");
|
||||
})->purpose('Release expired stock reservations from purchases and abandoned carts');
|
||||
|
||||
Artisan::command('carts:expire', function (): void {
|
||||
$expiredCount = app(ExpireCartReservationsService::class)
|
||||
->expireOverdue();
|
||||
|
||||
$this->info("Expired cart items: {$expiredCount}");
|
||||
})->purpose('Release expired stock reservations from abandoned carts');
|
||||
|
||||
Schedule::command('purchases:expire')
|
||||
->everyMinute()
|
||||
->withoutOverlapping();
|
||||
|
||||
Schedule::command('carts:expire')
|
||||
Schedule::command('reservations:expire')
|
||||
->everyMinute()
|
||||
->withoutOverlapping();
|
||||
|
||||
Reference in New Issue
Block a user