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>
9.7 KiB
US-MAI005-003: Capturar evidencias de carga
ID: US-MAI005-003 Módulo: MAI-005 (Despacho) Prioridad: Alta Story Points: 5
Historia de Usuario
Como operador de transporte Quiero capturar evidencias fotográficas del estado de la carga antes de salir Para tener respaldo del estado inicial y evitar disputas por daños
Criterios de Aceptación
CA-001: Capturar fotos de la carga
Dado que la carga está lista en la unidad Cuando tomo fotos de evidencia Entonces puedo capturar múltiples fotos mostrando el estado de la mercancía
CA-002: Mínimo de fotos requerido
Dado que el cliente o tipo de carga requiere evidencias Cuando intento continuar sin fotos suficientes Entonces el sistema indica cuántas fotos mínimas se requieren (configurable)
CA-003: Registrar peso en báscula
Dado que la carga pasa por báscula Cuando registro el peso Entonces puedo ingresar el peso total (kg) manual o desde ticket de báscula
CA-004: Capturar firma de almacén
Dado que el almacén entrega la carga Cuando solicito la firma Entonces el responsable de almacén firma en pantalla confirmando la entrega
CA-005: Funcionamiento offline
Dado que estoy en área sin señal Cuando capturo fotos y firma Entonces se almacenan localmente y sincronizan al recuperar conexión
CA-006: Metadata de fotos
Dado que capturo una foto Cuando se guarda Entonces incluye timestamp, coordenadas GPS y dispositivo origen
Mockup / UI
┌─────────────────────────────────────────────────────────────────┐
│ EVIDENCIAS DE CARGA ✕ │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Viaje: VJE-0123 | Carga: Electrodomésticos │
│ Requisito mínimo: 3 fotos │
│ │
│ ───────────────────────────────────────────────────────────── │
│ │
│ 📷 FOTOS DE CARGA (3/3 mínimo) │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ 📷 1 │ │ 📷 2 │ │ 📷 3 │ │ + │ │
│ │ [Vista] │ │ [Vista] │ │ [Vista] │ │ Agregar │ │
│ │ 06:10am │ │ 06:11am │ │ 06:12am │ │ foto │ │
│ │ ✓ │ │ ✓ │ │ ✓ │ │ │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ ───────────────────────────────────────────────────────────── │
│ │
│ ⚖ PESO EN BÁSCULA (Opcional) │
│ │
│ Peso bruto: [12,500] kg │
│ Peso neto: [10,200] kg │
│ Referencia ticket: [BSC-2026-0145] │
│ │
│ [📷 Foto de ticket báscula] ✓ Capturada │
│ │
│ ───────────────────────────────────────────────────────────── │
│ │
│ ✍ FIRMA DE ALMACÉN │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ [Área de firma - táctil] │ │
│ │ │ │
│ │ ~~~~~~~~~~~~~~~~~~~~~~ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ Nombre: [Carlos López Hernández] │
│ Puesto: [Jefe de Almacén] │
│ │
│ [Limpiar firma] │
│ │
│ ───────────────────────────────────────────────────────────── │
│ │
│ ✓ Fotos: 3/3 ✓ Peso: Registrado ✓ Firma: Capturada │
│ │
│ [Cancelar] [Continuar →] │
│ │
└─────────────────────────────────────────────────────────────────┘
Vista de Foto Individual
┌─────────────────────────────────────────────────────────────────┐
│ DETALLE DE EVIDENCIA ✕ │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ │ │
│ │ [Imagen de la carga] │ │
│ │ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ 📅 Fecha/Hora: 2026-01-28 06:10:32 │
│ 📍 Ubicación: 19.4326, -99.1332 (Bodega CDMX) │
│ 📱 Dispositivo: iPhone 14 Pro │
│ │
│ Nota: [Vista frontal de la estiba completa] │
│ │
│ [🗑 Eliminar] [✓ Confirmar] │
│ │
└─────────────────────────────────────────────────────────────────┘
Configuración por Cliente
| Cliente | Fotos mínimas | Peso requerido | Firma requerida |
|---|---|---|---|
| Default | 3 | No | Sí |
| Cliente A | 5 | Sí | Sí |
| Cliente B | 3 | Sí (neto y bruto) | Sí |
| Cliente C | 2 | No | No |
Notas Técnicas
- Tabla:
evidencias_carga - Fotos se comprimen a max 1MB antes de subir
- Firma se guarda como SVG o PNG base64
- Metadata EXIF se extrae automáticamente
- Cola de sincronización con reintentos exponenciales
- Configuración de requisitos en
requisitos_cliente
Definición de Done
- Captura de múltiples fotos con cámara
- Validación de fotos mínimas por configuración
- Registro de peso con campos bruto/neto
- Captura de firma táctil
- Almacenamiento con metadata (GPS, timestamp)
- Funcionamiento offline completo
- Sincronización con cola de reintentos
- Tests de sincronización y validación