45 lines
1.2 KiB
PHP
45 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use Illuminate\Database\Seeder;
|
|
use Spatie\Permission\Models\Role;
|
|
use Spatie\Permission\Models\Permission;
|
|
|
|
class CrudPermissionSeeder extends Seeder
|
|
{
|
|
public function run()
|
|
{
|
|
// Crear permisos
|
|
$permissions = [
|
|
'ver administracion',
|
|
'ver usuarios',
|
|
'ver roles',
|
|
'ver ajustes',
|
|
'ver inventario',
|
|
'ver colores',
|
|
'ver productos',
|
|
'ver sizes',
|
|
'ver variantes de productos',
|
|
];
|
|
|
|
foreach ($permissions as $permission) {
|
|
Permission::firstOrCreate(['name' => $permission, 'guard_name' => 'web']);
|
|
}
|
|
|
|
// Crear roles
|
|
$adminRole = Role::firstOrCreate(['name' => 'Administrador']);
|
|
$userRole = Role::firstOrCreate(['name' => 'Usuario']);
|
|
|
|
// Asignar permisos a roles
|
|
$adminRole->givePermissionTo($permissions); // Admin puede ver todo
|
|
$userRole->givePermissionTo([
|
|
'ver inventario',
|
|
'ver colores',
|
|
'ver productos',
|
|
'ver sizes',
|
|
'ver variantes de productos',
|
|
]); // Usuario solo puede ver Inventario
|
|
}
|
|
}
|