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>
91 lines
3.2 KiB
Markdown
91 lines
3.2 KiB
Markdown
# 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
|