How ycsbertolino-source/projeto_integrador_cti_nexus works
CTI Nexus lets users upload customer spreadsheets, review validation outcomes, and access processed dashboards and reports. The Java backend handles authentication, authorization, validation, and forwarding; the Python service cleans and analyzes accepted rows and persists batches and dashboard snapshots in PostgreSQL. The frontend also supports registration and administrator approval. The README documents the cross-service flow; some controller and dashboard wiring was not sampled, so those links are shown only where documented or left unverified.
Main entry points: api.js API client · main.py Batch orchestration · App.vue Vue application · UploadService.java Upload orchestration
Components 23
User interface
- Vue application
frontend/src/App.vue - Upload and reports
frontend/src/views - Login and users
frontend/src/views - API client
frontend/src/services/api.js
Java application
- Authentication API
backend/src/main/java/com/cti/provedor/controller/AuthController.java - Account service
backend/src/main/java/com/cti/provedor/service/AuthService.java - User administration
backend/src/main/java/com/cti/provedor/controller/AdminUsuarioController.java - User management
backend/src/main/java/com/cti/provedor/service/UsuarioService.java - User repository
backend/src/main/java/com/cti/provedor/repository/UsuarioRepository.java - Upload API
backend/src/main/java/com/cti/provedor/controller/UploadController.java - Upload orchestration
backend/src/main/java/com/cti/provedor/service/UploadService.java - Spreadsheet validation
backend/src/main/java/com/cti/provedor/service/ClienteValidacaoService.java - Python ETL client
backend/src/main/java/com/cti/provedor/service/PythonEtlService.java - Dashboard and history API
backend/src/main/java/com/cti/provedor/controller/DashboardController.java - Dashboard queries
backend/src/main/java/com/cti/provedor/service/DashboardService.java
Python analytics
- ETL HTTP API
analytics-python/api.py - Batch orchestration
analytics-python/main.py - Row cleaning
analytics-python/limpeza.py - Statistics and insights
analytics-python/analise.py - Batch persistence
analytics-python/banco.py
Persistent data
- PostgreSQL
Other components
- User
- Administrator
Connections 24
- User → Vue application: uses
README.md - Administrator → Vue application: manages users
README.md - Vue application → Upload and reports: presents
- Vue application → Login and users: presents
- Upload and reports → API client: requests data
- Login and users → API client: requests access
- API client → Upload API: calls
- API client → Authentication API: calls
- API client → Dashboard and history API: calls
- Authentication API → Account service: delegates
backend/src/main/java/com/cti/provedor/controller/AuthController.java - Account service → User repository: reads and writes
backend/src/main/java/com/cti/provedor/service/AuthService.java - User administration → User management: delegates
backend/src/main/java/com/cti/provedor/controller/AdminUsuarioController.java - User management → User repository: reads and writes
backend/src/main/java/com/cti/provedor/service/UsuarioService.java - Upload API → Upload orchestration: delegates
- Upload orchestration → Spreadsheet validation: validates rows
backend/src/main/java/com/cti/provedor/service/UploadService.java - Upload orchestration → Python ETL client: forwards valid rows
backend/src/main/java/com/cti/provedor/service/UploadService.java - Python ETL client → ETL HTTP API: sends batch
README.md - ETL HTTP API → Batch orchestration: dispatches batch
- Batch orchestration → Row cleaning: cleans rows
analytics-python/main.py - Batch orchestration → Statistics and insights: calculates statistics
analytics-python/main.py - Batch orchestration → Batch persistence: records results
analytics-python/main.py - Batch persistence → PostgreSQL: persists batches
README.md - Dashboard and history API → Dashboard queries: delegates
- Dashboard queries → PostgreSQL: reads snapshots
README.md