refactor: permisos y roles

This commit is contained in:
Juan Felipe Zapata Moreno 2026-01-20 12:44:08 -06:00
parent 6d27b9a818
commit 6106afbecf

View File

@ -28,7 +28,7 @@ class RoleSeeder extends Seeder
*/ */
public function run(): void public function run(): void
{ {
$users = PermissionType::create([ $users = PermissionType::firstOrCreate([
'name' => 'Usuarios' 'name' => 'Usuarios'
]); ]);
@ -42,7 +42,7 @@ public function run(): void
$userSettings = $this->onPermission('users.settings', 'Configuración de usuarios', $users, 'api'); $userSettings = $this->onPermission('users.settings', 'Configuración de usuarios', $users, 'api');
$userOnline = $this->onPermission('users.online', 'Usuarios en linea', $users, 'api'); $userOnline = $this->onPermission('users.online', 'Usuarios en linea', $users, 'api');
$roles = PermissionType::create([ $roles = PermissionType::firstOrCreate([
'name' => 'Roles' 'name' => 'Roles'
]); ]);
@ -53,13 +53,13 @@ public function run(): void
$roleDestroy $roleDestroy
] = $this->onCRUD('roles', $roles, 'api'); ] = $this->onCRUD('roles', $roles, 'api');
$pulse = PermissionType::create([ $pulse = PermissionType::firstOrCreate([
'name' => 'Sistema' 'name' => 'Sistema'
]); ]);
$systemPulse = $this->onPermission('pulse', 'Monitoreo de Pulse', $pulse, 'api'); $systemPulse = $this->onPermission('pulse', 'Monitoreo de Pulse', $pulse, 'api');
$pulse = PermissionType::create([ $pulse = PermissionType::firstOrCreate([
'name' => 'Historial de actividades' 'name' => 'Historial de actividades'
]); ]);
@ -70,7 +70,7 @@ public function run(): void
); );
$modules = PermissionType::create([ // Modulos $modules = PermissionType::firstOrCreate([ // Modulos
'name' => 'Módulos' 'name' => 'Módulos'
]); ]);
@ -88,7 +88,7 @@ public function run(): void
'api' 'api'
); );
$devices = PermissionType::create([ //Dispositivos $devices = PermissionType::firstOrCreate([ //Dispositivos
'name' => 'Dispositivos' 'name' => 'Dispositivos'
]); ]);
@ -99,7 +99,7 @@ public function run(): void
$deviceDestroy $deviceDestroy
] = $this->onCRUD('devices', $devices, 'api'); ] = $this->onCRUD('devices', $devices, 'api');
$inscriptions = PermissionType::create([ // Inscripciones de vehículos $inscriptions = PermissionType::firstOrCreate([ // Inscripciones de vehículos
'name' => 'Inscripciones' 'name' => 'Inscripciones'
]); ]);
@ -124,7 +124,7 @@ public function run(): void
'api' 'api'
); );
$cancellations = PermissionType::create([ $cancellations = PermissionType::firstOrCreate([
'name' => 'Cancelaciones' 'name' => 'Cancelaciones'
]); ]);
@ -135,7 +135,7 @@ public function run(): void
'api' 'api'
); );
$updates = PermissionType::create([ $updates = PermissionType::firstOrCreate([
'name' => 'Actualizaciones' 'name' => 'Actualizaciones'
]); ]);
@ -153,7 +153,7 @@ public function run(): void
'api' 'api'
); );
$records = PermissionType::create([ $records = PermissionType::firstOrCreate([
'name' => 'Expedientes' 'name' => 'Expedientes'
]); ]);
@ -185,7 +185,7 @@ public function run(): void
'api' 'api'
); );
$packages = PermissionType::create([ $packages = PermissionType::firstOrCreate([
'name' => 'Paquetes' 'name' => 'Paquetes'
]); ]);
@ -196,17 +196,10 @@ public function run(): void
$packageDestroy $packageDestroy
] = $this->onCRUD('packages', $packages, 'api'); ] = $this->onCRUD('packages', $packages, 'api');
$tags = PermissionType::create([ $tags = PermissionType::firstOrCreate([
'name' => 'Etiquetas' 'name' => 'Etiquetas'
]); ]);
$tagAssignToModule = $this->onPermission(
'tags.assign-to-module',
'Asignar etiquetas a módulo',
$tags,
'api'
);
[ [
$tagIndex, $tagIndex,
$tagCreate, $tagCreate,
@ -214,6 +207,12 @@ public function run(): void
$tagDestroy, $tagDestroy,
] = $this->onCRUD('tags', $tags, 'api'); ] = $this->onCRUD('tags', $tags, 'api');
$tagAssignToModule = $this->onPermission(
'tags.assign-to-module',
'Asignar etiquetas a módulo',
$tags,
'api'
);
// Desarrollador // Desarrollador
@ -221,14 +220,14 @@ public function run(): void
'name' => 'developer', 'name' => 'developer',
'description' => 'Desarrollador', 'description' => 'Desarrollador',
'guard_name' => 'api' 'guard_name' => 'api'
])->givePermissionTo(Permission::all()); ])->syncPermissions(Permission::all());
// Administrador // Administrador
Role::updateOrCreate([ Role::updateOrCreate([
'name' => 'admin', 'name' => 'admin',
'description' => 'Administrador', 'description' => 'Administrador',
'guard_name' => 'api' 'guard_name' => 'api'
])->givePermissionTo( ])->syncPermissions(
$userIndex, $userIndex,
$userCreate, $userCreate,
$userEdit, $userEdit,
@ -277,7 +276,7 @@ public function run(): void
'name' => 'encargado', 'name' => 'encargado',
'description' => 'Encargado', 'description' => 'Encargado',
'guard_name' => 'api' 'guard_name' => 'api'
])->givePermissionTo( ])->syncPermissions(
$userIndex, $userIndex,
$userOnline, $userOnline,
$roleIndex, $roleIndex,
@ -314,7 +313,7 @@ public function run(): void
'name' => 'capturista', 'name' => 'capturista',
'description' => 'Capturista', 'description' => 'Capturista',
'guard_name' => 'api' 'guard_name' => 'api'
])->givePermissionTo( ])->syncPermissions(
$userIndex, $userIndex,
$inscriptionVehicle, //Inscripcion de vehículos $inscriptionVehicle, //Inscripcion de vehículos
$inscriptionSearch, $inscriptionSearch,
@ -328,7 +327,7 @@ public function run(): void
'name' => 'perito', 'name' => 'perito',
'description' => 'Perito', 'description' => 'Perito',
'guard_name' => 'api' 'guard_name' => 'api'
])->givePermissionTo( ])->syncPermissions(
$userIndex, $userIndex,
$inscriptionVehicle, //Inscripcion de vehículos $inscriptionVehicle, //Inscripcion de vehículos
$inscriptionSearch, $inscriptionSearch,