Files
cuidamais/documentacao_projecto/historico_alteracoes.md

62 lines
4.1 KiB
Markdown

# Histórico de Alterações e Progresso do Projeto - Cuida+
Este documento detalha todas as principais funcionalidades e correções implementadas no projeto Cuida+ pelo assistente de IA.
## Sumário
1. [Agendamento de Múltiplos Horários para Medicamentos](#1-agendamento-de-múltiplos-horários-para-medicamentos)
2. [Pesquisa de Medicamentos com Autocomplete (Firebase)](#2-pesquisa-de-medicamentos-com-autocomplete-firebase)
3. [Integração de Médicos do Firebase](#3-integração-de-médicos-do-firebase)
4. [Refatoração do Ecrã Principal (Home)](#4-refatoração-do-ecrã-principal-home)
5. [Correções Diversas (Login, Email, Crashes)](#5-correções-diversas-login-email-crashes)
6. [Triage AI - Ajustes de Rigidez](#6-triage-ai-ajustes-de-rigidez)
7. [Fase Final: Melhorias Estratégicas e Polimento](#7-fase-final-melhorias-estratégicas-e-polimento)
---
### 1. Agendamento de Múltiplos Horários para Medicamentos
**Data:** 15 de Abril de 2026
- **Funcionalidade:** Agora é possível escolher mais de um horário para o mesmo medicamento.
- **Implementação:**
- Uso de `ChipGroup` no layout `dialog_add_medication.xml` para exibir os horários.
- No `MedicationDialog.java`, implementamos a gestão de uma lista de horários persistida como uma String separada por vírgulas.
- Atualização do `MedicationFragment.java` para agendar alarmes individuais para cada horário, garantindo que todos sejam disparados.
- Gestão automática de cancelamento de alarmes ao editar horários ou eliminar medicamentos.
### 2. Pesquisa de Medicamentos com Autocomplete (Firebase)
- **Funcionalidade:** Ao digitar o nome de um medicamento, a app sugere nomes de medicamentos reais vindos do Firebase.
- **Implementação:**
- Ligação ao Realtime Database (Firebase).
- Filtragem em tempo real enquanto o utilizador escreve.
- População automática da dosagem sugerida nas notas.
### 3. Integração de Médicos do Firebase
- **Funcionalidade:** Substituição de médicos estáticos pelos médicos registados no Firebase com a role 'medico'.
- **Implementação:** Consulta ao banco de dados para listar apenas profissionais autorizados na agenda e na listagem.
### 4. Refatoração do Ecrã Principal (Home)
- **Funcionalidade:** Melhoria da navegação e layout.
- **Implementação:**
- Saudação personalizada ("Olá, [Nome]!").
- Centralização da visualização da agenda como foco principal.
- Reordenação da barra de navegação inferior (Agenda no meio).
- Remoção de headers desnecessários para um visual mais premium.
### 5. Correções Diversas (Login, Email, Crashes)
- **Email de Password:** Correção do fluxo onde os emails de recuperação não estavam a chegar, garantindo o correto envio via Firebase Auth.
- **Crashes:** Identificação e correção de null pointers no carregamento de dados do utilizador.
### 6. Triage AI - Ajustes de Rigidez
- **Funcionalidade:** Ajuste no tom de voz da IA e deteção de sintomas graves.
- **Implementação:** Redução de respostas prolixas, tornando-as mais diretas. Adição de um gatilho para mostrar o botão "Encontrar Hospital Próximo" ao detetar palavras de dor intensa.
### 7. Fase Final: Melhorias Estratégicas e Polimento
**Data:** 15 de Abril de 2026
- **Login Biométrico:** Integração com a biblioteca `androidx.biometric`. O utilizador agora pode autenticar-se em 1 segundo com impressões digitais ou face ID após o primeiro login manual.
- **Relatório PDF de Saúde:** No ecrã de Perfil, adicionamos um exportador que gera um documento A4 com todos os dados de saúde do utilizador, permitindo o partilha direta via Intent.
- **Persistência Offline Firestore:** Agora a app permite ver o histórico de consultas e medicamentos sem sinal de internet, através de cache inteligente.
- **Histórico de Triagens IA:** Implementamos uma nova funcionalidade que guarda cada resposta da triagem IA do SNS24 no Firestore na coleção `triagens`.
- **Notificações de Consultas:** Melhoramos o `ScheduleViewModel` para disparar lembretes 24 horas e 30 minutos antes das consultas médicas.
---
*Este documento foi gerado automaticamente pelo assistente de IA para documentar o progresso do desenvolvimento.*