-- =====================================================================
-- Multi-empleado / multi-sucursal por usuario de sistema
-- Plan: elegant-rolling-engelbart.md (v2)
--
-- Un usuario (cat_usuario_sistema) puede vincularse a N empleados.
-- cat_usuario_sistema.id_empleado se conserva y pasa a significar
-- "empleado activo ahora mismo" (lo que login.php pasa a Loguearse).
-- Correr en LOCAL y en PRODUCCION.
-- =====================================================================

CREATE TABLE IF NOT EXISTS cat_usuario_empleado (
  id          INT AUTO_INCREMENT PRIMARY KEY,
  id_usuario  INT NOT NULL,
  id_empleado INT NOT NULL,
  UNIQUE KEY uq_usuario_empleado (id_usuario, id_empleado),
  KEY idx_usuario (id_usuario),
  KEY idx_empleado (id_empleado)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- Migracion: cada usuario que hoy tiene un empleado vinculado
-- queda con exactamente esa sucursal (comportamiento identico al actual).
INSERT IGNORE INTO cat_usuario_empleado (id_usuario, id_empleado)
SELECT id, id_empleado
FROM cat_usuario_sistema
WHERE id_empleado IS NOT NULL AND id_empleado > 0;
