Files
project.linkedcorp.net/backend/database/migrations/030_user_modules.sql
T
Milton Gonzalez 4056c70d90 feat: version 3.1.0 -- Acceso por modulo y por usuario
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 14:14:01 -05:00

13 lines
733 B
SQL

-- Acceso por modulo y por usuario (fase 2). Sin fila = modulo habilitado (comportamiento previo);
-- el superadmin guarda aqui las excepciones. Lo gestiona solo superadmin. Idempotente.
CREATE TABLE IF NOT EXISTS user_modules (
user_id INT NOT NULL,
module VARCHAR(40) NOT NULL,
enabled TINYINT(1) NOT NULL DEFAULT 1,
updated_by INT NULL,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (user_id, module),
CONSTRAINT fk_user_modules_user FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
CONSTRAINT fk_user_modules_updater FOREIGN KEY (updated_by) REFERENCES users(id) ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;