testes/Modulos Angular/projects/idt_app/docs/router/ROUTES_MODULE_INDEX.md

7.3 KiB

📋 Índice de Documentação - Módulo Routes

PraFrota ERP SAAS - Sistema de Gestão de Rotas


📚 Documentação Disponível

📋 Documentos Principais

📊 Dados de Desenvolvimento

  • DASHBOARD_MOCK_DATA.json - Dados mock para dashboard
  • route-stops-mock.data.ts - Dados mock para paradas (dentro do código)

🔧 Guias Técnicos


🎯 Estrutura do Módulo

🚛 Routes (Principal)

📁 routes/
├── routes.component.ts         - Componente principal (BaseDomainComponent)
├── routes.service.ts          - Service com ApiClientService
├── route.interface.ts         - Interface principal Route
├── route-location-tracker.component.ts - Localização de rotas
└── README.md                  - Documentação local

📍 RouteStops (Sub-módulo)

📁 routes/route-stops/
├── route-stops.component.ts           - Container principal
├── route-stops-list.component.ts      - Lista lateral
├── route-stop-form.component.ts       - Formulário lateral
├── route-stop-card.component.ts       - Item da lista
├── fiscal-document-modal.component.ts - Modal de documentos
├── route-stops.service.ts             - Service para paradas
├── fiscal-document.service.ts         - Service para documentos
├── route-stops.interface.ts           - Interfaces TypeScript
└── route-stops-mock.data.ts          - Dados mock

🎯 Features Implementadas

Routes Module (Concluído)

  • Componente principal com BaseDomainComponent
  • Service com ApiClientService e fallback
  • Interface Route completa
  • Localização com Google Maps
  • Sistema de sub-abas
  • Dados mock realistas (500 rotas)
  • Dashboard executivo
  • Documentação completa

🚧 RouteStops Module (Em Desenvolvimento)

  • Phase 1: Documentação e estrutura de dados CONCLUÍDA
    • Especificação técnica completa
    • Interfaces TypeScript
    • Dados mock com documentos fiscais
    • Aprovação de UX/UI
  • Phase 2: Implementação de componentes CONCLUÍDA
    • RouteStopsComponent (container principal)
    • RouteStopsListComponent (lista lateral)
    • RouteStopFormComponent (formulário lateral)
    • FiscalDocumentModalComponent (modal documentos)
    • RouteStopsService (CRUD + fallback)
    • FiscalDocumentService (NFe/NFCe + validações)
    • Layout responsivo implementado
    • Build bem-sucedido
  • Phase 3: Implementação detalhada 🚧 EM ANDAMENTO
    • RouteStopCardComponent (visual rico)
    • Formulários reativos completos
    • Drag & drop funcional
    • Validações NFe/NFCe no modal
    • Integração Google Maps
  • Phase 4: Integração final
    • Registro no TabSystem
    • Método getRouteStopsData() no GenericTabFormComponent
    • Testes de integração

🎨 UX/UI Aprovada - RouteStops

📍 Layout Principal

  • Lista lateral com paradas + formulário de adição
  • Mapa sempre visível na parte superior
  • Modal separado para documentos fiscais
  • Integração mobile via API (dados readonly na web)

🎯 Componentes da Interface

┌─────────────────────────────────────────────────────────────────┐
│ 🗺️ MAPA DA ROTA (sempre visível)                               │
│ • Pins numerados para cada parada                              │
│ • Rota otimizada conectando todas as paradas                   │
│ • Controles: [+ Nova Parada] [🔄 Otimizar] [📋 Sequenciar]     │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────┬───────────────────────────┐
│ 📋 LISTA DE PARADAS                │ 📝 NOVA PARADA           │
│                                     │                           │
│ [Drag & Drop habilitado]            │ [Formulário lateral]      │
│                                     │                           │
│ RouteStopCard (repetível):          │ Campos:                   │
│ ┌─────────────────────────────────┐ │ • Tipo                    │
│ │ [📍1] Coleta - Endereço         │ │ • Endereço (autocomplete) │
│ │      ⏰ 08:00  📦 5 volumes     │ │ • Data/Hora               │
│ │      📄 NFe: 001234567 ✅       │ │ • Volumes/Peso            │
│ │      Status: ⏳ Pendente        │ │ • [📄 + Documento Fiscal] │
│ │      [📝] [🗑️] [📄] [📍]        │ │                           │
│ └─────────────────────────────────┘ │ [💾 Salvar] [🚫 Cancelar] │
│                                     │                           │
└─────────────────────────────────────┴───────────────────────────┘

📄 Campos de Documentos Fiscais (Requisito)

🎯 FiscalDocument Interface

interface FiscalDocument {
  fiscalDocumentId: string;      // ✅ Identificação única
  documentType: 'NFe' | 'NFCe';  // ✅ Tipo de documento
  documentNumber: string;        // ✅ Número da nota fiscal
  series: string | null;         // ✅ Série (pode ser null)
  accessKey: string | null;      // ✅ Chave 44 dígitos (opcional)
  issueDate: Date;              // ✅ Data de emissão
  totalValue: number;           // ✅ Valor total
  productType: string;          // ✅ Tipo de produto
  // ... demais campos
}

📚 Documentação Externa

🎯 Repositório

  • Branch Principal: main
  • Branch Atual: feature/route-stops-module
  • Próximo Merge: Após conclusão Phase 4

📋 Status Atual: Phase 2 concluída! Todos os componentes básicos implementados com sucesso. Build funcionando. Próximo: Phase 3 - Implementação detalhada dos componentes.