O Sistema de Matrícula é uma aplicação full-stack desenvolvida com React no front-end e Java Spring Boot no back-end. O sistema permite que alunos se inscrevam em diversas matérias, onde um aluno pode estar inscrito em várias matérias e uma matéria pode ter vários alunos.
- Preferência na Inscrição: O sistema implementa um mecanismo de prioridade para inscrição de alunos em matérias quando a capacidade máxima é atingida.
- Vagas Disponíveis: Se houver vagas, o aluno é adicionado normalmente.
- Prioridade e Desempenho: Caso contrário, o sistema verifica se o novo aluno possui prioridade ou uma nota geral maior que o aluno com a menor nota inscrito.
- Critérios de Prioridade: A prioridade é dada aos alunos próximos de finalizar o curso (3 ou mais anos de curso).
- Substituição: Se o novo aluno atender a essas condições, ele substitui o aluno com a menor nota; caso contrário, a inscrição é recusada.
- Esse mecanismo garante que os alunos com maior necessidade ou melhor desempenho acadêmico tenham prioridade nas vagas disponíveis.
- HTML
- CSS
- React
- Java Spring Boot
- Hibernate
- JPA
- PostgreSQL
- Inscrição de Alunos: Os alunos podem se inscrever em várias matérias.
- Gerenciamento de Matérias: Cada matéria pode ter vários alunos inscritos, respeitando a capacidade máxima definida.
- Visualizar Matérias: Acesse a lista de matérias para ver a disponibilidade de vagas.
- Clonar o Repositório
git clone https://github.com/eduardoSantiag0/Sistema-Inscricao-De-Materia;
cd Sistema-Inscricao-De-Materias
- Iniciar a Aplicação com Docker
docker-compose up --build
-
Acessar a Aplicação: Abra o navegador e acesse http://localhost:3000
-
Cadastro de Alunos: Preencha o formulário com os dados do aluno e inscreva-se nas matérias.
-
Visualizar Matérias: Acesse a lista de matérias para ver a disponibilidade de vagas.