35 lines
1.8 KiB
SQL
35 lines
1.8 KiB
SQL
-- ============================================================
|
|
-- Migration: 20260302_lab_06_autorizaciones
|
|
-- Módulo Administrativo: Log de cambios de estado de órdenes
|
|
-- Cada cambio de estado genera un registro aquí (trazabilidad)
|
|
-- ============================================================
|
|
|
|
CREATE TABLE IF NOT EXISTS `lab_autorizaciones` (
|
|
`id` INT(11) NOT NULL AUTO_INCREMENT,
|
|
`orden_id` INT(11) NOT NULL COMMENT 'FK a lab_ordenes_medicas.id',
|
|
`accion` ENUM(
|
|
'creada',
|
|
'en_revision',
|
|
'autorizada',
|
|
'rechazada',
|
|
'en_domicilio',
|
|
'completada',
|
|
'editada'
|
|
) NOT NULL,
|
|
`estado_anterior` VARCHAR(50) DEFAULT NULL,
|
|
`estado_nuevo` VARCHAR(50) DEFAULT NULL,
|
|
`realizada_por` INT(11) DEFAULT NULL COMMENT 'FK a admin_users.id',
|
|
`comentario` TEXT DEFAULT NULL,
|
|
`created_at` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
KEY `idx_aut_orden` (`orden_id`),
|
|
KEY `idx_aut_admin` (`realizada_por`),
|
|
KEY `idx_aut_accion` (`accion`),
|
|
KEY `idx_aut_fecha` (`created_at`),
|
|
CONSTRAINT `fk_aut_orden` FOREIGN KEY (`orden_id`)
|
|
REFERENCES `lab_ordenes_medicas` (`id`) ON DELETE CASCADE,
|
|
CONSTRAINT `fk_aut_admin` FOREIGN KEY (`realizada_por`)
|
|
REFERENCES `admin_users` (`id`) ON DELETE SET NULL
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
|
|
COMMENT='Historial de cambios de estado de órdenes médicas';
|