Este é um projeto backend desenvolvido em NestJS para o desafio proposto pelo Itaú. A API permite o registro de transações financeiras fictícias e fornece estatísticas sobre essas transações.
- Registro de Transações: Permite registrar transações com valor e data/hora.
- Validação: Não aceita valores negativos, datas futuras ou requisições fora do formato.
- Estatísticas: Calcula estatísticas das transações do último minuto (ou período personalizado).
- Limpeza de Dados: Permite apagar todos os registros de transações.
- NestJS: Framework para aplicações backend.
- TypeScript: Linguagem de programação utilizada.
- Swagger: Documentação interativa da API.
- Jest: Framework para testes unitários.
- Node.js (versão 18 ou superior)
- npm ou yarn
- Clone o repositório:
git clone https://github.com/andre-dev-2021/desafio-itau-backend.git
cd desafio-itau-backend- Instale as dependências:
npm installnpm run startA aplicação estará rodando em http://localhost:3000.
A documentação interativa da API está disponível via Swagger em: Documentação da API
Registra uma nova transação.
Corpo da requisição:
{
"valor": 100.50,
"dataHora": "2023-12-01T10:30:00.000Z"
}Respostas:
201: A transação foi registrada com sucesso!422: Dados inválidos! (valor negativo e/ou data/hora futura).400: Requisição no formato incorreto.
Apaga todos os registros de transações.
Resposta:
200: Registros apagados com sucesso
Retorna estatísticas das transações.
Parâmetros de query (opcionais):
seg: Período em segundos para filtrar as transações (padrão: 60 segundos)
Resposta:
{
"count": 10,
"sum": 1500.00,
"avg": 150.00,
"min": 50.00,
"max": 300.00
}Para executar os testes unitários utilize:
npm run testEste projeto está sob a licença MIT.