# US-MAI004-004: Validar compatibilidad de recursos **ID:** US-MAI004-004 **Módulo:** MAI-004 (Planeación TMS) **Prioridad:** Alta **Story Points:** 5 --- ## Historia de Usuario **Como** planner de tráfico **Quiero** que el sistema valide automáticamente que los recursos cumplen todos los requisitos **Para** evitar asignar operadores o unidades que no están calificados para el servicio --- ## Criterios de Aceptación ### CA-001: Validación de operador **Dado** que asigno un operador **Cuando** el sistema valida **Entonces** verifica: licencia vigente, certificaciones requeridas, HOS disponibles, no en lista negra del cliente ### CA-002: Validación de unidad **Dado** que asigno una unidad **Cuando** el sistema valida **Entonces** verifica: documentos vigentes, cumple requisitos del cliente (GPS, antigüedad), tipo equipo correcto ### CA-003: Bloqueo por incumplimiento **Dado** que un recurso no cumple validación obligatoria **Cuando** intento confirmar asignación **Entonces** el sistema bloquea y muestra el motivo específico ### CA-004: Advertencia **Dado** que un recurso cumple pero con observaciones **Cuando** intento confirmar **Entonces** el sistema muestra advertencia pero permite continuar ### CA-005: Override con autorización **Dado** que necesito asignar un recurso que no cumple **Cuando** un supervisor autoriza el override **Entonces** se permite la asignación con registro de justificación --- ## Mockup / UI ``` ┌─────────────────────────────────────────────────────────────────┐ │ VALIDACIÓN DE RECURSOS │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ OPERADOR: Juan Pérez García │ │ ├─ ✓ Licencia Federal A vigente hasta 2027-05-15 │ │ ├─ ✓ Certificación materiales peligrosos │ │ ├─ ✓ HOS disponibles: 11 hrs (requerido: 8 hrs) │ │ └─ ✓ No está en lista negra del cliente │ │ │ │ UNIDAD: U-005 Kenworth T680 │ │ ├─ ✓ Verificación vigente hasta 2026-06-30 │ │ ├─ ✓ Seguro vigente hasta 2026-12-31 │ │ ├─ ✓ Permiso SCT vigente │ │ ├─ ✓ GPS instalado y activo │ │ └─ ⚠ Antigüedad: 6 años (cliente pide <5 años) │ │ │ │ ───────────────────────────────────────────────────────────── │ │ │ │ ⚠ 1 ADVERTENCIA ENCONTRADA │ │ │ │ La unidad excede la antigüedad requerida por el cliente. │ │ Puede continuar pero se registrará como excepción. │ │ │ │ [Cancelar] [Solicitar Override] [Continuar con Advertencia] │ │ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## Catálogo de Validaciones | Código | Validación | Tipo | Aplica a | |--------|------------|------|----------| | VAL-001 | Licencia vigente | Bloqueante | Operador | | VAL-002 | Certificación requerida | Bloqueante | Operador | | VAL-003 | HOS suficientes | Bloqueante | Operador | | VAL-004 | Lista negra cliente | Bloqueante | Operador | | VAL-005 | Documentos unidad | Bloqueante | Unidad | | VAL-006 | GPS activo | Bloqueante | Unidad | | VAL-007 | Antigüedad máxima | Advertencia | Unidad | | VAL-008 | Tipo equipo correcto | Bloqueante | Unidad | --- ## Notas Técnicas - Las reglas se almacenan en `requisitos_cliente` y `reglas_asignacion` - El override requiere rol de supervisor - Todos los overrides se registran en auditoría - Las validaciones se ejecutan en tiempo real --- ## Definición de Done - [ ] Validaciones de operador implementadas - [ ] Validaciones de unidad implementadas - [ ] UI de resultado de validaciones - [ ] Bloqueo por incumplimiento - [ ] Flujo de override con supervisor - [ ] Registro en auditoría - [ ] Tests de cada validación