Files
cuidamais/documentacao_projecto/mapa_ficheiros_completo.md

54 lines
3.1 KiB
Markdown

# Mapa de Ficheiros e Funções - Cuida+
Este documento é um inventário completo de todos os ficheiros da aplicação e as suas funções específicas.
## 📦 Estrutura de Pastas e Ficheiros
### 🔵 Interface de Utilizador (`ui/`)
- **`auth/`**: Gestão de entrada e registo.
- `LoginActivity.java`: Ecrã de login com suporte para biometria (Fingerprint/Face ID).
- `RegisterActivity.java`: Criação de nova conta.
- `ForgotPasswordActivity.java`: Solicitação de recuperação de password.
- `ResetPasswordActivity.java`: Definição de nova password após email.
- **`home/`**: Centro de informações.
- `HomeFragment.java`: Exibe saudação, foto de perfil e o próximo medicamento agendado.
- **`medication/`**: Gestão completa de remédios.
- `MedicationFragment.java`: Lista todos os medicamentos e gere os alarmes.
- `MedicationDialog.java`: Janela para adicionar/editar (com múltiplos horários e pesquisa Firebase).
- `MedicationViewModel.java`: Faz a ponte entre o Firestore e a interface.
- `MedicationAdapter.java`: Desenha cada item da lista de medicação.
- `ComprimidoRecyclerAdapter.java`: Gere a lista de sugestões de nomes de medicamentos.
- **`appointments/`**: Lista de consultas médicos.
- `AppointmentsFragment.java`: Visualização da agenda pessoal do utilizador.
- `AppointmentsViewModel.java`: Gere os dados das consultas.
- `AppointmentAdapter.java`: Desenha o item de cada consulta.
- **`schedule/`**: Agendamento de novas consultas.
- `ScheduleAppointmentFragment.java`: Escolha de médico e horário.
- `ScheduleViewModel.java`: Verifica slots disponíveis e agenda lembretes de consulta (24h/30m).
- `TimeSlotAdapter.java`: Lista as horas de marcação disponíveis.
- **`profile/`**: Perfil do utilizador.
- `ProfileFragment.java`: Permite mudar foto, dados e exportar relatórios de saúde (PDF).
- **`sns24/`**: Triagem Inteligente.
- `Sns24Fragment.java`: Chat IA para avaliação e registo de histórico de triagens no Firestore.
### 🟢 Dados e Modelos (`data/model/`)
- `User.java`: Representa a conta do utilizador.
- `Medication.java`: Dados de medicação (nome, horários, dosagem).
- `Appointment.java`: Dados da consulta (médico, data, hora).
- `Comprimido.java`: Objeto simples para os nomes sugeridos na pesquisa.
### 🟠 Serviços e Utilidades (`services/` & `utils/`)
- `AlarmScheduler.java`: Lógica centralizada para marcar alarmes no sistema Android.
- `AlarmReceiver.java`: O código que corre quando o alarme dispara.
- `NotificationHelper.java`: Cria o canal e a mensagem de notificação.
- `Gemini.java`: Integração com a Google AI para o diagnóstico inteligente.
### 🔴 Configuração (`/`)
- `MainActivity.java`: Contentor principal, gere navegação e ativa a persistência offline do Firestore.
- `AndroidManifest.xml`: Registo de atividades, permissões (Alarme, Localização) e providers.
- `build.gradle`: Bibliotecas (Firebase, Biometrics, IA).
- `res/xml/file_paths.xml`: Configuração de segurança para partilha de ficheiros (PDF).
---
*Mapa Completo da Aplicação - Cuida+ (Atualizado Abril 2026)*