-- ============================================================================= -- Migración 001 — RBAC expandido -- Agrega columnas de permisos granulares a role_modules. -- Proyecto: WhatsApp ERP Multi-módulo -- Fecha: 2026-04-16 -- IMPORTANTE: Migración ADITIVA. No elimina ni renombra columnas existentes. -- ============================================================================= -- Ampliar table role_modules con permisos por acción ALTER TABLE role_modules ADD COLUMN IF NOT EXISTS can_view TINYINT(1) NOT NULL DEFAULT 1 COMMENT 'Puede ver el módulo', ADD COLUMN IF NOT EXISTS can_create TINYINT(1) NOT NULL DEFAULT 0 COMMENT 'Puede crear registros', ADD COLUMN IF NOT EXISTS can_edit TINYINT(1) NOT NULL DEFAULT 0 COMMENT 'Puede editar registros', ADD COLUMN IF NOT EXISTS can_delete TINYINT(1) NOT NULL DEFAULT 0 COMMENT 'Puede eliminar registros', ADD COLUMN IF NOT EXISTS can_export TINYINT(1) NOT NULL DEFAULT 0 COMMENT 'Puede exportar datos', ADD COLUMN IF NOT EXISTS extra_json JSON NULL COMMENT 'Permisos extras específicos del módulo (JSON)'; -- Retrocompatibilidad: los registros existentes con permission='write' reciben can_create/edit/delete = 1 UPDATE role_modules SET can_create = 1, can_edit = 1, can_delete = 1, can_export = 1 WHERE permission = 'write' OR permission IS NULL; -- Los que tienen permission='read' solo tienen can_view = 1 (ya es el DEFAULT, no tocar)