O educa-floripa tem a finalidade de gerenciar as turmas, cursos, funcionários, notas e alunos de uma instituição de ensino. O programa pode ser utilizado tanto pelos alunos quando pelos funcionários da escola, tendo diversas restrições a depender de qual usuário está utilizando o sistema.
- Clone esse repositório do Github e abra-o em uma IDE de sua preferência (garante que você está na branch main);
git clone https://github.com/ArthurFerreiraBorba/educa-floripa.git
-
Crie um banco de dados PostgreSQL em sua máquina;
-
No arquivo application.properties substitui as partes o username, password e url pelos do banco de dados criado anteriormente;
-
Abra o Postman e importe este arquivo (ele possui todos os endpoints do projeto);
-
Apos todos esses passos o programa já está pronto para uso, aproveite!
- ADM: pode acessar tudo.
- PEDAGOGICO: pode acessar tudo sobre turma, curso, professor e aluno, não pode deletar dados.
- RECRUITER: pode acessar tudo sobre professor, não pode deletar dados.
- PROFESSOR: pode acessar tudo sobre notas, não pode deletar dados.
- ALUNO: apenas acessa as suas próprias notas e a pontuação total pessoal, não pode deletar dados.
- Id: 1
- Login: admin
- Senha: 1234
Todos os endpoints menos o usuarios/login
requerem um toquem de acesso.
usuário
Este endpoint requer as informações de um usuário para cria um novo usuário.
{
"login": "login do usuário",
"senha": "senha do usuário",
"papel": "nome ou id do papel"
}
Este endpoint requer o login e senha de um usuário para retorna um token de acesso dele.
{
"login": "login do usuário",
"senha": "senha do usuário"
}
aluno
Este endpoint busca um aluno através do id.
O campo {id} deve ser substituído pelo id do aluno.
Este endpoint retorna uma lista com todos os alunos.
Este endpoint retorna a pontuação do aluno que fez a requisição.
Este endpoint requer as informações de um aluno para cria um novo aluno.
Deve der colocado o id do usuário no campo "usuario";
Deve der colocado o id da turma no campo "turma".
{
"nome": "nome do aluno",
"dataNascimento": "2000-05-11",
"turma": 1,
"usuario": 1
}
Este endpoint deleta um aluno através do id.
O campo {id} deve ser substituído pelo id do aluno.
Este endpoint atualiza as informações de um aluno através do id.
O campo {id} deve ser substituído pelo id do aluno.
Deve der colocado o id do usuário no campo "usuario";
Deve der colocado o id da turma no campo "turma".
{
"nome": "novo nome do docente",
"dataNascimento": "2000-05-11",
"turma": 1,
"usuario": 1
}
docente
Este endpoint busca um docente através do id.
O campo {id} deve ser substituído pelo id do docente.
Este endpoint retorna uma lista com todos os docentes.
Este endpoint requer as informações de um docente para cria um novo docente.
Deve der colocado o id do usuário no campo "usuario".
{
"nome": "nome do docente",
"usuario": 1
}
Este endpoint deleta um docente através do id.
O campo {id} deve ser substituído pelo id do docente.
Este endpoint atualiza as informações de um docente através do id.
O campo {id} deve ser substituído pelo id do docente.
Deve der colocado o id do usuário no campo "usuario".
{
"nome": "novo nome do docente",
"usuario": 1
}
curso
Este endpoint busca um curso através do id.
O campo {id} deve ser substituído pelo id do curso.
Este endpoint retorna uma lista com todos os cursos.
Este endpoint requer as informações de um curso para cria um novo curso.
{
"nome": "nome do curso"
}
Este endpoint deleta um curso através do id.
O campo {id} deve ser substituído pelo id do curso.
Este endpoint atualiza as informações de um curso através do id.
O campo {id} deve ser substituído pelo id do curso.
Deve der colocado o id do usuário no campo "usuario".
{
"nome": "novo nome do curso"
}
turma
Este endpoint busca um turma através do id.
O campo {id} deve ser substituído pelo id do turma.
Este endpoint retorna uma lista com todas as turmas.
Este endpoint requer as informações de uma turma para cria um novo turma.
Deve ser colocado o id do curso no campo "curso";
Deve ser colocado o id de docente no campo "professor" (o docente deve possuir o usuário com o papel de PROFESSOR).
{
"nome": "nome da turma",
"curso": 1,
"professor": 1
}
Este endpoint deleta uma turma através do id.
O campo {id} deve ser substituído pelo id do turma.
Este endpoint atualiza as informações de uma turma através do id.
O campo {id} deve ser substituído pelo id do turma.
Deve der colocado o id do curso no campo "curso";
Deve der colocado o id de docente no campo "professor" (o docente deve possuir o usuário com o papel de PROFESSOR).
{
"nome": "novo nome da turma",
"curso": 1,
"professor": 1
}
matéria
Este endpoint busca uma matéria através do id.
O campo {id} deve ser substituído pelo id do matéria.
Este endpoint retorna uma lista com todas as matérias.
Este endpoint busca matérias através de curso.
O campo {idCurso} deve ser substituído pelo id do curso.
Este endpoint requer as informações de uma matéria para cria um novo matéria.
Deve der colocado o id do curso no campo "curso".
{
"nome": "nome da matéria",
"curso": 1
}
Este endpoint deleta uma matéria através do id.
O campo {id} deve ser substituído pelo id do matéria.
Este endpoint atualiza as informações de uma matéria através do id.
O campo {id} deve ser substituído pelo id da matéria.
Deve der colocado o id do curso no campo "curso".
{
"nome": "novo nome da matéria",
"curso": 1
}
nota
Este endpoint busca uma nota através do id.
O campo {id} deve ser substituído pelo id da nota.
Este endpoint retorna uma lista com todas as notas.
Este endpoint busca notas através de aluno.
O campo {idAluno} deve ser substituído pelo id do aluno.
Este endpoint requer as informações de uma nota para cria um novo nota.
Deve der colocado o id do aluno no campo "aluno";
Deve der colocado o id da matéria no campo "materia".
{
"valor": 100,
"aluno": 1,
"materia": 1
}
O curso da turma do aluno deve ser o mesmo curso da matéria;
O professor que fez a requisição deve estar na mesma turma que o aluno.
Este endpoint deleta um nota através do id
O campo {id} deve ser substituído pelo id do nota
Este endpoint atualiza as informações de uma nota através do id
O campo {id} deve ser substituído pelo id do nota
Deve der colocado o id do aluno no campo "aluno";
Deve der colocado o id da matéria no campo "materia".
{
"valor": 50.5,
"aluno": 1,
"materia": 1
}
O curso da turma do aluno deve ser o mesmo curso da matéria;
O professor que fez a requisição deve estar na mesma turma que o aluno.