Skip to content

Edson-Mendes/transaction-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Transaction Analyzer

Badge Concluído Badge Java Badge Spring Badge Maven

📖 Resumo do projeto

Transaction Analyzer é uma aplicação para análise de transações financeiras e identificação de possíveis transações suspeitas.

O projeto foi proposto pela Alura no Challenge Backend 3ª edição.

🔨 Funcionalidades

  • Autenticação de usuário

    • Login: Login de usuário informando email e senha.
    • Cadastrar usuário: Usuários autenticados podem cadastrar outros usuários, cadastrando nome e email, a senha é gerada automaticamente e enviada para o email cadastrado.

  • Importação de arquivo de transações: Arquivos do tipo .csv contendo transações financeiras podem ser enviados, o arquivo enviado passa por uma série de validações, sendo salvo apenas as transações com informações válidas.

    • Formato do Arquivo CSV: BANCO_ORIGEM;AGÊNCIA_ORIGEM;CONTA_ORIGEM;BANCO_DESTINO;AGÊNCIA_DESTINO;CONTA_DESTINO;VALOR;HORA_E_DATA
    • Exemplo: BANCO BRADESCO;0055;12345-6;NUBANK;0001;00001-1;80000;2022-09-22T11:32:00

  • Histórico de importações: Um histórico de importações realizadas é mostrado na tela principal da aplicação.


  • Detalhes de cada importação: Apartir do histórico de importações pode-se acessar os detalhes de cada arquivo importado, como: data de importação, quem importou, data das transações, e uma lista de todas as transações de tal arquivo.


  • Editar usuário: Usuários autenticados podem editar informações de outros usuários.


  • Deletar usuário: Usuários autenticados podem desabilitar o acesso de outros usuário, usuário NÃO podem se auto desabilitar.


  • Lista de usuários: Uma tela para mostrar todos os usuários cadastrados e suas informações, assim como os botões de EDITAR e DELETAR.


  • Análise de transações: Uma tela para o usuário informar o mês e ano que deseja a análise, a aplicação mostra as transações suspeitas (transações igual ou superior a R$100.000,00), contas suspeitas (Se o somatório de movimentações no mês for superior a R$1.000.000,00) e agências suspeitas (Se o somatório de movimentações no mês for superior a R$1.000.000.000,00).

🧰 Tecnologias

  • VSCode
  • Java 17
  • Maven
  • Spring Boot, Spring MVC, Spring Data JPA, Spring Security
  • H2 database
  • Thymeleaf
  • Lombok
  • Bean Validation
  • HTML5
  • Bootstrap
  • MySQL
  • JUnit 5
  • Mockito

🛠️ Deploy

O deploy da aplicação foi realizado no Heroku, você pode testar/brincar/usar aqui, fique a vontade para usar o login [email protected] e senha 123999

OBS: As aplicações que usam conta gratuita do heroku adormecem se ficarem inativas, então pode ser que a primeira requisição demore um pouco, apenas seja paciente 😉.

⚙️ Atualizações futuras

  • Suporte a upload de arquivos em formato XML
  • Testes automatizados
  • Responsividade das páginas
  • Possibilidade de alterar senha
  • Aba para exemplificar o formato dos dados
  • Aba para mostrar bancos salvos no sistema

About

Aplicação web para realizar análise de transações financeiras.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published