feat: setup do banco com Prisma, tabela unificada e rotas de login/cadastro
O que está funcionando:
- Docker com MySQL rodando
- Prisma 7 configurado corretamente com @prisma/adapter-mariadb
- Servidor Express com rotas de autenticação
- Hash de senha com bcrypt
- JWT para controle de sessão
- Middleware de verificação de token e perfil
O schema tem só a tabela Pessoa, que é o ponto de partida. O que está bem modelado:
- email e matricula com @unique — evita duplicatas
- tipo com enum (GESTOR, PROFESSOR, ALUNO) — controle de perfil limpo
- criado_em com @default(now())
O que ainda falta modelar para o sistema ficar completo, olhando no documento de requisitos:
- Disciplina — com vínculo a professor e monitores
- Monitor — tabela de vínculo entre Pessoa e Disciplina
- Slot — horários de disponibilidade com formato, local, capacidade, recorrência
- Agendamento — vínculo entre aluno e slot, com status
- Presenca — registro após a sessão
- Notificacao — centro de notificações internas

