<?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
    }
}
