-
- Linguagem de programação: Java - JDK 8 ou superior
- Gerenciador de dependências: Maven 3 ou superior
- Spring Boot: 2.2.4
- Banco de dados: H2 database - http://localhost:8080/digitalbank/h2-console
- Testes unitários: JUnit 5 + Mockito
- Testes de integração: JUnit 5 + Rest Assured + Hamcrest
- Swagger: swagger.yaml
- Postman: Digitalbank.postman_collection.json
-
Os modelos de entrada e saída são representados no formato JSON
ClienteRequestDTO
{ "nome": "Pedro", "cpf": "74739910004", "telefone": 987665214, "rendaMensal": 10000.0, "logradouro": "Av. São Paulo", "numero": 120, "complemento": "Casa", "bairro": "Centro", "cidade": "Maringá", "estado": "PR", "cep": "85006854" }
ClienteResponseDTO
{ "dados": { "id": 1, "nome": "Pedro", "cpf": "74739910004", "telefone": 987665214, "rendaMensal": 10000.0, "logradouro": "Av. São Paulo", "numero": 120, "complemento": "Casa", "bairro": "Centro", "cidade": "Maringá", "estado": "PR", "cep": "85006854" } }
ContaResponseDTO
{ "dados": { "idCliente": 1, "idConta": 1, "numeroAgencia": 1, "numeroConta": 987665214, "situacao": "A", "saldo": 0 } }
LancamentoRequestDTO
{ "valor": 100.0, "descricao": "Lançamento" }
TransferenciaRequestDTO
{ "numeroAgencia": 1, "numeroConta": 995410233, "valor": 50.0, "descricao": "Transferência" }
ComprovanteResponseDTO
{ "dados": { "idLancamento": 1, "codigoAutenticacao": "e2758c09-3539-4af9-b14b-66f561208b53", "dataHora": "31-12-2020 15:37:28", "valor": 50.0, "natureza": "D", "tipoLancamento": "T", "numeroAgencia": 1, "numeroConta": 995410233, "descricao": "Transferência" } }
ExtratoResponseDTO
{ "dados": { "conta": { "idCliente": 1, "idConta": 1, "numeroAgencia": 1, "numeroConta": 987665214, "situacao": "A", "saldo": 50.0 }, "lancamentos": [ { "idLancamento": 1, "codigoAutenticacao": "e2758c09-3539-4af9-b14b-66f561208b53", "dataHora": "31-12-2020 15:37:28", "valor": 50.0, "natureza": "D", "tipoLancamento": "T", "numeroAgencia": 1, "numeroConta": 995410233, "descricao": "Transferência" } ] } }
-
- clientes
Método URL Entrada Saída POST http://localhost:8080/api/v1/clientes ClienteRequestDTO 201 (Created) GET http://localhost:8080/api/v1/clientes 200 (OK) Lista ClienteResponseDTO GET http://localhost:8080/api/v1/clientes/{id} 200 (OK) ClienteResponseDTO PUT http://localhost:8080/api/v1/clientes/{id} ClienteRequestDTO 204 (No Content) DELETE http://localhost:8080/api/v1/clientes/{id}/conta ContaResponseDTO 200 (Ok) - contas