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>
186 lines
11 KiB
Markdown
186 lines
11 KiB
Markdown
# US-MAI002-001: Definir tarifa por lane
|
|
|
|
**ID:** US-MAI002-001
|
|
**Módulo:** MAI-002 (Tarifas y SLA)
|
|
**Prioridad:** Alta
|
|
**Story Points:** 8
|
|
|
|
---
|
|
|
|
## Historia de Usuario
|
|
|
|
**Como** ejecutivo de ventas
|
|
**Quiero** definir tarifas por lane (origen-destino) con diferentes tipos de servicio y vigencias
|
|
**Para** tener un tarifario estructurado que permita cotizar rápidamente
|
|
|
|
---
|
|
|
|
## Criterios de Aceptación
|
|
|
|
### CA-001: Crear tarifa básica
|
|
**Dado** que necesito definir un precio para una ruta
|
|
**Cuando** creo una nueva tarifa
|
|
**Entonces** puedo especificar: lane (origen-destino), tipo de unidad, modalidad (FTL/LTL), precio base y vigencia
|
|
|
|
### CA-002: Definir lane por zona o ubicación específica
|
|
**Dado** que algunos precios aplican a zonas completas
|
|
**Cuando** defino el lane
|
|
**Entonces** puedo elegir entre zona tarifaria (ej: "Zona Centro") o ubicación específica (ej: "CDMX Tepito")
|
|
|
|
### CA-003: Tipos de tarifa
|
|
**Dado** que existen diferentes esquemas de cobro
|
|
**Cuando** defino el tipo de tarifa
|
|
**Entonces** puedo elegir: por viaje, por km, por tonelada, por pallet, o combinada
|
|
|
|
### CA-004: Tarifa específica por cliente
|
|
**Dado** que algunos clientes tienen precios negociados
|
|
**Cuando** creo una tarifa
|
|
**Entonces** puedo asociarla a un cliente específico (aplica solo a ese cliente)
|
|
|
|
### CA-005: Control de vigencias
|
|
**Dado** que las tarifas cambian con el tiempo
|
|
**Cuando** defino vigencia
|
|
**Entonces** el sistema solo aplica tarifas vigentes y alerta cuando están por vencer
|
|
|
|
### CA-006: Búsqueda de tarifa vigente
|
|
**Dado** que necesito encontrar el precio para una ruta
|
|
**Cuando** busco por origen, destino, tipo de unidad y cliente
|
|
**Entonces** el sistema retorna la tarifa más específica vigente (cliente > general)
|
|
|
|
---
|
|
|
|
## Mockup / UI
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────┐
|
|
│ NUEVA TARIFA ✕ │
|
|
├─────────────────────────────────────────────────────────────────┤
|
|
│ │
|
|
│ INFORMACIÓN DEL LANE │
|
|
│ │
|
|
│ Origen │
|
|
│ Tipo: (●) Zona tarifaria ( ) Ubicación específica │
|
|
│ Zona: [Zona Metropolitana CDMX ▼] │
|
|
│ │
|
|
│ Destino │
|
|
│ Tipo: (●) Zona tarifaria ( ) Ubicación específica │
|
|
│ Zona: [Zona Centro (GDL, AGS, QRO)▼] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ CONFIGURACIÓN DE TARIFA │
|
|
│ │
|
|
│ Tipo de unidad: [Tractocamión - Caja seca 53' ▼] │
|
|
│ │
|
|
│ Modalidad: (●) FTL (Carga completa) ( ) LTL (Consolidado) │
|
|
│ │
|
|
│ Servicio: (●) Estándar ( ) Express ( ) Mismo día │
|
|
│ │
|
|
│ Tipo de tarifa: [Por viaje (monto fijo) ▼] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ PRECIO │
|
|
│ │
|
|
│ Precio base: [$12,500.00] Moneda: [MXN ▼] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ VIGENCIA │
|
|
│ │
|
|
│ Fecha inicio: [2026-01-01] │
|
|
│ Fecha fin: [2026-12-31] ☐ Sin fecha de fin │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ ALCANCE │
|
|
│ │
|
|
│ (●) Tarifa general (todos los clientes) │
|
|
│ ( ) Tarifa específica: [Seleccionar cliente...] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ [Cancelar] [Guardar Tarifa] │
|
|
│ │
|
|
└─────────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
---
|
|
|
|
## Lista de Tarifas
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────┐
|
|
│ TARIFARIO [+ Nueva]│
|
|
├─────────────────────────────────────────────────────────────────┤
|
|
│ │
|
|
│ Filtros: [Zona origen ▼] [Zona destino ▼] [Tipo unidad ▼] │
|
|
│ [Modalidad ▼] [Estado: Vigente ▼] │
|
|
│ │
|
|
│ ───────────────────────────────────────────────────────────── │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
│ │ CDMX → Zona Centro │ │
|
|
│ │ Caja seca 53' | FTL | Estándar │ │
|
|
│ │ $12,500.00 MXN por viaje │ │
|
|
│ │ Vigente: 01-ene-2026 al 31-dic-2026 │ │
|
|
│ │ Alcance: General [Editar]│ │
|
|
│ └─────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
│ │ CDMX → Zona Centro │ │
|
|
│ │ Caja seca 53' | FTL | Estándar │ │
|
|
│ │ $11,800.00 MXN por viaje │ │
|
|
│ │ Vigente: 01-ene-2026 al 31-dic-2026 │ │
|
|
│ │ Alcance: Distribuidora ABC (contrato) [Editar]│ │
|
|
│ └─────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
│ │ Zona Norte → Zona Sur │ │
|
|
│ │ Torton | FTL | Estándar │ │
|
|
│ │ $18.00 MXN por km │ │
|
|
│ │ Vigente: 15-feb-2026 al -- │ │
|
|
│ │ Alcance: General [Editar]│ │
|
|
│ └─────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ Mostrando 3 de 45 tarifas [< 1 2 3 4 5 >] │
|
|
│ │
|
|
└─────────────────────────────────────────────────────────────────┘
|
|
```
|
|
|
|
---
|
|
|
|
## Tipos de Tarifa
|
|
|
|
| Tipo | Campos requeridos | Ejemplo |
|
|
|------|-------------------|---------|
|
|
| Por viaje | precio_base | $12,500 por viaje |
|
|
| Por km | precio_por_km | $18/km |
|
|
| Por tonelada | precio_por_ton | $450/ton |
|
|
| Por pallet | precio_por_pallet | $800/pallet |
|
|
| Combinada | precio_base + precio_por_km | $8,000 + $12/km |
|
|
|
|
---
|
|
|
|
## Notas Técnicas
|
|
|
|
- Tabla: `tarifas` con `lane_id`, `tipo_unidad`, `modalidad`, `servicio`
|
|
- Tabla: `lanes` con `origen_zona_id`, `destino_zona_id`
|
|
- Tabla: `zonas_tarifarias` con polígono o lista de ubicaciones
|
|
- Índice por (cliente_id, lane_id, tipo_unidad, modalidad, vigencia)
|
|
- Soft delete para mantener histórico
|
|
|
|
---
|
|
|
|
## Definición de Done
|
|
|
|
- [ ] CRUD completo de tarifas
|
|
- [ ] Gestión de lanes por zona o ubicación
|
|
- [ ] Soporte para todos los tipos de tarifa
|
|
- [ ] Tarifa específica por cliente
|
|
- [ ] Control de vigencias con alertas
|
|
- [ ] Búsqueda de tarifa vigente más específica
|
|
- [ ] Tests unitarios de búsqueda
|
|
- [ ] Tests de integración
|
|
|