Projeto HelloBank - ImpactGrants{Grupo 7}

Status: Completo! 💯🎉🎉


link: http://hellobank.wvitorsj.com.br/


Tela login


🤝 Colaboradores

As pessoas que contribuíram para este projeto:

Foto da Katryn Ribeiro no GitHub
Katryn Ribeiro
BD + FrontEnd

Foto do Rafael Souza no GitHub
Rafael Souza
BackEnd

Foto do Vitor Silva no GitHub
Vitor Silva
DevOps


💻 Tecnologias Usadas

Tecnologias usadas nesse projeto




📓 Documentação do Projeto

O projeto foi documentado e organização utilizando Metodologias ágeis e fazendo a organização com o site Trello.

Quadro do Projeto


🎯 Objetivo do Projeto

Criação de uma API para para gerenciar as transações de um banco fictício, podendo efetuar o cadastro de novos clientes e contas, além de permitir a atualização e exclusão de cadastros já efetuados, além de listar as transações entre contas efetuadas.

    Lista detalhada de funções:

    • Cadastro de Clientes
    • Alteração de Clientes
    • Listagem de Clientes
    • Exclusão de Clientes

    • Cadastro de Contas
    • Alteração de Contas
    • Listagem de Contas
    • Exclusão de Contas

    • Cadastro de Transações
    • Listagem de Transações
    • Exclusão de Transações

⛔ Endpoints

Método GET
Método POST
Método PUT
Método DELETE

#⃣ Arquivos de Comando

    Lista dos arquivos de comando e sua função:

    • test.sh => Inicializa a plicação realizando os testes
    • stop.sh => Derruba a aplçicação pelo PID
    • start.sh => Limpa o package, recria e inicializa o package e executa o arquivo jar
    • deploy.sh => Exclui docker image, recria image substituindo a versão, derruba a execução de conteiner (caso tenha) e e inicializa o docker-compose em background

🎲 Banco de Dados

Criação da tabela de Endereços:
CREATE TABLE `endereco` (
  `id_endereco` int NOT NULL AUTO_INCREMENT,
  `logradouro` varchar(150) NOT NULL,
  `numero_endereco` varchar(7) NOT NULL,
  `bairro` varchar(60) NOT NULL,
  `cidade` varchar(50) NOT NULL,
  `estado` varchar(2) NOT NULL,
  `cep` varchar(9) NOT NULL,
  PRIMARY KEY (`id_endereco`));
Criação da tabela de Clientes:
CREATE TABLE `cliente` (
  `id_cliente` int NOT NULL AUTO_INCREMENT,
  `nome_cliente` varchar(90) NOT NULL,
  `email_cliente` varchar(50) NOT NULL,
  `telefone_cliente` varchar(20) NOT NULL,
  `cpf_cliente` varchar(15) NOT NULL,
  `endereco_cliente` int NOT NULL,
  PRIMARY KEY (`id_cliente`),
  KEY `fk_EndCli` (`endereco_cliente`),
  CONSTRAINT `fk_EndCli` FOREIGN KEY (`endereco_cliente`) REFERENCES `endereco` (`id_endereco`));
Criação da tabela de Contas:
  CREATE TABLE `conta` (
    `id_conta` int NOT NULL AUTO_INCREMENT,
    `agencia_conta` int NOT NULL,
    `numero_conta` int NOT NULL,
    `saldo` double DEFAULT NULL,
    `id_cliente` int DEFAULT NULL,
    PRIMARY KEY (`id_conta`),
    KEY `fk_ContCli` (`id_cliente`),
    CONSTRAINT `fk_ContCli` FOREIGN KEY (`id_cliente`) REFERENCES `cliente` (`id_cliente`));
Criação da tabela de Transações:
  CREATE TABLE `transacao` (
    `id_transacao` int NOT NULL AUTO_INCREMENT,
      `conta_origem` int,
      `conta_destino` int NOT NULL,
      `valor_transacao` float NOT NULL,
      `data_transacao` varchar(10) NOT NULL,
      `tipo_transacao` varchar(15),
      PRIMARY KEY (`id_transacao`),
      KEY `fk_CliOrigin` (`conta_origem`),
      CONSTRAINT `fk_CliOrigin` FOREIGN KEY (`conta_origem`) REFERENCES `conta` (`id_conta`),
      KEY `fk_CliDest` (`conta_destino`),
      CONSTRAINT `fk_CliDest` FOREIGN KEY (`conta_destino`) REFERENCES `conta` (`id_conta`));

Modelo Entidade-Relacionamento:

DER

Script SQL: https://github.com/HelloBank-IBM7/HelloBank/files/9616332/hellobank.zip