Trata-se de um sistema para gerenciar movimentação e cadastramento de alunos que possuem cartões FIAP.
A aplicação está dividida em dois repositórios no GITHUB:
- Aplicação Spring Batch - Realiza carregamento de dados iniciais dos possíveis clientes do cartão FIAP.
- A aplicação irá ler o arquivo lista_alunos.txt que está na pasta src/main/resources/lista_alunos.txt. Os dados de nome e matrícula do aluno contidos neste arquivo serão persistidos na tabela CLIENTES.
NOTA 1: Essa aplicação deverá ser executada antes da aplicação web para popular a tabela CLIENTES.
NOTA 2: Cada execução dessa aplicação irá adicionar novamente os clientes do arquivo lista_alunos.txt
- Aplicação Spring Boot Web - Disponibiliza endpoints para manutenção de cadastro de clientes, recebimento de transações realizadas nos cartões, consulta extratos dos cartões.
- Após iniciar a aplicação será possível interagir com ela através do Swagger. Veja pela documentação Swagger os dados de requsição e resposta das operações disponibilizadas.
NOTA 3: A cada execução dessa aplicação nova massa de teste de transações é adicionada -- 15.000 registros de transações autorizadas para clientes com identificador entre 1.000 e 3.000 com data de compra entre 01/01/2022 e 17/07/2022.
NOTA 4: Para ser possível manter a integridade com a tabela CLIENTES é necessário executar primeiramente a aplicação Batch
- Linguagem Java (versão 11)
- Spring Framework
- Gradle (Gerenciador de dependências)
- Github (Controle de versão)
- H2
- Swagger
- Flyway
NOTA 5: (Apenas na primeira vez da execução) O banco de dados utilizado será o H2 e estará armazenado no seguinte caminho do computador ~/fiapdb/cartao-fiap. Se a pasta/arquivo já existirem, favor deletá-los antes de executar os próximos passos.
- Clonar projeto Spring Batch do GitHub:
git clone https://github.com/AlexDamiao86/CartaoFiapBatch.git
-
Importar o projeto na sua IDE de preferência (atualizar o build.gradle).
-
Executar o arquivo /src/main/java/CartaoBatchApplication.java.
-
Clonar projeto Spring Web do GitHub:
git clone https://github.com/AlexDamiao86/CartaoFiap.git
-
Importar o projeto na sua IDE de preferência (atualizar o build.gradle).
-
Executar o arquivo /src/main/java/CartaoApplication.java.
-
Interagir na aplicação através do Swagger.
-
Possibilidade de visualizar os dados no h2-console.
NOTA 6: Existe uma massa de testes relativamente grande tanto de CLIENTES como COMPRAS. A visualização dos dados da base no h2-console permite confirmar isso. Exemplo: Pode ser utilizado o identificador do cliente 1969 para consultar extrato no mês atual, no mês de 04/2022.
Alexandre Damião Mendonça Maia |
Fabio Ferreira dos Santos |
Gabriel Oliveira Barbosa |
Rafael Braga da Silva Ferreira |
---|
Projeto realizado como requisito para conclusão da disciplina Spring do MBA Full Stack Development - FIAP 2022 Prof. Fabio Tadashi Miyasato (https://github.com/fabiotadashi)