feat: finish removing console kernel, add expiring invite notification

Signed-off-by: Miguel Nogueira <me@nogueira.codes>
This commit is contained in:
2025-08-09 20:38:50 +01:00
parent 9e77205820
commit 627c619abf
6 changed files with 304 additions and 74 deletions

View File

@@ -0,0 +1,34 @@
<?php
namespace App\Jobs;
use App\Invitation;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Queue\Queueable;
// General Housekeeping Job: Drop Approved and Completed Invites
class InviteLifecycleCleanup implements ShouldQueue
{
use Queueable;
/**
* Create a new job instance.
*/
public function __construct()
{
//
}
/**
* Execute the job.
*/
public function handle(): void
{
Invitation::whereIn('status', ['approved', 'completed'])
->chunkById(100, function ($invites) {
foreach ($invites as $invite) {
$invite->delete();
}
});
}
}