# US-MAI012-001: Registrar carga de combustible **ID:** US-MAI012-001 **Modulo:** MAI-012 (Combustible y Gastos) **Prioridad:** Alta **Story Points:** 5 --- ## Historia de Usuario **Como** operador **Quiero** registrar cada carga de combustible con evidencia **Para** documentar el consumo y facilitar el control de rendimiento --- ## Criterios de Aceptacion ### CA-001: Capturar datos de carga **Dado** que cargo combustible durante el viaje **Cuando** registro la carga en la app **Entonces** capturo: litros, precio, estacion, odometro, tipo combustible ### CA-002: Tomar foto del ticket **Dado** que necesito comprobar la carga **Cuando** registro **Entonces** tomo foto del ticket que se sube como evidencia ### CA-003: Captura GPS automatica **Dado** que estoy en la estacion **Cuando** registro la carga **Entonces** el sistema captura mi ubicacion automaticamente ### CA-004: Validar odometro **Dado** que el odometro debe ser consistente **Cuando** ingreso el valor **Entonces** valida que sea > ultimo odometro registrado ### CA-005: Soporte offline **Dado** que puedo estar sin conexion **Cuando** registro una carga **Entonces** se guarda localmente y sincroniza despues --- ## Mockup / UI ``` +----------------------------------------------------------+ | REGISTRAR CARGA COMBUSTIBLE X | +----------------------------------------------------------+ | | | Unidad: T-1025 | Kenworth T680 | | Viaje: VJE-0125 | CDMX -> Monterrey | | Odometro anterior: 485,230 km | | | | ------------------------------------------------------ | | | | DATOS DE LA CARGA | | | | Tipo combustible: [DIESEL v] | | | | Tipo de pago: | | (o) Vale de combustible | | ( ) Tarjeta empresa | | ( ) Efectivo (viatico) | | | | Numero de vale: [V-2026-01254 ] | | | | ------------------------------------------------------ | | | | CANTIDADES | | | | Litros cargados: [450.500 ] L | | Precio por litro: [$24.35 ] | | Total: $10,969.68 | | | | Odometro actual: [485,890 ] km | | km desde ultima carga: 660 km | | Rendimiento: 1.47 km/L [!] Bajo (esperado: 2.8) | | | | ------------------------------------------------------ | | | | ESTACION | | | | [!] Ubicacion GPS: 25.6866, -100.3161 | | | | Estacion: [PEMEX Monterrey Norte ] | | Direccion: [Av. Lincoln 2500, MTY ] | | | | ------------------------------------------------------ | | | | EVIDENCIA | | | | [Camara] Tomar foto del ticket | | | | [IMG] ticket_pemex_001.jpg OK | | | | ------------------------------------------------------ | | | | [Cancelar] [Guardar Carga] | | | +----------------------------------------------------------+ ``` --- ## Validaciones | Validacion | Regla | Mensaje Error | |------------|-------|---------------| | Odometro | > ultimo registrado | Odometro debe ser mayor a 485,230 | | Litros | <= capacidad tanque | Excede capacidad del tanque (800L) | | GPS | Cerca de estacion | Ubicacion no corresponde a estacion | | Foto | Obligatoria | Debe adjuntar foto del ticket | | Duplicado | No misma hora/estacion | Ya existe carga similar | --- ## Notas Tecnicas - Tabla: `fuel.cargas_combustible` - Foto a S3 con compresion (max 2MB) - GPS con tolerancia de 500m a estacion - Calculo rendimiento: km / litros - Alerta si rendimiento < 70% esperado --- ## Definicion de Done - [ ] Formulario de captura completo - [ ] Captura GPS automatica - [ ] Carga de foto de ticket - [ ] Validacion de odometro - [ ] Calculo de rendimiento - [ ] Alerta si rendimiento bajo - [ ] Soporte offline - [ ] Tests de captura y validaciones