-- ============================================================
--  Suite Educativa Integral SaaS
--  Activa el modulo "Mantenimiento" en una base de datos ya creada.
--  Ejecutar una sola vez sobre: suite_saas_educacion_integral
-- ============================================================

USE suite_saas_educacion_integral;

-- 1) Registrar el modulo en el catalogo (si no existe)
INSERT INTO modulos (nombre, slug, icono, grupo, orden, nucleo, descripcion, created_at, updated_at)
SELECT 'Mantenimiento', 'mantenimiento', 'shield', 'Sistema', 91, 1,
       'Copia de seguridad, restauracion y reseteo de datos.', NOW(), NOW()
WHERE NOT EXISTS (SELECT 1 FROM modulos WHERE slug = 'mantenimiento');

-- 2) Activarlo para todas las instituciones existentes
INSERT INTO empresa_modulo (empresa_id, modulo_id, activo, created_at, updated_at)
SELECT e.id, m.id, 1, NOW(), NOW()
FROM empresas e
CROSS JOIN modulos m
WHERE m.slug = 'mantenimiento'
  AND NOT EXISTS (
      SELECT 1 FROM empresa_modulo em
      WHERE em.empresa_id = e.id AND em.modulo_id = m.id
  );

-- 3) Verificacion
SELECT e.nombre AS institucion, m.nombre AS modulo, em.activo
FROM empresa_modulo em
JOIN empresas e ON e.id = em.empresa_id
JOIN modulos  m ON m.id = em.modulo_id
WHERE m.slug = 'mantenimiento';
