API de registro de vendas e produtos, desenvolvida em node.js com o banco de dados MySQL, que possibilita a atualização, cadastro e exclusão de dados. Foi utilizado a arquitetura MSC (model-service-controller) e TDD (Test Driven Development) abrangendo 100% de cobertura de teste.
- Instale Store Manager com docker
docker-compose up -d- Acesse o terminal do docker e execute comando npm
docker exec -it store_manager bash
npm install
npm run debugProducts
POST /products| Parâmetro | Tipo | Descrição |
|---|---|---|
name |
string |
Obrigatório. Nome do produto |
GET /products/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID do produto |
GET /products| Parâmetro | Tipo | Descrição |
|---|---|---|
| - | - | Retorna todos os produtos |
GET /products/search| Parâmetro | Tipo | Descrição |
|---|---|---|
q |
string |
Termo contido no nome do produto |
PUT /products/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID do produto |
name |
string |
Obrigatório. Novo nome do produto |
DELETE /products/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID do produto |
Sales
POST /sales| Parâmetro | Tipo | Descrição |
|---|---|---|
productId |
number |
Obrigatório. ID do produto |
quantity |
number |
Obrigatório. Quantidade vendida |
GET /sales/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID da venda |
GET /sales| Parâmetro | Tipo | Descrição |
|---|---|---|
| - | - | Retorna todos as vendas |
PUT /sales/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID da venda |
productId |
number |
Obrigatório. ID do produto |
quantity |
number |
Obrigatório. Quantidade vendida |
DELETE /sales/${id}| Parâmetro | Tipo | Descrição |
|---|---|---|
id |
number |
Obrigatório. ID da venda |
Back-end: Node, Express, Nodemon, docker, MySQL, Joi, sinon, chai, mocha, dotenv, snakeize, camelize.