Aplicação web com soluções de gerenciamento de problemas voltados para desenvolvedores divididos em grupos solucionadores
Clara Thais, Arlindo Soares, Renan Lima, Yuri Campos, Mariana Duarte
https://balsamiq.cloud/sm9h52j/pbcq60x/r6B5C
https://ticket-io-front-git-dev-jrmsrs.vercel.app
- Node.js instalado na máquina
- MySQL/MariaDB (scripts)
- Conta no ViaCEP
- (opcional*) Conta Gmail com SMTP e senha de aplicativo ativados
- (opcional*) Conta gratuita Cron-Job.org, com um Job que realize um api request por minuto para fazer o servidor na Vercel realizar tarefas automaticas
- (opcional*) Banco de dados Firebase RealTimeDatabase secundário pra guardar e-mails que receberão relatórios gerenciais num array (pra receber uma query automática por minuto sem que afete o banco de dados principal)
* apenas a rota http://localhost:5000/report não irá funcionar sem esses requisitos
Na pasta do projeto, execute o comando:
npm install
O Node.js instalará todas as dependências e frameworks listados em package.json.
Crie um arquivo '.env'
cat .env
Coloque as variáveis de ambiente locais nesse arquivo seguindo o template:
MYSQL_HOST=
MYSQL_PORT=
MYSQL_DATABASE=
MYSQL_USER=
MYSQL_PASSWORD=
# Credenciais SMTP para envio de e-mails de relatórios gerenciais
SMTP_USER=
SMTP_PASS=
# Credenciais Firebase RealTimeDatabase
RTDB_ENDPOINT=
# Credenciais Cron-Job.org
CRON_JOB_APIKEY=
CRON_JOB_ENDPOINT=
O projeto estará pronto para ser compilado.
Na pasta do projeto, execute o comando:
npm start
O servidor rodará em http://localhost:5000/X. Irá recarregar e se reconectar com o banco sempre que houver mudança em algum arquivo.
- Obter usuários:
(get)/user
- Obter usuário por ID:
(get)/user/UUID
- Obter usuário por e-mail:
(get)/user?email=EMAIL
- Cadastrar usuário
(post)/user
- Alterar usuário
(patch)/user/UUID
- Remover usuário
(delete)/user/UUID
- Obter grupos solucionadores
(get)/group
- Obter grupo solucionador
(get)/group/UUID
- Obter membros de um grupo solucionador
(get)/group/UUID?members=true
- Cadastrar grupo solucionador
(post)/group
- Alterar grupo solucionador
(patch)/group/UUID
- Remover grupo solucionador
(delete)/group/UUID
- Obter TPs
(get)/issue
- Obter TP
(get)/issue/UUID
- Cadastrar TP
(post)/issue
- Alterar TP
(patch)/issue/UUID
- Remover TP
(delete)/issue/UUID
- Obter Soluções
(get)/solution
- Obter Solução
(get)/solution/UUID
- Cadastrar Solução
(post)/solution
- Alterar Solução
(patch)/solution/UUID
- Remover Solução
(delete)/solution/UUID
- Envio para um e-mail específico ou array
(get)/report?email=EMAIL
(get)/report?email=EMAIL1&email=EMAIL2&email=EMAIL3
- Lerolero (fork)
(get)/lero