- Added `priority`-based access logic to restrict role and user management actions. - Introduced `Permission Manager` UI and routes for permission access control. - Updated `RoleService` and `AppRoleService` to include `visible` scope for priority filtering. - Enhanced seeding to assign priorities to default roles and ensure proper hierarchy. - Updated sidebar, routes, and data structure to handle new permission enums and resource segmentation. - Improved UI components to dynamically restrict visibility and actions based on role priority.
24 lines
579 B
PHP
24 lines
579 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use App\Helpers\EnumExtractor;
|
|
use Illuminate\Database\Seeder;
|
|
use Spatie\Permission\Models\Permission;
|
|
|
|
class PermissionSeeder extends Seeder
|
|
{
|
|
public function run(): void
|
|
{
|
|
$enumExtractor = new EnumExtractor('App\\Enums\\Permissions', __DIR__.'/../../app/Enums/Permissions');
|
|
$allEnums = $enumExtractor->extract();
|
|
foreach ($allEnums as $enumCases) {
|
|
foreach ($enumCases as $case) {
|
|
Permission::findOrCreate($case->value);
|
|
}
|
|
}
|
|
}
|
|
}
|