Skip to content

css-ignite/ignite-nodejs-c01-a02

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ignite Trilha NodeJS (Primeiro Projeto com NodeJS)

Este projeto tem por finalidade a criação de uma API fictícia para controle de transações financeiras.

Bibliotevas Utilizadas

UUID

Instalação

npm install uuid

Requisitos do Projeto

Requisitos

Auui estão descritas todas as funcionalidades que serão implementadas na aplicação.

  • Deve ser possível criar uma conta
  • Deve ser possível buscar o extrato bancário do cliente
  • Deve ser possível realizar um depósito
  • Deve ser possível realizar um saque
  • Deve ser possível buscar o extrato bancário do cliente por data
  • Deve ser possível atualizar dados da conta do cliente
  • Deve ser possível obter dados da conta do cliente
  • Deve ser possível deletar uma conta
  • Deve retornar o balance

Regras de Negócio

Aqui estão descritas todas as regras de negócio que serão implementadas na aplicação.

  • Não deve ser possível cadastrar uma conta com CPF já existente
  • Não deve ser possível buscar extrato em uma conta não existente
  • Não deve ser possível fazer depósito em uma conta não existente
  • Não deve ser possível fazer saque em uma conta não existente
  • Não deve ser possível fazer saque quando o saldo for insuficiente
  • Não deve ser possível excluir uma conta não existente
  • Não deve ser possível buscar balance de uma conta não existente

Métodos da API

Aqui estão descritas todas as rotas implementadas na API.

status

Método Rota Descrição
GET http://{baseUrl}:3333/ Retorna o Status de Funcionamento da API
GET http://{baseUrl}:3333/status Retorna o Status de Funcionamento da API

accounts

Método Rota Descrição
GET http://{baseUrl}:3333/accounts Retorna todas as contas
GET http://{baseUrl}:3333/accounts/{cpf} Retorna uma conta específica pelo cpf
POST http://{baseUrl}:3333/accounts Cria uma nova conta nova
PUT http://{baseUrl}:3333/accounts Atualiza uma conta específica pelo cpf
PATCH http://{baseUrl}:3333/accounts Atualiza uma conta específica pelo cpf
DELETE http://{baseUrl}:3333/accounts Deleta uma conta específica pelo cpf

Validações da rota

  • Não deve ser possível criar uma conta com um CFP já existente

statements

Método Rota Descrição
GET http://{baseUrl}:3333/statements Retorna o extrato bancário do cliente
GET http://{baseUrl}:3333/statements/date Retorna o extrato bancário do cliente por data

Validações da rota

  • Não deve ser possível buscar o extrato de uma conta não existente

deposit

Método Rota Descrição
POST http://{baseUrl}:3333/deposit Realiza um depósito para uma conta específica pelo cpf

Validações da rota

  • Não deve ser possível fazer depósito para uma conta não existente

withdraw

Método Rota Descrição
POST http://{baseUrl}:3333/withdraw Realiza um saque para uma conta específica pelo cpf

Validações da rota

  • Não deve ser possível fazer saques para uma conta não existente
  • Não deve ser possível fazer saques para uma conta sem saldo suficiente

balance

Método Rota Descrição
GET http://{baseUrl}:3333/balance Retorna o saldo para uma conta específica pelo cpf

Validações da rota

  • Não deve ser possível buscar o saldo de uma conta não existente