A visita guiada é uma ferramenta intuitiva e educativa de treinamento em regulação médica ambulatorial.
Este projeto é um sistema de gestão administrativa desenvolvido para gerenciar usuários e realizar operações de autenticação, aprovação, bloqueio e gerenciamento de usuários. Inicialmente, o sistema utiliza um banco de dados em formato JSON, mas pode ser facilmente migrado para o MongoDB Atlas para maior escalabilidade e robustez.
- HTML
- CSS
- Bootstrap 4.5.2
- JavaScript
- Node.js
- Express.js
- Mongoose (para MongoDB)
- Axios
- Logo
- Título
- Botão: Acessar Painel
- Espaço para Imagens
- Rodapé
- Logo
- Título
- Formulário de Login
- Trocar Senha
- Rodapé
- Título
- Formulário de Troca de Senha
- Rodapé
- Logo
- Título
- Formulário de Cadastro (Nome Completo, Senha, CPF, CRM, Especialidade, Idade, Email)
- Rodapé
- Logo
- Título
- Visão de Todos os Usuários
- Editar Página de Ensino de Procedimentos (Tutoriais)
- Página de Questionários para Testes dos Procedimentos
- Editar Informações dos Usuários
- Aprovar Novo Usuário no Sistema
- Funções de Bloquear, Aprovar, Trocar Senha e Editar Dados dos Usuários
- GET /api/users: Retorna todos os usuários.
- POST /api/users: Cria um novo usuário.
- PUT /api/users/:id: Atualiza um usuário existente.
- DELETE /api/users/:id: Deleta um usuário.
- POST /api/users/login: Autentica um usuário.
- POST /api/users/reset-password: Reseta a senha de um usuário.
- Autenticação de usuários utilizando email e senha.
- Verificação de aprovação e bloqueio do usuário antes do login.
- Criação de novos usuários com informações como nome completo, senha, CPF, CRM, especialidade, idade e email.
- Usuários novos precisam ser aprovados por um administrador antes de poderem fazer login.
- Administradores podem aprovar novos usuários, permitindo que eles façam login no sistema.
- Administradores podem bloquear usuários para impedir que eles façam login.
- Administradores podem desbloquear usuários anteriormente bloqueados.
- Administradores podem resetar a senha de qualquer usuário.
- Administradores podem editar as informações dos usuários, incluindo nome completo, email e papel (role).
Os dados dos usuários são armazenados em um arquivo JSON localizado em backend/data/users.json
. A estrutura do usuário é a seguinte:
{
"id": 1,
"username": "Administrador Root",
"email": "[email protected]",
"password": "adm",
"role": "admin",
"cpf": "12345678900",
"crm": "12345",
"especialidade": "Administração",
"idade": 35,
"approved": true
}