feat(authorization): establish many-to-many relationship between roles and menus, add migration and seeder updates

This commit is contained in:
2026-07-30 16:54:25 -03:00
parent d56d387933
commit a20b1713d3
8 changed files with 163 additions and 2 deletions

View File

@@ -2,6 +2,7 @@
namespace Database\Seeders;
use App\Domains\Authorization\Models\Role;
use App\Domains\Menu\Models\Menu;
use App\Domains\Tenant\Models\Tenant;
use Illuminate\Database\Seeder;
@@ -133,6 +134,19 @@ class MenuSeeder extends Seeder
->whereIn('code', ['profile', 'purchases', 'tickets'])
->delete();
$allRoleMenuCodes = Menu::query()->pluck('code');
$userMenuCodes = Menu::query()
->where('code', 'not like', 'admin.%')
->pluck('code');
Role::query()
->whereIn('codigo', ['admin', 'adminapp'])
->each(fn (Role $role) => $role->menus()->sync($allRoleMenuCodes));
Role::query()
->where('codigo', 'user')
->each(fn (Role $role) => $role->menus()->sync($userMenuCodes));
$tenants = Tenant::all();
$allMenus = Menu::pluck('code')->toArray();