Skip to content

An application that maps a JSON file with bank transactions and return them to the authenticated users.

Notifications You must be signed in to change notification settings

cironeto/json-mapping-bank-transactions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub last commit GitHub top language

Sobre

A aplicação faz o mapeamento de uma lista de transações bancárias contidas em arquivo json para os campos descritos na tabela. O endpoint retorna as transações bancárias mapeadas do usuário autenticado e retorna 403 para requisições não autenticadas.

Funcionalidades:

• Somente usuários autenticados podem acessar o endpoint.
• Cada usário tem um accountId único e pode ver apenas suas transações.
• Caso o usuário autenticado tentar acesar as transações de outro retorna Erro 403.

Ferramentas utilizadas

  • Java 11
  • Spring Boot
  • Spring Data JPA
  • MySQL
  • JWT/Auth0
  • Docker

Requisitos

Para execução deste projeto é necessário ter instalado:

  • JDK 11
  • Docker

Execução

Abra o terminal em '.../json-mapping-bank-transactions' e execute o comando Docker para criar o servidor MySQL:

docker-compose up

Depois:

./mvnw clean install

Em seguida,execute a aplicação:

./mvnw spring-boot:run

Ao executar, a aplicação estará disponível em http://localhost:8080 e será criado os seguintes usuários:

username password
william 123
david 123
cironeto 123

Endpoint de autenticação: http://localhost:8080/login

REST API Endpoints

A requisição deve ser realizada no endpoint abaixo:

GET /api/transactions/{accountId}

Mapeamento

Campos originais Campos a mapear
encodedKey id
parentAccountKey arrangementId
creationDate bookingDate
type type
valueDate valueDate
amount amount
currencyCode currencyCode
currencyCode currency
amount creditDebitIndicator (DEBIT < 0, CREDIT >=0)
accountBalances.totalBalance runningBalance
id counterPartyAccountNumber
parentAccountKey reference
type typeGroup
amount instructedAmount



Desenvolvido por Ciro Neto

About

An application that maps a JSON file with bank transactions and return them to the authenticated users.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages