erp-transportistas-v2/PROJECT-STATUS.md
Adrian Flores Cortes 6ed7f9e2ec [BACKUP] Pre-restructure workspace backup 2026-01-29
- Updated docs and inventory files
- Added new architecture docs

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 17:35:54 -06:00

14 KiB

PROJECT-STATUS.md - ERP Transportistas

Proyecto: erp-transportistas Tipo: CONSUMER (Vertical ERP) Version: 1.0.0 Actualizado: 2026-01-27


Estado General

Metrica Valor Descripcion
Progreso General 65% Documentacion completa, backend 60%, frontend 20%, mobile 80%
DDL 100% 8 archivos DDL completos (01-08) + 2 nuevos (03a, 09)
Backend 60% GPS (5) + Dispatch (7) + Offline (1) + WhatsApp (servicios)
Frontend 20% Dashboard Despacho + Tracking components
Mobile 80% App Expo completa con offline, GPS, sync
Documentacion Funcional 100% 18 modulos especificados con US
Documentacion Tecnica 100% Arquitectura, RBAC, KPIs, matrices
Tests 5 archivos ~85 casos de test para servicios core

Fase Actual: Implementacion Backend

Documentacion Completada (2026-01-27)

Fase 2: Especificacion Modulos Criticos (P0)

  • MAI-002 Clientes y Tarifas (18 SP, 3 US)
  • MAI-003 Ordenes de Transporte (18 SP, 3 US)
  • MAI-004 Planeacion TMS (18 SP, 3 US)
  • MAI-005 Despacho (18 SP, 3 US)
  • MAI-006 Tracking (18 SP, 3 US)
  • MAI-007 POD y Cierre (18 SP, 3 US)
  • MAI-009 Facturacion Transporte (21 SP, 3 US)
  • MAI-010 Liquidaciones (18 SP, 3 US)
  • MAI-011 Gestion de Flota (18 SP, 3 US)
  • MAE-016 Carta Porte CFDI (18 SP, 3 US)

Fase 3: Especificacion Modulos Secundarios (P1/P2/P3)

  • MAI-008 Incidencias (18 SP, 3 US)
  • MAI-012 Combustible y Gastos (18 SP, 3 US)
  • MAI-013 Mantenimiento Flota (18 SP, 3 US)
  • MAI-014 Carriers (18 SP, 3 US)
  • MAI-015 Portal Cliente (18 SP, 3 US)
  • MAE-017 HOS y Bitacora (16 SP, 3 US)
  • MAE-018 Reportes y KPIs (18 SP, 3 US)

Fase 4: Arquitectura y Flujos

  • FLUJO-PRINCIPAL-TRANSPORTE.md (8 fases E2E)
  • INTEGRACIONES-EXTERNAS.md (GPS, PAC, Mapas, WhatsApp)
  • MATRIZ-RBAC-TRANSPORTISTAS.yml (16 roles, permisos por modulo)
  • ESPECIFICACION-KPIS.yml (17 KPIs con formulas)

Fase 5: Matrices de Trazabilidad

  • MATRIZ-RF-GENERICOS-GIRO.yml (78 RFs mapeados)
  • MATRIZ-RF-GIRO-MODULOS.yml (RF a 20 modulos)
  • MATRIZ-MODULOS-US.yml (54 US, 325 SP)
  • MATRIZ-DDL-RF.yml (58 tablas a RFs)

DDL Completado (Sesion anterior)

  • DDL completo schemas 01-08 (~2,976 lineas SQL)
    • 01-transport: OT, embarques, viajes, POD, incidencias
    • 02-fleet: unidades, remolques, operadores, documentos
    • 03-tracking: posiciones GPS, eventos, geocercas, alertas
    • 04-fuel: cargas combustible, peajes, gastos, anticipos
    • 05-maintenance: planes, programacion, ordenes trabajo
    • 06-carriers: carriers, documentos, scorecard
    • 07-billing: lanes, tarifas, recargos, facturas
    • 08-compliance: carta porte CFDI 3.1, HOS, inspecciones

Completado - Backend (TASK-006)

  • 238 entities copiadas y adaptadas de erp-core
  • 105 services implementados (81 base + 24 nuevos)
  • Build TypeScript limpio (npm run build )
  • 5 archivos de tests creados (~85 casos)

Servicios Implementados (TASK-2026-01-27-006):

  • Wave2: CartaPorteService, RolesService, PermissionsService, TarifasService, LanesService
  • P3 combustible-gastos: CargaCombustible, CrucePeaje, GastoViaje, AnticipoViatico, ControlRendimiento
  • P3 hr: Employees, Departments, Puestos, Contracts, LeaveTypes, LeaveAllocations, Leaves
  • P3 reports: ReportDefinition, ReportExecution, ReportSchedule, Dashboard, KpiSnapshot, CustomReport, DataModel

Completado - TASK-007 Sprints (2026-01-28)

Sprint S1 - Módulo GPS Backend:

  • 14 archivos TypeScript (entities, services, controllers)
  • 1 archivo DDL (03a-gps-devices-ddl.sql)
  • Entities: DispositivoGps, PosicionGps, Geocerca, EventoGeocerca, SegmentoRuta
  • Services: DispositivoGpsService, PosicionGpsService, GeocercaService, SegmentoRutaService
  • Controllers: 4 controllers con 45+ endpoints
  • Build exitoso

Sprint S2 - Módulo Dispatch Backend:

  • 15 archivos TypeScript (entities, services, controllers)
  • 1 archivo DDL (09-dispatch-schema-ddl.sql)
  • Entities: TableroDespacho, EstadoUnidad, OperadorCertificacion, TurnoOperador, ReglaDespacho, ReglaEscalamiento, LogDespacho
  • Services: DispatchService, CertificacionService, TurnoService, RuleService
  • Controllers: 4 controllers con 52 endpoints
  • Build exitoso

Sprint S3 - Integración GPS-Dispatch (2026-01-28):

  • GpsDispatchIntegrationService (sincronización, sugerencias mejoradas)
  • GpsIntegrationController (4 endpoints: /api/despacho/gps/*)
  • Scoring mejorado con GPS en tiempo real
  • Build exitoso

Sprint S4 - Módulo Offline Backend (2026-01-28):

  • 7 archivos TypeScript (entity, service, controller, routes, index)
  • OfflineQueue entity con enums (TipoOperacionOffline, EstadoSincronizacion, PrioridadSync)
  • SyncService con cola de prioridad y manejo de conflictos
  • SyncController con 8 endpoints (/api/offline/*)
  • Estrategias de resolución: CLIENT_WINS, SERVER_WINS, MERGE
  • Registrado en TypeORM DataSource y app.ts
  • Build exitoso

Sprint S5 - Módulo WhatsApp Backend (2026-01-28):

  • 8 archivos TypeScript (templates, service, controller, routes, index)
  • 9 templates de transporte para Mexico (es_MX)
  • WhatsAppNotificationService con métodos específicos de transporte
  • WhatsAppController con 11 endpoints (/api/whatsapp/*)
  • Modo simulación para desarrollo (sin API key)
  • Validación de números telefónicos mexicanos
  • Rate limiting para envíos batch
  • Build exitoso

Sprint S6 - Frontend Dashboard Despacho (2026-01-28):

  • 10 archivos TypeScript (types, api, components, page)
  • DispatchMap - Mapa con unidades y viajes
  • ViajesPendientesPanel - Lista de viajes pendientes
  • UnidadStatusPanel - Panel detalle de unidad
  • AsignacionModal - Modal con sugerencias de asignación
  • DespachoPage - Página principal con layout completo
  • Integración con React Query para data fetching
  • Ruta /despacho agregada a App.tsx
  • Build pendiente (errores pre-existentes en otros módulos)

Sprint S7 - Frontend Tracking Map Components (2026-01-28):

  • 5 archivos TypeScript (componentes, hooks)
  • ViajeTrackingView - Vista detallada de tracking de viaje
  • ETAProgressBar - Barra de progreso con milestones y ETA
  • EventTimeline - Timeline de eventos del viaje (17 tipos)
  • useTrackingWebSocket - Hook WebSocket con auto-reconnect
  • Helper hooks: useTrackingPositions, useViajeTracking
  • Exports actualizados en feature tracking

Sprint S8 - Mobile App con Offline (2026-01-28):

  • 18 archivos TypeScript (React Native/Expo)
  • Configuración Expo 50 con permisos iOS/Android
  • Services: api, OfflineStorage (SQLite), SyncService, LocationService
  • Stores: authStore, viajeStore (Zustand)
  • Screens: LoginScreen, ViajeActualScreen, ChecklistScreen, PODScreen
  • Cola de prioridad offline (ALTA/MEDIA/BAJA)
  • Background GPS tracking con TaskManager
  • Batch sync de posiciones GPS (50 por lote)
  • Captura de fotos con expo-camera
  • Estructura de navegación completa

Pendiente - Backend

  • Ejecutar DDL en BD (03a-gps-devices-ddl.sql, 09-dispatch-schema-ddl.sql)
  • Registrar rutas GPS, Dispatch, Offline y WhatsApp en app.ts (2026-01-28)
  • Entities registradas en TypeORM DataSource (2026-01-28)
  • Tests unitarios para GPS, Dispatch, Offline y WhatsApp

Pendiente - Frontend

  • Estructura inicial React
  • Dashboard ejecutivo
  • Modulos operativos (OT, Tracking, POD)

Modulos por Fase

Fase 1 - MAI (Modulo Aplicacion Inicial) - 15 modulos

Codigo Nombre DDL Docs Backend Frontend Estado
MAI-001 Fundamentos - - - Heredado
MAI-002 Clientes y Tarifas - - Docs OK
MAI-003 Ordenes de Transporte - - Docs OK
MAI-004 Planeacion TMS - - Docs OK
MAI-005 Despacho - Backend S2 OK
MAI-006 Tracking - Backend S1 OK
MAI-007 POD y Cierre - - Docs OK
MAI-008 Incidencias - - Docs OK
MAI-009 Facturacion Transporte - - Docs OK
MAI-010 Liquidaciones - - Docs OK
MAI-011 Gestion de Flota - - Docs OK
MAI-012 Combustible y Gastos - - Docs OK
MAI-013 Mantenimiento Flota - - Docs OK
MAI-014 Carriers (Terceros) - - Docs OK
MAI-015 Portal Cliente - - Docs OK

Fase 2 - MAE (Modulo Aplicacion Extendido) - 3 modulos

Codigo Nombre DDL Docs Backend Frontend Estado
MAE-016 Carta Porte CFDI - - Docs OK
MAE-017 HOS y Bitacora - - Docs OK
MAE-018 Reportes y KPIs - - Docs OK

Fase 3 - MAA (Modulo Aplicacion Avanzado) - 2 modulos

Codigo Nombre DDL Docs Backend Frontend Estado
MAA-019 Optimizacion Rutas - - - - Futuro
MAA-020 Integraciones EDI - - - - Futuro

Estructura de Documentacion

docs/
├── 00-vision-general/
│   └── VISION.md
├── 02-definicion-modulos/
│   ├── MAI-002-clientes-tarifas/
│   │   ├── README.md
│   │   ├── REQUERIMIENTOS.md
│   │   ├── RESUMEN-EPICA.md
│   │   └── historias-usuario/ (3 US)
│   ├── MAI-003-ordenes-transporte/
│   ├── MAI-004-planeacion-tms/
│   ├── MAI-005-despacho/
│   ├── MAI-006-tracking/
│   ├── MAI-007-pod-cierre/
│   ├── MAI-008-incidencias/
│   ├── MAI-009-facturacion-transporte/
│   ├── MAI-010-liquidaciones/
│   ├── MAI-011-gestion-flota/
│   ├── MAI-012-combustible-gastos/
│   ├── MAI-013-mantenimiento-flota/
│   ├── MAI-014-carriers/
│   ├── MAI-015-portal-cliente/
│   ├── MAE-016-carta-porte-cfdi/
│   ├── MAE-017-hos-bitacora/
│   └── MAE-018-reportes-kpis/
├── 03-requerimientos/
│   └── REQ-GIRO-TRANSPORTISTA.md
├── 10-arquitectura/
│   └── FLUJO-PRINCIPAL-TRANSPORTE.md
├── 30-integraciones/
│   └── INTEGRACIONES-EXTERNAS.md
└── 40-estandares/
    ├── ESPECIFICACION-KPIS.yml
    └── MATRIZ-RBAC-TRANSPORTISTAS.yml

orchestration/matrices/
├── MATRIZ-DDL-RF.yml
├── MATRIZ-MODULOS-US.yml
├── MATRIZ-RF-GENERICOS-GIRO.yml
└── MATRIZ-RF-GIRO-MODULOS.yml

Metricas de Documentacion

Metrica Valor
Modulos especificados 18/20 (90%)
User Stories 54
Story Points 325
Requerimientos funcionales 78
KPIs definidos 17
Roles RBAC 16
Tablas DDL documentadas 58
Integraciones externas 6 categorias

Proximos Pasos (Priorizados)

  1. Revisar backend existente - Validar entities copiadas
  2. Crear entities transporte - Basadas en DDL
  3. Build y validacion - npm run build, lint
  4. Implementar modulo MAI-003 - Ordenes de Transporte (critico)
  5. Implementar modulo MAI-006 - Tracking (critico)
  6. Implementar modulo MAE-016 - Carta Porte (compliance)

Dependencias Criticas

Modulo Depende de Prioridad
MAI-003 OT MAI-002 Tarifas, MAI-011 Flota Alta
MAI-004 Planeacion MAI-003 OT Alta
MAI-005 Despacho MAI-004 Planeacion, MAI-011 Flota Alta
MAI-006 Tracking MAI-005 Despacho Alta
MAI-007 POD MAI-006 Tracking Media
MAI-009 Facturacion MAI-007 POD Media
MAE-016 Carta Porte MAI-009 Facturacion Alta

Riesgos y Mitigaciones

Riesgo Impacto Mitigacion
Complejidad Carta Porte 3.1 Alto Iniciar MAE-016 temprano, PAC confiable
Integracion GPS multiple Medio Abstraccion de proveedores
Volumen de eventos tracking Alto Redis para buffer, batch processing
Offline en carretera Alto PWA con sincronizacion

Metricas de Avance

DDL:         [████████████████████] 100%
Docs Func:   [████████████████████] 100%
Docs Tecnica:[████████████████████] 100%
Backend:     [████████████░░░░░░░░] 60%
Frontend:    [████░░░░░░░░░░░░░░░░] 20%
Mobile:      [████████████████░░░░] 80%
Tests:       [██░░░░░░░░░░░░░░░░░░] 10%

Historial de Actualizaciones

Fecha Descripcion
2026-01-28 TASK-007 Sprint S8: Mobile App Expo completa (18 archivos, offline, GPS)
2026-01-28 TASK-007 Sprint S7: Frontend Tracking (5 archivos, WebSocket, timeline)
2026-01-28 TASK-007 Sprint S6: Frontend Dashboard Despacho (10 archivos)
2026-01-28 TASK-007 Sprint S5: WhatsApp Templates (8 TS nuevos, 9 templates)
2026-01-28 TASK-007 Sprint S4: Offline Sync (7 TS nuevos, cola prioridad)
2026-01-28 TASK-007 Sprint S3: Integración GPS-Dispatch (2 TS nuevos, 5 modificados)
2026-01-28 TASK-007 Sprint S1+S2: GPS Backend (14 TS) + Dispatch Backend (15 TS)
2026-01-27 TASK-006 P2+P3: 24 servicios nuevos, 5 tests, cobertura 34%→44%
2026-01-27 TASK-006 Wave2: 5 servicios críticos (CartaPorote, Roles, Permissions, Tarifas, Lanes)
2026-01-27 TASK-006 Purga: 2 archivos consolidados, documentación limpia
2026-01-27 Fase 2-5 documentacion: 18 modulos, 54 US, arquitectura, matrices
2026-01-25 DDL completo 8 schemas, entities base copiadas
2026-01-24 Creacion repositorio, estructura inicial

Actualizado: 2026-01-28 por Claude Code - TASK-007 Sprints S1-S8 Completados (60% backend, 20% frontend, 80% mobile)