Este projeto implementa um sistema de CRUD de usuários e funcionalidades relacionadas a transações como depósitos, saques, verificação de saldo e geração de extrato.
- TypeScript
- Postgres
- TypeORM
- Redis
- JWT
Antes de iniciar o projeto, você precisará ter instalados:
- Docker
- Docker Compose
- Node (recomendado a versão 16.20.1)
- NPM (recomendado a versão 8.19.4)
-
Instale as dependências do projeto:
npm install
-
Inicie a aplicação utilizando o Docker Compose:
docker compose up -d
-
Você pode verificar o status dos contêineres usando o seguinte comando:
docker compose ps
-
Acesse a aplicação em
http://localhost:3000
.
POST localhost:3000/usuarios/
Body:
{
"name": "Teste1",
"email": "[email protected]",
"senha": "123"
}
GET localhost:3000/usuarios/
GET localhost:3000/usuarios/1
PUT localhost:3000/usuarios/1
Body:
{
"name": "Teste1",
"email": "[email protected]"
}
DELETE localhost:3000/usuarios/1
POST localhost:3000/login/
Body:
{
"email": "[email protected]",
"senha": "123"
}
POST localhost:3000/transacoes/deposito
Body:
{
"valor": 100.0,
"usuario_id": 1
}
POST localhost:3000/transacoes/saque
Body:
{
"valor": 50.0,
"usuario_id": 1
}
GET localhost:3000/saldo/1
GET localhost:3000/extrato/1
GET localhost:3000/extrato/deposito/1
GET localhost:3000/extrato/saque/1
PUT localhost:3000/transacoes/1
Body:
{
"status_id": 2
}