Nesse desafio, foi criado uma aplicação em Node.js junto ao TypeScript, utilizando o conceito de models, repositories e services!
Essa aplicação armazena transações financeiras de entrada e saída, que permite o cadastro e a listagem dessas transações.
POST /transactions
: A rota recebetitle
,value
etype
dentro do corpo da requisição, sendotype
o tipo da transação, que deve serincome
para entradas (depósitos) eoutcome
para saidas (retiradas). Ao cadastrar uma nova transação, ela armazena dentro de um objeto com o formato como o seguinte:
{
"id": "uuid",
"title": "Salário",
"value": 3000,
"type": "income"
}
GET /transactions
: Essa rota deve retorna uma listagem com todas as transações que cadastrou até agora, junto com o valor de soma de entradas, retiradas e total de crédito. Essa rota deve retorna um objeto com o formato a seguir:
{
"transactions": [
{
"id": "uuid",
"title": "Salário",
"value": 4000,
"type": "income"
},
{
"id": "uuid",
"title": "Freela",
"value": 2000,
"type": "income"
},
{
"id": "uuid",
"title": "Pagamento da fatura",
"value": 4000,
"type": "outcome"
},
{
"id": "uuid",
"title": "Cadeira Gamer",
"value": 1200,
"type": "outcome"
}
],
"balance": {
"income": 6000,
"outcome": 5200,
"total": 800
}
}