feat: complete reservation lifecycle

This commit is contained in:
2026-08-04 16:30:11 +01:00
parent 077015f17a
commit e667d05bc1
24 changed files with 1096 additions and 46 deletions

View File

@@ -0,0 +1,32 @@
<?php
namespace App\Jobs;
use App\Domain\Reservations\Services\ReservationService;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Queue\Queueable;
class ExpirePendingReservations implements ShouldBeUnique, ShouldQueue
{
use Queueable;
public int $tries = 3;
public int $timeout = 120;
public int $uniqueFor = 240;
/** @var list<int> */
public array $backoff = [10, 30, 60];
public function uniqueId(): string
{
return 'pending-reservations';
}
public function handle(ReservationService $reservations): void
{
$reservations->expirePending();
}
}