Aqui estão algumas entidades principais que seu banco de dados deve ter, com sugestões de atributos:
Entidade | Atributos principais |
---|---|
Usuario | id, nome, email, senha, tipo (U1, U2, U3), especialidade (se for U1), preferĂŞncias audiovisuais, disponibilidade |
Evento | id, tĂtulo, descrição, data, linkMeet, status, tipoDeProduto, temaSazonal |
Produto | id, tipo (palestra, vĂdeo, podcast...), link ou arquivo, gera_certificado, evento_id |
Etapa | id, nome, tipo (pré-evento, execução...), prazo, evento_id |
Acao | id, descrição, status, etapa_id |
Inscricao | id, usuario_id (U2), evento_id, status |
Presenca | id, usuario_id (U2), evento_id, presente (bool) |
Certificado | id, usuario_id, evento_id, data_emissao |
Feedback | id, usuario_id, evento_id, nota, comentario |
Notificacao | id, usuario_id, mensagem, data_envio, tipo |
EstatisticaEvento | id, evento_id, acessos, inscritos, presentes, media_avaliacao |
1:N com Inscricao
→ Um usuário U2 pode se inscrever em vários eventos.
→ Uma inscrição pertence a apenas um usuário.
1:N com Presenca
→ Um usuário pode ter presença registrada em vários eventos.
1:N com Certificado
→ Um usuário pode ter vários certificados, um por evento.
1:N com Feedback
→ Um usuário pode avaliar vários eventos.
1:N com Notificacao
→ Cada notificação está associada a um usuário.
1:N com Evento (se U1 for palestrante)
→ Um médico (U1) pode ministrar vários eventos.
1:N com Produto
→ Um evento pode ter vários produtos (vĂdeos, podcasts...).
1:N com Etapa
→ Cada evento tem seu próprio fluxo de etapas.
1:N com Inscricao
→ Um evento pode ter muitos inscritos (U2).
1:N com Presenca
→ Um evento terá registro de presença de vários usuários.
1:N com Certificado
→ Um evento pode gerar certificados para os participantes.
1:N com Feedback
→ Um evento pode receber múltiplas avaliações.