MAI-002 (Tarifas y SLA): - README, REQUERIMIENTOS, RESUMEN-EPICA - 5 User Stories (31 SP total) - Covers: tarifario por lane, recargos, SLA, cotizaciones, aprobaciones MAI-004 (Planeacion TMS): - README, REQUERIMIENTOS, RESUMEN-EPICA - 5 User Stories (39 SP total) - Covers: tablero planeacion, consolidacion, asignacion, validaciones, ETA MAI-005 (Despacho): - README, REQUERIMIENTOS, RESUMEN-EPICA - 5 User Stories (28 SP total) - Covers: checklist NOM-068, sellos, evidencias, kit documental, gate out Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
126 lines
5.7 KiB
Markdown
126 lines
5.7 KiB
Markdown
# US-MAI004-005: Calcular ETA inicial
|
|
|
|
**ID:** US-MAI004-005
|
|
**Módulo:** MAI-004 (Planeación TMS)
|
|
**Prioridad:** Media
|
|
**Story Points:** 5
|
|
|
|
---
|
|
|
|
## Historia de Usuario
|
|
|
|
**Como** planner de tráfico
|
|
**Quiero** que el sistema calcule los ETAs estimados para cada parada del viaje
|
|
**Para** validar que puedo cumplir las ventanas comprometidas con el cliente
|
|
|
|
---
|
|
|
|
## Criterios de Aceptación
|
|
|
|
### CA-001: Cálculo de distancia
|
|
**Dado** que tengo un viaje con origen y destinos
|
|
**Cuando** solicito calcular ETA
|
|
**Entonces** el sistema obtiene distancias vía API de mapas
|
|
|
|
### CA-002: Estimación de tiempo
|
|
**Dado** que tengo las distancias
|
|
**Cuando** el sistema calcula tiempos
|
|
**Entonces** considera: velocidad promedio por tipo de vía, paradas de descanso, tiempo en cada parada
|
|
|
|
### CA-003: Itinerario con ETAs
|
|
**Dado** que el cálculo está completo
|
|
**Cuando** veo el resultado
|
|
**Entonces** muestra itinerario con ETA de llegada y salida de cada punto
|
|
|
|
### CA-004: Comparación con SLA
|
|
**Dado** que tengo ETAs calculados
|
|
**Cuando** comparo con ventanas del cliente
|
|
**Entonces** el sistema marca en verde si cumple, rojo si no cumple
|
|
|
|
### CA-005: Ajuste de hora salida
|
|
**Dado** que el ETA no cumple la ventana
|
|
**Cuando** ajusto la hora de salida planificada
|
|
**Entonces** el sistema recalcula todos los ETAs
|
|
|
|
---
|
|
|
|
## Mockup / UI
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────┐
|
|
│ ITINERARIO Y ETAs - VJE-0123 │
|
|
├─────────────────────────────────────────────────────────────────┤
|
|
│ │
|
|
│ Hora salida planificada: [06:00] ▲▼ [Recalcular] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ ITINERARIO │
|
|
│ │
|
|
│ 📍 ORIGEN: Bodega CDMX Norte │
|
|
│ Salida planificada: 06:00 │
|
|
│ Tiempo carga: 1 hora │
|
|
│ Salida real estimada: 07:00 │
|
|
│ │
|
|
│ ↓ 280 km | ~4.5 hrs | Autopista México-Querétaro │
|
|
│ │
|
|
│ 📍 PARADA 1: Almacén GDL Centro │
|
|
│ ETA llegada: 11:30 │
|
|
│ Ventana cliente: 10:00 - 14:00 │
|
|
│ Estado: ✅ DENTRO DE VENTANA │
|
|
│ Tiempo descarga: 1 hora │
|
|
│ Salida estimada: 12:30 │
|
|
│ │
|
|
│ ↓ 45 km | ~1 hr | Periférico GDL │
|
|
│ │
|
|
│ 📍 PARADA 2: Bodega GDL Sur │
|
|
│ ETA llegada: 13:30 │
|
|
│ Ventana cliente: 12:00 - 16:00 │
|
|
│ Estado: ✅ DENTRO DE VENTANA │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ RESUMEN │
|
|
│ Distancia total: 325 km │
|
|
│ Tiempo total estimado: 7.5 horas │
|
|
│ Todas las ventanas: ✅ OK │
|
|
│ │
|
|
│ [Guardar ETAs] │
|
|
│ │
|
|
└─────────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
---
|
|
|
|
## Parámetros de Cálculo
|
|
|
|
| Parámetro | Valor por defecto | Configurable |
|
|
|-----------|-------------------|--------------|
|
|
| Velocidad autopista | 80 km/h | Sí |
|
|
| Velocidad carretera | 60 km/h | Sí |
|
|
| Velocidad urbana | 30 km/h | Sí |
|
|
| Tiempo carga promedio | 60 min | Por cliente |
|
|
| Tiempo descarga promedio | 45 min | Por cliente |
|
|
| Parada descanso | 30 min cada 4 hrs | Por política |
|
|
|
|
---
|
|
|
|
## Notas Técnicas
|
|
|
|
- Usar Google Maps Distance Matrix API o similar
|
|
- Cache de distancias frecuentes (TTL 7 días)
|
|
- Los ETAs se almacenan en `eta_calculado`
|
|
- Recálculo automático si cambian paradas
|
|
|
|
---
|
|
|
|
## Definición de Done
|
|
|
|
- [ ] Integración con API de mapas
|
|
- [ ] Cálculo de tiempos con parámetros
|
|
- [ ] UI de itinerario con ETAs
|
|
- [ ] Comparación con ventanas SLA
|
|
- [ ] Ajuste de hora de salida
|
|
- [ ] Cache de distancias
|
|
- [ ] Tests de cálculo
|