Módulos
16
Stack UI
UIKit
Padrão
MVC + Service
Mín. iOS
iOS 14+
A versão iOS do AppMonisat segue a arquitetura clássica UIKit (UIViewController por tela) com camadas auxiliares Service / Model por feature. Cada módulo abaixo tem documentação dedicada com fluxos, classes e endpoints v1.
Estrutura de pastas (AppMonisatIos/)
AppMonisatIos/ ├── AppDelegate.swift · bootstrap, FCM, deep-links ├── SceneDelegate.swift · ciclo de vida UIScene ├── AppMonisatIos.entitlements · push, background-modes, location ├── Info.plist · Config1.plist · permissões, chaves, ambiente ├── components/ · UI components reutilizáveis ├── general/ · extensions, utils globais ├── model/, models/ · domain models e DTOs ├── modal/ · base de modais customizados ├── socket/ · TCPClient + WebSocketService ├── background/ · BackgroundTask scheduler ├── login/ · LoginViewController + opções/biometria ├── home/ · HomeViewController (dashboard) ├── trips/ · cadTrips/ · gestão e cadastro de viagens ├── grid/ · GridViewController (lista de viagens) ├── map/ · ViewController (MapKit) ├── manager/ · driver/ · historic/ · módulos operacionais ├── checklist/ · sistemic/ · inspeção veicular e de IoT ├── disregard/ · desconsideração de alertas ├── notification/ · reports/ · push e relatórios ├── config/ · configurações + troca de senha └── monitor/ · filter/ · details/ · suporte (sensores, filtros, detalhes)
Telas por módulo
| Módulo | ViewController principal | Pasta | Função |
|---|---|---|---|
| Login | LoginViewController | login/ | Autenticação, biometria FaceID/TouchID, OTP |
| Home | HomeViewController | home/ | Dashboard, atalhos, badges FCM |
| Viagens | TripCadViewController · CadTripViewController1 | cadTrips/ | Cadastro e edição de viagens com modais |
| Grid | GridViewController · GridViewControllerV1 | grid/ | Lista filtrável de viagens |
| Mapa | ViewController (map) | map/ | MapKit, rotas, marcadores em tempo real |
| Manager | ManagerViewController · TripManager1 | manager/ | Gestão de viagens, apólice e semáforo |
| Driver | DriverViewController | driver/ | Viagem ativa, navegação por voz |
| Histórico | HistoricViewController | historic/ | Histórico por apólice |
| Checklist | CheckListViewController · ChecklistItemsViewController | checklist/ | Inspeção veicular pré/pós |
| Checklist Sistemico | SistemicListVC · SistemicScheduleVC · SistemicCadVC | sistemic/ | Inspeção IoT, máquina de estados P/I/F/C |
| Desconsideração | DisregardViewController · DisregardCadViewController | disregard/ | Registro de alertas desconsiderados |
| Notificações | NotificationViewController · NotificationTabViewController | notification/ | Push FCM, cache, filtros |
| Relatórios | ReportViewController | reports/ | Temperatura, gráficos, export |
| Configurações | ConfigViewController · ChangePasswordViewController | config/ | Empresa, permissões, logout, troca de senha |
| Socket / WebSocket | TCPClient · WebSocketService | socket/ | Socket TCP MONIAPP + WebSocket de eventos |
| Background Tasks | BackgroundTask | background/ | BGTaskScheduler, location updates, FCM em background |
Paridade com Android
Todos os módulos iOS espelham o backend v1 (
api2.monisat.online). Para equivalência de classes entre plataformas, consulte Paridade Android/iOS.
Próximos passos
- Cada link da tabela acima leva à documentação detalhada de um módulo iOS.
- A estrutura de cada página espelha o padrão Android (badges, fluxo passo-a-passo, endpoints, tabelas de classes).
- Comece pela Arquitetura iOS para entender o stack e padrões usados.