ldc-com-app-bo/database/seeders/DirectorySeeder.php
2025-06-12 15:47:56 +02:00

32 lines
899 B
PHP

<?php
namespace Database\Seeders;
use App\Models\AppUser;
use App\Models\Directory;
use App\Models\Tenant;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class DirectorySeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run(): void
{
// Default "Salon" directory is created in the Tenant model.
Directory::factory(14)->create();
// Seeder for directory_authorizations table.
$directories = Directory::query()->where('needAuthorization', true)->get();
AppUser::each(function (AppUser $model) use ($directories) {
$offset = rand(DB::table('directories')->min('id') ?? 1, DB::table('directories')->max('id') ?? 15);
$length = rand(1, 2);
$model->directories()->saveMany($directories->slice($offset, $length));
});
}
}