36 lines
1.1 KiB
PHP
36 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Models\NotificationPreference;
|
|
use App\Models\User;
|
|
use Illuminate\Database\Seeder;
|
|
use Illuminate\Support\Facades\Hash;
|
|
|
|
class SuperAdminSeeder extends Seeder
|
|
{
|
|
public function run(): void
|
|
{
|
|
$user = User::firstOrCreate(
|
|
['email' => 'super@verde.local'],
|
|
[
|
|
'phone' => '+639000000099',
|
|
'password' => Hash::make(env('SUPER_ADMIN_PASSWORD', 'password')),
|
|
'first_name' => 'Verde',
|
|
'last_name' => 'Super Admin',
|
|
'role' => User::ROLE_SUPER_ADMIN,
|
|
'status' => User::STATUS_ACTIVE,
|
|
'email_verified_at' => now(),
|
|
'phone_verified_at' => now(),
|
|
'preferred_language' => 'en',
|
|
'tenant_id' => null, // super admins span tenants
|
|
],
|
|
);
|
|
|
|
$user->syncRoles([User::ROLE_SUPER_ADMIN]);
|
|
NotificationPreference::firstOrCreate(['user_id' => $user->id]);
|
|
|
|
$this->command->info("Super admin: {$user->email} (password: ".env('SUPER_ADMIN_PASSWORD', 'password').')');
|
|
}
|
|
}
|