ldc-groupe/app/Jobs/CleanTrashModels.php
2025-10-17 14:52:56 +02:00

32 lines
784 B
PHP

<?php
namespace App\Jobs;
use App\Models\DynamicPage;
use App\Models\PageConfig;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class CleanTrashModels implements ShouldQueue, ShouldBeUnique
{
use Dispatchable;
use InteractsWithQueue;
use Queueable;
use SerializesModels;
/**
* Execute the job.
*
* @return void
*/
public function handle(): void
{
collect([DynamicPage::class, PageConfig::class])->map(function (string $class) {
$class::onlyTrashed()->each(fn($model) => $model->forceDelete());
});
}
}