O Dashboard foi criado como interface principal para condutores da aplicação VeiGest. É um mockup funcional que exibe informações essenciais para o dia-a-dia do condutor de forma simples e intuitiva.
- Nome do condutor
- Mensagem de boas-vindas
- Botão de logout (mockado)
Exibe informação sobre a rota atual do condutor:
- Origem da rota
- Destino da rota
- Distância total
- Tempo estimado de chegada (ETA)
- Botão para ver detalhes completos da rota
Informações do veículo atribuído ao condutor:
- Matrícula do veículo
- Modelo do veículo
- Quilometragem atual
- Nível de combustível
- Botão para ver detalhes completos do veículo
Status da documentação importante:
- Carta de Condução: Data de expiração e status
- Seguro do Veículo: Data de expiração e status
- Inspeção do Veículo: Data de expiração e status
- Indicadores visuais de status (Válido/Expirado)
- Botão para ver todos os documentos
Acesso rápido a funcionalidades importantes:
- Reportar Problema: Para reportar incidentes ou problemas
- Minhas Rotas: Histórico e lista de rotas
- Histórico: Consultar histórico de viagens
- Definições: Configurações da aplicação
fragment_dashboard.xml- Layout principal do dashboard com ScrollView e CardViews
DashboardFragment.java- Fragment com lógica do dashboard e dados mockados
ic_dashboard_route.xml- Ícone para rotasic_dashboard_vehicle.xml- Ícone para veículosic_dashboard_document.xml- Ícone para documentação
Adicionadas strings em português para:
- Boas-vindas e navegação
- Labels de rotas (origem, destino, distância, ETA)
- Labels de veículos (matrícula, modelo, km, combustível)
- Labels de documentação
- Ações rápidas
Atualizada com métodos para navegação entre fragments:
loadFragment(Fragment)- Método genérico para carregar fragmentsloadDashboard()- Carrega o dashboard após login
Atualizado para navegar para o dashboard após login bem-sucedido:
- Validação básica de campos
- Simulação de login (mockado)
- Navegação para DashboardFragment
Todos os dados atualmente exibidos são mockados para demonstração:
// Condutor
Nome: "João Silva"
// Rota Ativa
Origem: "Leiria, Portugal"
Destino: "Lisboa, Portugal"
Distância: "145 km"
ETA: "1h 45min"
// Veículo
Matrícula: "AA-12-BB"
Modelo: "Mercedes Actros"
Quilometragem: "125.340 km"
Combustível: "75%"
// Documentação
Carta de Condução: Expira 15/08/2026 (Válida)
Seguro: Expira 30/06/2025 (Válido)
Inspeção: Expira 22/03/2025 (Válida)Substituir dados mockados por chamadas reais aos endpoints:
// Endpoints a integrar (API_ENDPOINTS.md)
GET /drivers/{id} // Dados do condutor
GET /routes?status=active&driver_id // Rotas ativas
GET /vehicles/{id} // Dados do veículo
GET /documents?driver_id={id} // DocumentaçãoImplementar navegação para as seguintes telas:
RouteDetailsFragment- Detalhes completos da rotaVehicleDetailsFragment- Informações completas do veículoDocumentationFragment- Lista completa de documentosReportIssueFragment- Formulário para reportar problemasMyRoutesFragment- Lista de rotas do condutorHistoryFragment- Histórico de viagensSettingsFragment- Configurações da aplicação
- Implementar chamada ao endpoint
POST /auth/login - Guardar token JWT em SharedPreferences
- Adicionar interceptor HTTP para incluir token
- Verificar sessão ativa ao iniciar app
- Implementar logout com limpeza de sessão
- Alertas de documentos próximos de expirar
- Notificações de novas rotas atribuídas
- Atualizações de status da rota
- Adicionar pull-to-refresh para atualizar dados
- Implementar skeleton loaders durante carregamento
- Adicionar animações entre transições
- Modo offline com cache de dados
- Auto-refresh periódico dos dados
- Indicador visual de última atualização
- Sincronização em background
O dashboard respeita o tema da aplicação:
- Suporte a modo claro e escuro
- Cores personalizadas via atributos (
?attr/...) - Cards com Material Design 3
- Ícones consistentes com a marca VeiGest
- ScrollView para suportar diferentes tamanhos de tela
- Grid adaptativo para ações rápidas
- Layouts flexíveis com peso (weight)
- Executar a aplicação no emulador ou dispositivo
- Fazer login (qualquer username/password funcionará no mockup)
- O dashboard será carregado automaticamente
- Clicar nos botões mostrará mensagens Toast indicando funcionalidades futuras
- Testar em modo claro e escuro
- API Documentation:
API_ENDPOINTS.md - Project Documentation:
projeto.md - Database Schema:
schema_simplifyed.sql