Uma descrição rápida do meu sistema seria: existem 2 usuários: usuários e admin.
O usuário se cadastra no site. Após o cadastro, o sistema gerará um código QR para o usuário. O usuário então vai ser vacinado, e após a vacinação, alguém poderá escanear seu código QR e o status do usuário será atualizado como vacinado com a 1ª dose da vacina. As informações adicionais incluirão também, a data da 2ª dose de vacinação, o médico responsável pela vacinação, data e hora da vacinação. O usuário também pode dar seu feedback sobre os efeitos colaterais por dosagem.
Do lado do administrador:
- capaz de fazer login
- eles terão um relatório no gráfico para cada uma das vacinas e a porcentagem de quantas foram vacinadas com esses tipos de vacinas.
- gráfico de efeitos colaterais por dosagem de cada uma das vacinas
- adicionar, editar e excluir um médico
- adicionar, editar, excluir uma vacina
- também incluirá Analytics para a frequência dos usuários
- lista desses usuários
Este é o design de banco de dados que eu criei até agora e estou precisando de ajuda se isso estiver correto e estou um pouco perdido com a entidade admin aqui.
A autenticação e autorização para a lógica de administração devem ser tratadas pela aplicação, então é natural que a
Admin
entidade se sinta desconectada do seu domínio. Você pode expandir para outras entidades, comoPermission
eGroup
, para ter um controle refinado sobre quais permissões exatas um administrador ou grupo de administradores pode ter. A aplicação desses, no entanto, estará no lado da aplicação.O resto do seu design parece bastante coerente. Mantem!