29 lines
2.1 KiB
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';
|