Teste para a empresa Pontte desenvolvido utilizando Node e Banco de Dados MySQL
- Dê um git clone nesse projeto e entre na raíz do mesmo.
- Tenha uma versão do Node instalada e do NPM , a versão utilizada do Node nesse projeto foi a versão 12.18.3 e do NPM foi utilizada a versão 6.14.6.
- Abra um terminal e digite npm install para instalar todas as dependências.
- Digite npm run start para rodar o projeto.
- Primeiro vá no arquivo que se encontra em src/config/config.json
- E mude as configurações para o Banco de Dados Relacional a ser utilizado, no caso do projeto foi desenvolvido em cima do Banco de Dados MySQL.
- Com o banco de dados configurado devidamente, digite o comando: npx sequelize-cli db:create para criar um novo banco.
- Para gerar as migrações digite o comando: npx sequelize-cli db:migrate
- Para popular o banco com alguns valores digite o comando: npx sequelize-cli db:migrate
- Existem 3 endpoints que utilizam o método POST
- O endpoint para fazer o estado de uma nova Criação, pode ser feita da seguinte maneira:
- Caso seja omitido algum dos valores obrigatórios como Nome, Email, CPF, Valor do Empréstimo, essa mensagem será mostrada:
- O endpoint para fazer o estado upload das Imagens, pode ser feita da seguinte maneira:
- Caso o endpoints rode certo, as imagens serão feitas o upload na pasta public/images
- Caso seja omitido o campo de documento seja omitido, essa mensagem será mostrada:
- Caso tente fazer esse endpoint antes de resolver o endoint /criacao . Essa mensagem será mostrada:
- O endpoint para fazer o estado de aprovação, para criar uma nova Aprovação, pode ser feita da seguinte maneira:
- Caso tente fazer esse endpoint antes de resolver o endoint /criacao e /upload. Essa mensagem será mostrada:
- Existem 2 endpoins que utilizam o método PUT
- O endpoint para atualizar uma Criação, possui a seguinte formato: /updateCriacao/:criacaoID/:aprovacaoID
- Caso o status da Aprovação seja true. A seguinte mensagem será mostrada:
- O endpoint para atualizar uma Aprovação, possui a seguinte formato: /updateAprovacao/:aprovacaoID
- Infelizmente não consegui desenvolver o endopoint para fazer a atualização das imagens, pois teria que ver uma maneira de atualizar as imagens correspondentes ao contrato na pasta public/images que é o local que são guardadas as imagens.
- E também não consegui terminar de escrever os testes de integração dos endpoints.