Sistema completo para gestão de transportadoras, com controle de fretes, comprovantes de entrega, gestão de comissões por porcentagem, configuração de acesso e gerenciamento de usuários por placa do veículo utilizado para transporte. Desenvolvido com Flutter e integrado ao Firebase (Firestore e autenticação).
- Controle de Fretes: Cadastro, edição e acompanhamento em tempo real via Firestore.
- Comprovantes de Entrega: Upload de fotos e visualização de documentos digitais.
- Controle total de despesas com os carros: Incluindo abastecimentos e manutenções, com possibilidade de inserção de fotos e comprovantes.
- Gestão de Comissões: Configuração de porcentagens e cálculo automático com base em fretes concluídos.
- Autenticação e Acesso: Login seguro com Firebase Authentication e níveis de permissão (ex.: administrador, motorista).
- Gerenciamento de Usuários por Placa: Associação de usuários a veículos via placa do caminhão.
- Atualizações em Tempo Real: Sincronização automática de dados com o Firestore.
- Controle Financeiro: Registro de despesas, abastecimento e pagamentos.
lib/
├── assets/ → Imagens e ícones utilizados na interface (PNG, etc.)
│ └── img/ → Organização clara de assets gráficos
├── components/ → Widgets reutilizáveis (ex.: cards para fretes, custos)
│ ├── admin/ → Componentes exclusivos para painel de administração
│ └── fretes/ → Elementos visuais relacionados a fretes
├── models/ → Estruturas de dados (ex.: FreteCardModel, UsuarioModel)
├── providers/ → Lógica de state management (ex.: CustosProvider, FreteCardProvider)
├── screens/ → Telas do aplicativo (ex.: login, homepage, formulários)
│ ├── admin/ → Páginas exclusivas para administradores
│ └── forms/ → Formulários de cadastro e edição
├── services/ → Integração com Firebase e certificados SSL
│ ├── firebase_service.dart → Configuração de autenticação e Firestore
│ └── cacert-2023-12-12.pem → Certificado para segurança SSL/TLS
└── main.dart → Ponto de entrada do aplicativo
- Flutter: Framework para desenvolvimento multiplataforma (iOS/Android)
- Firebase: Autenticação de usuários e armazenamento de dados em tempo real via Firestore
- Dart: Linguagem de programação para lógica e UI
- Widgets Personalizados: Componentes reutilizáveis para melhorar a manutenção do código
- Documentação de Setup do Firebase: O repositório não inclui instruções detalhadas para configurar o Firebase (ex.: regras de segurança, estrutura de coleções no Firestore).
- Tratamento de Erros em Operações do Firebase: Não há implementação explícita para lidar com falhas de conexão ou permissões negadas .
- Testes Automatizados: Ausência de testes unitários ou widget tests para validar a lógica e a UI.
- Otimização de Imagens: O diretório
assets/img/
contém imagens, mas não há referência a técnicas de compressão ou carregamento assíncrono . - Migração de Dados: Não há scripts ou documentação para atualizações na estrutura do banco de dados (ex.: alterações em modelos de dados).
- Configuração de Ambiente: Não há arquivos
.env
ou variáveis de ambiente para chaves sensíveis (ex.: API keys).
Desenvolvido como solução prática para gestão de transportadoras, priorizando usabilidade e escalabilidade.