2026-05-30 22:15:16 +07:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace Database\Seeders;
|
|
|
|
|
|
|
|
|
|
use App\Models\User;
|
|
|
|
|
use Illuminate\Database\Seeder;
|
2026-06-04 08:36:18 +07:00
|
|
|
use Illuminate\Support\Facades\Hash;
|
|
|
|
|
use Spatie\Permission\Models\Role;
|
2026-05-30 22:15:16 +07:00
|
|
|
|
|
|
|
|
class DatabaseSeeder extends Seeder
|
|
|
|
|
{
|
|
|
|
|
public function run(): void
|
|
|
|
|
{
|
2026-06-04 08:36:18 +07:00
|
|
|
// 1. Bersihkan Cache Spatie
|
|
|
|
|
app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();
|
|
|
|
|
|
|
|
|
|
// 2. Buat Role Baku
|
|
|
|
|
$roleAdmin = Role::firstOrCreate(['name' => 'admin', 'guard_name' => 'web']);
|
|
|
|
|
Role::firstOrCreate(['name' => 'trainer', 'guard_name' => 'web']);
|
|
|
|
|
|
|
|
|
|
// 3. Patenkan Akun Utama Anda
|
|
|
|
|
$user = User::updateOrCreate(
|
|
|
|
|
['email' => 'iwit@tia-pharma.com'],
|
|
|
|
|
[
|
|
|
|
|
'first_name' => 'Iwit',
|
|
|
|
|
'last_name' => 'Admin',
|
|
|
|
|
'password' => Hash::make('rahasia1234'), // Password baku permanen
|
|
|
|
|
'is_active' => 1,
|
|
|
|
|
'must_change_password' => 0,
|
|
|
|
|
'email_verified_at' => now(),
|
|
|
|
|
]
|
|
|
|
|
);
|
2026-05-30 22:15:16 +07:00
|
|
|
|
2026-06-04 08:36:18 +07:00
|
|
|
// 4. Otomatis Jadikan Admin
|
|
|
|
|
$user->assignRole($roleAdmin);
|
2026-05-30 22:15:16 +07:00
|
|
|
}
|
2026-06-04 08:36:18 +07:00
|
|
|
}
|