Projeto implementado como parte do Desafio Técnico Backend NodeJS
- NodeJS
- Hapi
- Sequelize
- SQLite
- Typescript
- csv-parse: para leitura de arquivos CSV
- mozilla/pdf.js: para leitura de arquivos PDF
- pdf-lib: para escrita de arquivos PDF
- Clone o repositório
- Instale as dependências com
npm install
- Rode a aplicação com
npm start:dev
- Executar o script
src/assets/lotes.sql
para inserir os lotes no banco de dados - Acessar a aplicação em
http://localhost:3000
-
GET /boletos
: retorna todos os boletos- Parâmetros:
nome
: nome do boleto a ser filtradovalor_inicial
: valor inicial do boleto a ser filtradovalor_final
: valor final do boleto a ser filtradoid_lote
: ID do lote a ser filtradorelatorio
: se for igual a1
, retorna o relatório em PDF
- Parâmetros:
-
POST /receber-boleto-csv
: recebe um arquivo CSV com os boletos a serem inseridos no banco de dados- Parâmetros:
file
: arquivo CSV com os boletos a serem inseridos
- Parâmetros:
-
POST /receber-boleto-pdf
: recebe um arquivo PDF com os boletos a serem inseridos no banco de dados- Parâmetros:
file
: arquivo PDF com os boletos a serem inseridos
- Parâmetros: