49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use Illuminate\Database\Seeder;
|
|
use Spatie\Permission\Models\Role;
|
|
use App\Models\User;
|
|
|
|
class RoleSeeder extends Seeder
|
|
{
|
|
public function run(): void
|
|
{
|
|
// Buat role jika belum ada
|
|
Role::firstOrCreate(['name' => 'superadmin']);
|
|
Role::firstOrCreate(['name' => 'admin']);
|
|
Role::firstOrCreate(['name' => 'user']);
|
|
|
|
// Buat akun superadmin jika belum ada
|
|
$superadmin = User::firstOrCreate(
|
|
['email' => 'superadmin@desa.id'],
|
|
[
|
|
'name' => 'Superadmin Desa',
|
|
'password' => bcrypt('superadmin123'),
|
|
]
|
|
);
|
|
$superadmin->syncRoles(['superadmin']);
|
|
|
|
// Buat akun admin jika belum ada
|
|
$admin = User::firstOrCreate(
|
|
['email' => 'admin@desa.id'],
|
|
[
|
|
'name' => 'Admin Desa',
|
|
'password' => bcrypt('admin123'),
|
|
]
|
|
);
|
|
$admin->syncRoles(['admin']);
|
|
|
|
// Buat akun user jika belum ada
|
|
$user = User::firstOrCreate(
|
|
['email' => 'user@desa.id'],
|
|
[
|
|
'name' => 'User Desa',
|
|
'password' => bcrypt('user123'),
|
|
]
|
|
);
|
|
$user->syncRoles(['user']);
|
|
}
|
|
}
|