Giter Club home page Giter Club logo

cartaofiapbatch's Introduction

Cartão FIAP

Badge em Desenvolvimento

🎯 Objetivo

Trata-se de um sistema para gerenciar movimentação e cadastramento de alunos que possuem cartões FIAP.

📐 Projeto da aplicação

A aplicação está dividida em dois repositórios no GITHUB:

  1. Aplicação Spring Batch - Realiza carregamento de dados iniciais dos possíveis clientes do cartão FIAP. Leitura arquivo lista_alunos.txt
  • 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

  1. 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.

Visão Geral

Visão Geral do Sistema

Modelo Entidade Relacionamento (Endpoints)

MER

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

🛠️ Tecnologias utilizadas

⚙️ Como executar o projeto

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.

  1. Clonar projeto Spring Batch do GitHub:
git clone https://github.com/AlexDamiao86/CartaoFiapBatch.git
  1. Importar o projeto na sua IDE de preferência (atualizar o build.gradle).

  2. Executar o arquivo /src/main/java/CartaoBatchApplication.java.

  3. Clonar projeto Spring Web do GitHub:

git clone https://github.com/AlexDamiao86/CartaoFiap.git
  1. Importar o projeto na sua IDE de preferência (atualizar o build.gradle).

  2. Executar o arquivo /src/main/java/CartaoApplication.java.

  3. Interagir na aplicação através do Swagger.

  4. 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.

👨🏽‍💻 Desenvolvedores


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)

cartaofiapbatch's People

Contributors

alexdamiao86 avatar fabioquimico avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.