# 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.*