-- Rol de Calidad: consulta de turnos y tiempos de atención.
-- Solo lectura, y dentro del turnero solo dashboard e historial.
-- Incluye formularios: la coordinación del SIG administra los documentos
-- además de revisar los tiempos del proceso.
-- Idempotente: puede correrse más de una vez.

INSERT INTO roles (name, slug, description, color, home_page, is_system)
SELECT 'Calidad', 'calidad',
       'Consulta de turnos y tiempos de atención. Solo lectura: dashboard e historial.',
       '#7c3aed', '/erp.php?m=turnero&v=dashboard', 0
 WHERE NOT EXISTS (SELECT 1 FROM roles WHERE slug = 'calidad');

INSERT INTO role_modules (role_id, module_slug, permission, can_view, can_create, can_edit, can_delete, can_export)
SELECT r.id, m.slug, 'read', 1, 0, 0, 0, IF(m.slug = 'turnero', 1, 0)
  FROM roles r
  JOIN (SELECT 'turnero' AS slug UNION ALL SELECT 'soporte'
        UNION ALL SELECT 'lab_formularios') m
 WHERE r.slug = 'calidad'
   AND NOT EXISTS (
       SELECT 1 FROM role_modules rm WHERE rm.role_id = r.id AND rm.module_slug = m.slug
   );
