Esse é um projeto full-stack desenvolvido em ReactJS, Sass, Java Spring, Springsecurity e JWT.
O código foi desenvolvido inicialmente como um trabalho universitário da Universidade Cidade de São Paulo.
-
Clone o repositório
git clone https://github.com/Scoorpioon/analiseeprojetodesistemas-bluefenix.git
-
Instale as dependências do React com NPM ou yarn
npm install sass npm install @reduxjs/toolkit react-redux npm install react-router-dom
-
Instale PostgreSQL
- Para a API, inicie-a com o Maven. Ela estará disponível na porta localhost:8080
- Para o React, inicie-o com o comando npm run dev. Ele estará disponível na porta localhost:5173
A API dispõe dos seguintes endpoints:
POST /pacientes/criar - Registra um paciente
POST /consultas/criar - Registra uma consulta em uma determinada data
POST /auth/atendente/cadastro - Registra um atendente
GET /consultas/buscarConsultas/{data} - Busca consultas específicas por data, no formato YYYY-MM-DD
GET /api/fila/encontrar/{data} - Busca a fila específica da data informada, no formato YYYY-MM-DDO Front-end possui os seguintes caminhos:
/ - Página inicial
/registro/paciente - Página de cadastro do paciente
/registro/atendente - Página de cadastro do atendente
/login/paciente - Página de login do paciente
/login/atendente - Página de login do atendente
/painelDoAtendente - Tela de gerenciamento da fila do dia atual, para os atendentes.
/fila/{data} - Tela da fila do dia atual, no qual pode ser acessada pelos usuários que possuem cadastro na fila (em desenvolvimento)
/consulta/criar - Página do atendente para criação de consultasA API utiliza autenticação para controlar permissões. No entanto, atualmente está em desenvolvimento e não funcionando devidamente.
USER -> Cargo atual para paciente
ADMIN -> Cargo atual para atendente
No momento, qualquer cargo pode fazer requisições totais na API.
Esse projeto utiliza PostgreSQL para fazer o armazenamento dos dados do projeto.
Contribuições são mais do que bem-vindas neste projeto! Você pode postar suas sugestões nos issues ou solicitar um pull request no projeto. Por favor, crie uma nova branch para subir alterações.