<?php
namespace Database\Seeders;
use App\Models\User;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role;
class RolesAndPermissionsSeeder extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$permissions = [
'dashboardAdmin',
'userPOV',
'userView',
'userCreate',
'userEdit',
'userDelete',
'pengaturanAplikasiView',
'pengaturanAplikasiEdit',
'langgananView',
'langgananCreate',
'langgananEdit',
'langgananDelete',
'operatorView',
'operatorCreate',
'operatorEdit',
'operatorDelete',
'paketView',
'paketCreate',
'paketEdit',
'paketDelete',
];
foreach ($permissions as $permission) {
Permission::create(['name' => $permission]);
}
// roles
$admin = Role::create(['name' => 'admin']);
$permission = Permission::whereNotIn('name', ['userPOV'])->get();
$admin->givePermissionTo($permission);
$operator = Role::create(['name' => 'operator']);
$user = Role::create(['name' => 'user']);
$user_permission = Permission::where('name', 'userPOV')->first();
$user->givePermissionTo($user_permission);
// memberikan role
$adminUser = User::find(1);
if ($adminUser) {
$adminUser->assignRole('admin');
}
$operatorUser = User::find(2);
if ($operatorUser) {
$operatorUser->assignRole('operator');
}
$user = User::find(3);
if ($user) {
$user->assignRole('user');
}
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]