-- Completa la persistencia de los formatos A/B y del registro institucional
-- complementario del Libro de Registro de Incidencias 2026.
-- La migracion es aditiva e idempotente: no elimina ni transforma expedientes.

SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci;

ALTER TABLE tut_incidencia
    ADD COLUMN IF NOT EXISTS presunto_agresor_estudiante_iniciales VARCHAR(30) NULL
        AFTER afectado_condicion_relevante,
    ADD COLUMN IF NOT EXISTS presunto_agresor_estudiante_edad TINYINT UNSIGNED NULL
        AFTER presunto_agresor_estudiante_iniciales,
    ADD COLUMN IF NOT EXISTS presunto_agresor_estudiante_grado_seccion VARCHAR(120) NULL
        AFTER presunto_agresor_estudiante_edad,
    ADD COLUMN IF NOT EXISTS acciones_registradas_siseve TEXT NULL
        AFTER comunicacion_instancia_competente,
    ADD COLUMN IF NOT EXISTS observaciones_seguimiento_inicial TEXT NULL
        AFTER fecha_proximo_seguimiento;

CREATE TABLE IF NOT EXISTS tut_incidencia_complemento (
    id_incidencia_complemento BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
    id_incidencia INT UNSIGNED NOT NULL,
    numero_orden SMALLINT UNSIGNED NOT NULL,
    fecha DATE NOT NULL,
    hora TIME NULL,
    lugar VARCHAR(180) NULL,
    descripcion_objetiva TEXT NOT NULL,
    personas_involucradas TEXT NULL,
    testigos TEXT NULL,
    acciones_inmediatas TEXT NULL,
    medidas_adoptadas TEXT NULL,
    comunicacion_realizada TEXT NULL,
    seguimiento_previsto TEXT NULL,
    responsable_registro VARCHAR(220) NOT NULL,
    firma_referencia VARCHAR(300) NULL,
    id_usuario_creador INT UNSIGNED NULL,
    id_usuario_actualizador INT UNSIGNED NULL,
    creado_en TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    actualizado_en TIMESTAMP NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (id_incidencia_complemento),
    UNIQUE KEY uq_tut_incidencia_complemento_orden (id_incidencia, numero_orden),
    KEY idx_tut_incidencia_complemento_fecha (id_incidencia, fecha, hora),
    KEY idx_tut_incidencia_complemento_creador (id_usuario_creador),
    KEY idx_tut_incidencia_complemento_actualizador (id_usuario_actualizador),
    CONSTRAINT fk_tut_incidencia_complemento_incidencia FOREIGN KEY (id_incidencia)
        REFERENCES tut_incidencia (id_incidencia) ON UPDATE CASCADE ON DELETE CASCADE,
    CONSTRAINT fk_tut_incidencia_complemento_creador FOREIGN KEY (id_usuario_creador)
        REFERENCES usuario_sistema (id_usuario) ON UPDATE CASCADE ON DELETE SET NULL,
    CONSTRAINT fk_tut_incidencia_complemento_actualizador FOREIGN KEY (id_usuario_actualizador)
        REFERENCES usuario_sistema (id_usuario) ON UPDATE CASCADE ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
