diff --git a/app/Http/Controllers/RoleController.php b/app/Http/Controllers/RoleController.php new file mode 100644 index 0000000..7c4bc70 --- /dev/null +++ b/app/Http/Controllers/RoleController.php @@ -0,0 +1,84 @@ +create(); + + $this->call([UserRolePermissionSeeder::class]); } } diff --git a/database/seeders/UserRolePermissionSeeder.php b/database/seeders/UserRolePermissionSeeder.php new file mode 100644 index 0000000..12b2592 --- /dev/null +++ b/database/seeders/UserRolePermissionSeeder.php @@ -0,0 +1,62 @@ + now(), + 'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password + 'remember_token' => Str::random(10), + ]; + + DB::beginTransaction(); + try { + //code... + + $admin = User::create(array_merge([ + 'email' => 'admin@gmail.com', + 'name' => 'admin', + ], $default_user_value)); + + $staff = User::create(array_merge([ + 'email' => 'staff@gmail.com', + 'name' => 'staff', + ], $default_user_value)); + + $role_admin = Role::create(['name' => 'admin']); + $role_staff = Role::create(['name' => 'staff']); + + $permission = Permission::create(['name' => 'read role']); + $permission = Permission::create(['name' => 'create role']); + $permission = Permission::create(['name' => 'update role']); + $permission = Permission::create(['name' => 'delete role']); + + $role_admin->givePermissionTo('read role'); + $role_admin->givePermissionTo('create role'); + $role_admin->givePermissionTo('update role'); + $role_admin->givePermissionTo('delete role'); + + $admin->assignRole('admin'); + $staff->assignRole('staff'); + + DB::commit(); + } catch (\Throwable $th) { + DB::rollback(); + } + } +} diff --git a/routes/web.php b/routes/web.php index 9e0ed8a..5a04d43 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,5 +1,6 @@ middleware(['auth'])->name('dashboard'); require __DIR__ . '/auth.php'; + + +// Route::resource('roles',RoleController::class); +Route::controller(RoleController::class)->group(function () { + Route::get('/roles', 'index'); +});