Nuevo modulo P0 critico especificado: - README.md: Vision general, alcance, actores, flujo - REQUERIMIENTOS.md: 4 RF (4.7.1-4.7.4), RNF, validaciones - RESUMEN-EPICA.md: Valor de negocio, criterios exito, 31 SP User Stories (5): - US-MAI007-001: Capturar firma digital (8 SP) - US-MAI007-002: Registrar tiempos reales (5 SP) - US-MAI007-003: Adjuntar fotos evidencia (5 SP) - US-MAI007-004: Validar POD antes de cierre (8 SP) - US-MAI007-005: Cerrar con excepcion (5 SP) Este modulo es bloqueante para: - MAI-009 (Facturacion) - MAI-010 (Liquidaciones) - MAE-016 (Carta Porte) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.2 KiB
US-MAI007-001: Capturar firma digital en entrega
ID: US-MAI007-001 Modulo: MAI-007 (POD y Cierre) Prioridad: Alta Story Points: 8
Historia de Usuario
Como operador de transporte Quiero capturar la firma digital del receptor en mi dispositivo movil Para tener evidencia irrefutable de que la mercancia fue entregada
Criterios de Aceptacion
CA-001: Captura de firma
Dado que estoy en la pantalla de captura POD Cuando el receptor firma con su dedo en el area de firma Entonces el sistema captura la firma como imagen y la muestra en preview
CA-002: Validacion de firma
Dado que intento guardar el POD sin firma Cuando presiono el boton guardar Entonces el sistema muestra error "Firma requerida" y no permite continuar
CA-003: Datos del receptor
Dado que capturo la firma Cuando completo los datos del receptor (nombre obligatorio, ID opcional) Entonces el sistema asocia estos datos a la firma capturada
CA-004: Limpiar y reintentar
Dado que la firma capturada no es satisfactoria Cuando presiono el boton "Limpiar firma" Entonces el area de firma se limpia y puedo capturar nuevamente
CA-005: Modo offline
Dado que no tengo conexion a internet Cuando capturo una firma Entonces el sistema la almacena localmente y sincroniza cuando haya conexion
Mockup / UI
┌─────────────────────────────────────────┐
│ POD - Entrega #12345 │
├─────────────────────────────────────────┤
│ │
│ Nombre receptor: [________________] │
│ ID receptor: [________________] │
│ (opcional) │
│ │
│ ┌─────────────────────────────────┐ │
│ │ │ │
│ │ │ │
│ │ [AREA DE FIRMA] │ │
│ │ │ │
│ │ │ │
│ └─────────────────────────────────┘ │
│ │
│ [Limpiar] [Continuar →] │
│ │
└─────────────────────────────────────────┘
Notas Tecnicas
- La firma se almacena como PNG base64 en SQLite local
- Resolucion minima: 300x150 px
- Validar que haya al menos 50 puntos de trazo
- Coordenadas GPS se capturan automaticamente
- Sincronizacion via endpoint POST /api/v1/pod/:id/firma
Definicion de Done
- Codigo implementado y revisado
- Tests unitarios (cobertura >80%)
- Tests de integracion con backend
- Funciona en modo offline
- Documentacion de API actualizada
- Demo aprobada por Product Owner