up
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
-- ============================================================
|
||||
-- Migration: 20260302_lab_04_domicilios
|
||||
-- Módulo Administrativo: Servicios a domicilio
|
||||
-- ============================================================
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `lab_domicilios` (
|
||||
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
||||
`orden_id` INT(11) DEFAULT NULL COMMENT 'FK a lab_ordenes_medicas.id',
|
||||
`paciente_id` INT(11) NOT NULL COMMENT 'FK a lab_pacientes.id',
|
||||
-- Datos del domicilio
|
||||
`direccion` TEXT NOT NULL,
|
||||
`ciudad` VARCHAR(100) DEFAULT NULL,
|
||||
`barrio` VARCHAR(100) DEFAULT NULL,
|
||||
`indicaciones_dir` TEXT DEFAULT NULL COMMENT 'Referencia de la dirección',
|
||||
`fecha_programada` DATE NOT NULL,
|
||||
`hora_programada` TIME DEFAULT NULL,
|
||||
`tipo_servicio` VARCHAR(100) DEFAULT NULL COMMENT 'Tipo de toma de muestra',
|
||||
-- Estado del domicilio
|
||||
`estado` ENUM(
|
||||
'programado',
|
||||
'confirmado',
|
||||
'en_camino',
|
||||
'en_domicilio',
|
||||
'completado',
|
||||
'cancelado',
|
||||
'reprogramado'
|
||||
) NOT NULL DEFAULT 'programado',
|
||||
`motivo_cancelacion` TEXT DEFAULT NULL,
|
||||
`fecha_reprogramada` DATE DEFAULT NULL,
|
||||
-- Resultados
|
||||
`hora_llegada` TIME DEFAULT NULL,
|
||||
`hora_salida` TIME DEFAULT NULL,
|
||||
`observaciones` TEXT DEFAULT NULL,
|
||||
`muestras_tomadas` TEXT DEFAULT NULL COMMENT 'Lista de muestras obtenidas',
|
||||
-- Gestión
|
||||
`creado_por` INT(11) DEFAULT NULL COMMENT 'FK a admin_users.id',
|
||||
`notas_admin` TEXT DEFAULT NULL,
|
||||
`created_at` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_dom_orden` (`orden_id`),
|
||||
KEY `idx_dom_paciente` (`paciente_id`),
|
||||
KEY `idx_dom_fecha` (`fecha_programada`),
|
||||
KEY `idx_dom_estado` (`estado`),
|
||||
KEY `idx_dom_creado` (`creado_por`),
|
||||
CONSTRAINT `fk_dom_orden` FOREIGN KEY (`orden_id`)
|
||||
REFERENCES `lab_ordenes_medicas` (`id`) ON DELETE SET NULL,
|
||||
CONSTRAINT `fk_dom_paciente` FOREIGN KEY (`paciente_id`)
|
||||
REFERENCES `lab_pacientes` (`id`) ON DELETE RESTRICT,
|
||||
CONSTRAINT `fk_dom_creado` FOREIGN KEY (`creado_por`)
|
||||
REFERENCES `admin_users` (`id`) ON DELETE SET NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
||||
COMMENT='Servicios a domicilio programados';
|
||||
Reference in New Issue
Block a user