Files
whatsapp/migrations/20260325_lab_12_domicilio_notas.sql

29 lines
2.1 KiB
SQL

-- Migración: Sistema de notas clínicas por domicilio
-- Permite al enfermero registrar:
-- · Una ficha clínica (antecedentes, medicamentos, acudiente si es menor)
-- · N notas libres adicionales con título, texto enriquecido e imagen adjunta
CREATE TABLE IF NOT EXISTS `lab_domicilio_notas` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`domicilio_id` INT(11) NOT NULL COMMENT 'FK lab_domicilios.id',
`enfermera_id` INT(11) NOT NULL COMMENT 'FK lab_enfermeras.id — quien registró',
`tipo` ENUM('clinica','libre') NOT NULL DEFAULT 'libre',
-- Campos exclusivos de tipo='clinica'
`antecedentes` TEXT DEFAULT NULL COMMENT 'Antecedentes clínicos del paciente',
`medicamentos` TEXT DEFAULT NULL COMMENT 'Medicamentos actuales del paciente',
`acudiente_nombre` VARCHAR(200) DEFAULT NULL COMMENT 'Nombre del acudiente (obligatorio si es menor)',
`acudiente_documento` VARCHAR(50) DEFAULT NULL COMMENT 'Documento del acudiente',
-- Campos exclusivos de tipo='libre'
`titulo` VARCHAR(200) DEFAULT NULL COMMENT 'Título de la nota libre',
`cuerpo` TEXT DEFAULT NULL COMMENT 'Cuerpo de la nota (HTML básico desde contenteditable)',
`imagen_path` VARCHAR(300) DEFAULT NULL COMMENT 'Nombre del archivo de imagen en uploads/media/',
-- Timestamps
`created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `idx_notas_domicilio` (`domicilio_id`),
KEY `idx_notas_enfermera` (`enfermera_id`),
KEY `idx_notas_tipo` (`domicilio_id`, `tipo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
COMMENT='Notas clínicas y libres registradas por enfermeros durante un servicio de domicilio';