-- ============================================================
-- hqsMEDIKAL — Consentimiento Informado
-- Migración: 050_informed_consent.sql
-- ============================================================
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ── Plantillas de consentimiento ─────────────────────────────
CREATE TABLE IF NOT EXISTS consent_templates (
    id               INT UNSIGNED    NOT NULL AUTO_INCREMENT,
    company_id       INT UNSIGNED    NOT NULL DEFAULT 0 COMMENT '0 = global (disponible para todas las empresas)',
    name             VARCHAR(200)    NOT NULL,
    category         VARCHAR(80)     NOT NULL DEFAULT 'general',
    content          TEXT            NOT NULL,
    requires_witness TINYINT(1)      NOT NULL DEFAULT 0,
    is_active        TINYINT(1)      NOT NULL DEFAULT 1,
    sort_order       SMALLINT        NOT NULL DEFAULT 0,
    created_by       INT UNSIGNED    DEFAULT NULL,
    created_at       DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_at       DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (id),
    INDEX idx_company  (company_id),
    INDEX idx_active   (is_active),
    INDEX idx_sort     (sort_order, name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
  COMMENT='Plantillas reutilizables de consentimiento informado';

-- ── Consentimientos firmados por paciente ─────────────────────
CREATE TABLE IF NOT EXISTS patient_consents (
    id                   INT UNSIGNED    NOT NULL AUTO_INCREMENT,
    company_id           INT UNSIGNED    NOT NULL,
    patient_id           INT UNSIGNED    NOT NULL,
    record_id            INT UNSIGNED    DEFAULT NULL COMMENT 'FK clinical_records',
    template_id          INT UNSIGNED    DEFAULT NULL COMMENT 'NULL si la plantilla fue eliminada',
    template_name_snap   VARCHAR(200)    NOT NULL,
    content_snap         TEXT            NOT NULL COMMENT 'Contenido al momento de la firma',
    patient_name_snap    VARCHAR(200)    NOT NULL,
    patient_id_number    VARCHAR(30)     DEFAULT NULL,
    physician_id         INT UNSIGNED    DEFAULT NULL,
    physician_name_snap  VARCHAR(200)    DEFAULT NULL,
    witnessed_by         VARCHAR(200)    DEFAULT NULL,
    notes                TEXT            DEFAULT NULL,
    signed_at            DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP,
    is_voided            TINYINT(1)      NOT NULL DEFAULT 0,
    voided_reason        TEXT            DEFAULT NULL,
    voided_at            DATETIME        DEFAULT NULL,
    voided_by            INT UNSIGNED    DEFAULT NULL,
    created_by           INT UNSIGNED    NOT NULL,
    created_at           DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id),
    INDEX idx_company_patient (company_id, patient_id),
    INDEX idx_record          (record_id),
    INDEX idx_signed_at       (signed_at),
    CONSTRAINT fk_pcon_patient   FOREIGN KEY (patient_id)   REFERENCES patients(id)           ON DELETE RESTRICT,
    CONSTRAINT fk_pcon_record    FOREIGN KEY (record_id)    REFERENCES clinical_records(id)    ON DELETE SET NULL,
    CONSTRAINT fk_pcon_template  FOREIGN KEY (template_id)  REFERENCES consent_templates(id)  ON DELETE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
  COMMENT='Consentimientos informados firmados por paciente';

-- ── Plantillas globales predeterminadas (neurología) ─────────
-- company_id = 0 → disponibles en todas las empresas

INSERT IGNORE INTO consent_templates
    (company_id, name, category, content, requires_witness, sort_order)
VALUES
(0,
 'Consentimiento General para Atención Médica',
 'general',
'Yo, el/la paciente (o su representante legal), por medio del presente documento doy mi consentimiento libre, voluntario e informado para recibir atención médica en esta institución.

Declaro haber sido informado/a de manera clara y comprensible sobre:
• Mi diagnóstico o condición médica actual.
• El plan de tratamiento propuesto, incluyendo sus objetivos y procedimientos.
• Los beneficios esperados del tratamiento.
• Los riesgos posibles, complicaciones y efectos secundarios.
• Las alternativas disponibles de tratamiento.
• Las consecuencias de no seguir el tratamiento recomendado.

Entiendo que tengo el derecho de realizar preguntas en cualquier momento, de retirar este consentimiento en cualquier etapa del tratamiento (excepto cuando su interrupción pueda poner en riesgo mi vida), y de recibir una copia de este documento.

Autorizo al equipo médico de esta institución a realizar el tratamiento descrito y los procedimientos necesarios para mi atención.',
0, 1),

(0,
 'Consentimiento para Tratamiento con Anticonvulsivantes',
 'neurologia',
'Yo, el/la paciente (o su representante legal), doy mi consentimiento para iniciar tratamiento farmacológico con medicamentos anticonvulsivantes.

Se me ha informado que:
• El tratamiento tiene como objetivo controlar o reducir las crisis epilépticas y mejorar mi calidad de vida.
• Los medicamentos anticonvulsivantes requieren toma regular y continua; suspender el tratamiento abruptamente puede desencadenar crisis graves (status epilepticus).
• Los efectos secundarios más frecuentes pueden incluir somnolencia, mareos, náuseas, alteraciones del ánimo, cambios de peso y reacciones en la piel. Algunos medicamentos requieren monitoreo de niveles séricos y función hepática/renal.
• Debo informar al médico de inmediato ante cualquier reacción adversa, aparición de rash cutáneo, ictericia, ideas suicidas u otros síntomas inusuales.
• Durante el tratamiento debo evitar el alcohol y consultar antes de tomar cualquier otro medicamento por posibles interacciones.
• En mujeres en edad fértil, algunos anticonvulsivantes pueden afectar la eficacia de métodos anticonceptivos y representar riesgos en el embarazo.

Acepto seguir las indicaciones médicas, asistir a los controles programados y realizar los exámenes de laboratorio solicitados.',
1, 2),

(0,
 'Consentimiento para Electroencefalograma (EEG)',
 'neurologia',
'Yo, el/la paciente (o su representante legal), doy mi consentimiento para la realización del Electroencefalograma (EEG).

Se me ha explicado que:
• El EEG es un estudio no invasivo que registra la actividad eléctrica del cerebro mediante electrodos colocados en el cuero cabelludo con gel conductor. No produce descargas eléctricas ni dolor.
• El procedimiento dura aproximadamente 30 a 60 minutos. En algunos casos puede requerirse un EEG prolongado o de sueño.
• Durante el estudio se pueden realizar maniobras de activación como hiperventilación o estimulación luminosa intermitente (fotoestimulación), las cuales tienen un riesgo muy bajo de provocar una crisis en personas susceptibles.
• El resultado será interpretado por el médico especialista y me será explicado en la próxima consulta.
• El estudio no conlleva radiación, contraste ni procedimientos invasivos.

Autorizo la realización del Electroencefalograma y los procedimientos de activación que el médico considere necesarios.',
0, 3),

(0,
 'Consentimiento para Electroneuromiografía (ENMG)',
 'neurologia',
'Yo, el/la paciente (o su representante legal), doy mi consentimiento para la realización del estudio de Electroneuromiografía (ENMG), que comprende la Electromiografía (EMG) y/o los Estudios de Conducción Nerviosa (NCS).

Se me ha explicado que:
• Los Estudios de Conducción Nerviosa consisten en aplicar pequeños estímulos eléctricos en la piel para medir la velocidad de conducción de los nervios. Puede sentirse una leve molestia o cosquilleo.
• La Electromiografía consiste en introducir agujas finas (electrodos de aguja) en diferentes músculos para registrar su actividad eléctrica. El procedimiento puede causar molestia leve o moderada durante la inserción.
• Los riesgos son mínimos: leve hematoma o sangrado en los sitios de inserción; riesgo de infección muy bajo con las medidas de asepsia estándar.
• Pacientes con marcapasos, trastornos de coagulación o anticoagulación deben comunicarlo al médico antes del estudio.
• Los resultados serán entregados e interpretados por el médico especialista.

Autorizo la realización del estudio de ENMG incluyendo la EMG con electrodos de aguja si fuera necesario.',
0, 4),

(0,
 'Consentimiento para Procedimiento Diagnóstico o Terapéutico',
 'procedimiento',
'Yo, el/la paciente (o su representante legal), doy mi consentimiento para el procedimiento médico indicado por el médico tratante.

Declaro haber sido informado/a sobre:
• La naturaleza, objetivos y descripción del procedimiento a realizarse.
• Los beneficios esperados y las posibles alternativas.
• Los riesgos inherentes al procedimiento: sangrado, infección, reacciones adversas a medicamentos o anestesia, complicaciones específicas del procedimiento y aquellas que, siendo poco frecuentes, puedan ser graves.
• La posibilidad de que durante el procedimiento se encuentren hallazgos que requieran modificar la planificación inicial.

Autorizo al médico tratante y al equipo de salud a realizar el procedimiento descrito, así como las maniobras adicionales que sean médicamente necesarias para mi bienestar durante su ejecución.',
1, 5);

SET FOREIGN_KEY_CHECKS = 1;
