-- Migration Phase 2 (Fixed)

-- 1. Create Normas table
CREATE TABLE IF NOT EXISTS normas (
  id INT AUTO_INCREMENT PRIMARY KEY,
  titulo VARCHAR(255) NOT NULL,
  tipo VARCHAR(50) NOT NULL, -- Ley, Reglamento, Resolución
  emisor VARCHAR(100) NOT NULL, -- JNE, ONPE, Congreso
  fecha_publicacion DATE NOT NULL,
  resumen TEXT NULL,
  url_pdf VARCHAR(255) NULL,
  url_elperuano VARCHAR(255) NULL,
  tags VARCHAR(255) NULL, -- CSV
  vigente BOOLEAN DEFAULT 1,
  fecha_creacion TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 2. Clean Recreate of configuracion_cargos
-- Avoids FK issues by dropping the table entirely.
DROP TABLE IF EXISTS configuracion_cargos;

CREATE TABLE configuracion_cargos (
  id INT AUTO_INCREMENT PRIMARY KEY,
  tipo_eleccion ENUM('municipal_provincial', 'municipal_distrital', 'regional') NOT NULL,
  ubigeo CHAR(6) NOT NULL, -- Can be 2, 4, or 6 chars
  num_regidores INT NULL,
  num_consejeros INT NULL,
  fuente_normativa TEXT NULL,
  url_normativa TEXT NULL,
  fecha_actualizacion TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  notas TEXT NULL,
  UNIQUE KEY `uniq_ubigeo` (tipo_eleccion, ubigeo)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- 3. Settings Update
-- Ensure closure date key exists
INSERT IGNORE INTO settings (key_name, value_text) VALUES 
('fecha_cierre_inscripcion', '2026-06-14');
