... | ... | @@ -5,23 +5,43 @@ |
|
|
|
|
|
## Descrição
|
|
|
|
|
|
Este banco de dados é projetado para gerenciar informações relacionadas à plataforma de saúde Amparo, que envolve médicos, pacientes, planos de saúde, medicamentos, informações médicas, agendamento de consultas, exames e interações sociais entre pacientes por meio de postagens e votos em postagens. Aqui está uma breve descrição das tabelas e de suas relações:
|
|
|
* User: Armazena informações de usuários, incluindo médicos e pacientes, com um identificador único (UUID). Os usuários têm campos como email, senha criptografada, nome, número de celular e podem ter uma imagem de perfil. Também há um campo booleano para determinar se o usuário é anônimo.
|
|
|
* Doctor: Mantém informações específicas de médicos, como CRM (registro médico), UF (unidade federativa), e possui uma relação com a tabela de usuários para identificação única.
|
|
|
* HealthPlan: Armazena detalhes sobre planos de saúde, incluindo nome e imagem do plano.
|
|
|
* DoctorHealthPlan: Registra a associação entre médicos e planos de saúde, permitindo que médicos aceitem ou trabalhem com planos específicos.
|
|
|
* Patient: Armazena informações de pacientes, incluindo CPF (Cadastro de Pessoa Física), com relação à tabela de usuários para identificação única.
|
|
|
* Information: Mantém informações médicas e de saúde, como título, link, imagem e descrição, associadas a médicos.
|
|
|
* DoctorPatient: Registra a relação entre médicos e pacientes, permitindo que médicos tenham pacientes atribuídos.
|
|
|
* Appointment: Controla agendamentos de consultas entre médicos e pacientes, com informações de data e hora.
|
|
|
* Medicine: Armazena detalhes sobre medicamentos, incluindo nome e folheto informativo.
|
|
|
* Dosage: Registra informações sobre dosagens de medicamentos, incluindo a quantidade, hora inicial, frequência e data final, associadas a pacientes e medicamentos.
|
|
|
* Incompatibility: Mantém informações sobre incompatibilidades entre medicamentos, com um campo de severidade e descrição.
|
|
|
* Exam: Gerencia informações de exames médicos, incluindo descrição, data do exame e status de conclusão, com associação a pacientes.
|
|
|
* Post: Permite que pacientes criem postagens relacionadas à saúde, com conteúdo, data de criação e a capacidade de serem relacionadas a outras postagens. Os pacientes podem votar nas postagens (curtir ou não gostar), e as postagens podem ser marcadas como principais ou não.
|
|
|
* Vote: Registra os votos (curtir ou não gostar) dados pelos pacientes nas postagens, com relação à tabela de postagens e pacientes.
|
|
|
## Banco de Dados Amparo
|
|
|
|
|
|
Este banco de dados PostgreSQL é projetado para gerenciar informações relacionadas à plataforma de saúde Amparo, que envolve médicos, pacientes, planos de saúde, medicamentos, informações médicas, agendamento de consultas, exames e interações sociais entre pacientes por meio de postagens e votos em postagens.
|
|
|
|
|
|
### Tabelas e Relações
|
|
|
|
|
|
- **User**: Armazena informações de usuários, incluindo médicos e pacientes, com um identificador único (UUID). Os usuários têm campos como email, senha criptografada, nome, número de celular e podem ter uma imagem de perfil. Também há um campo booleano para determinar se o usuário é anônimo.
|
|
|
|
|
|
- **Doctor**: Mantém informações específicas de médicos, como CRM (registro médico) e UF (unidade federativa), e possui uma relação com a tabela de usuários para identificação única.
|
|
|
|
|
|
- **HealthPlan**: Armazena detalhes sobre planos de saúde, incluindo nome e imagem do plano.
|
|
|
|
|
|
- **DoctorHealthPlan**: Registra a associação entre médicos e planos de saúde, permitindo que médicos aceitem ou trabalhem com planos específicos.
|
|
|
|
|
|
- **Patient**: Armazena informações de pacientes, incluindo CPF (Cadastro de Pessoa Física), com relação à tabela de usuários para identificação única.
|
|
|
|
|
|
- **Information**: Mantém informações médicas e de saúde, como título, link, imagem e descrição, associadas a médicos.
|
|
|
|
|
|
- **DoctorPatient**: Registra a relação entre médicos e pacientes, permitindo que médicos tenham pacientes atribuídos.
|
|
|
|
|
|
- **Appointment**: Controla agendamentos de consultas entre médicos e pacientes, com informações de data e hora.
|
|
|
|
|
|
- **Medicine**: Armazena detalhes sobre medicamentos, incluindo nome e folheto informativo.
|
|
|
|
|
|
- **Dosage**: Registra informações sobre dosagens de medicamentos, incluindo a quantidade, hora inicial, frequência e data final, associadas a pacientes e medicamentos.
|
|
|
|
|
|
- **Incompatibility**: Mantém informações sobre incompatibilidades entre medicamentos, com um campo de severidade e descrição.
|
|
|
|
|
|
- **Exam**: Gerencia informações de exames médicos, incluindo descrição, data do exame e status de conclusão, com associação a pacientes.
|
|
|
|
|
|
- **Post**: Permite que pacientes criem postagens relacionadas à saúde, com conteúdo, data de criação e a capacidade de serem relacionadas a outras postagens. Os pacientes podem votar nas postagens (curtir ou não gostar), e as postagens podem ser marcadas como principais ou não.
|
|
|
|
|
|
- **Vote**: Registra os votos (curtir ou não gostar) dados pelos pacientes nas postagens, com relação à tabela de postagens e pacientes.
|
|
|
|
|
|
Este banco de dados é projetado para oferecer suporte a uma variedade de operações relacionadas à saúde, desde o gerenciamento de informações médicas até a comunicação e interação entre médicos e pacientes por meio de agendamento de consultas e interações sociais na forma de postagens e votos.
|
|
|
|
|
|
|
|
|
## Sumário
|
|
|
|
|
|
- [Modelagem](#modelagem)
|
... | ... | |