/intersol-teste

Sistema de controle Bancário

Primary LanguageJavaScript

Intersol - Teste

Repositorio do front-end: https://github.com/edunoroes/intersol-front

Objetivo: Desenvolva um sistema de controle Bancário Usuário pode criar conta Usuário pode fazer login Usuário consegue criar uma conta bancária Usuário consegue fazer um deposito Usuário consegue fazer um saque Usuário consegue fazer uma transferencia Usuário consegue fazer uma estorno Usuario consegue sair do site

Banco de dados utilizado:

PostgreSQL

Bibliotecas utilizadas

Express: Express.js é um framework para Node.js que fornece recursos mínimos para construção de servidores web

Axios: Axios é um cliente HTTP baseado em Promises para fazer requisições. Pode ser utilizado tanto no navegador quando no Node.js.

Bcrypt: O bcrypt é uma biblioteca para encriptação de dados. Neste caso, o dado a ser criptografado é o password.

JsownWebToken: Um JWT é um padrão para autenticação e troca de informações definido pela RFC7519. Nele é possível armazenar de forma segura e compacta objetos JSON

Cors: CORS é um mecanismo que permite que recursos restritos em uma página da web sejam recuperados por outro domínio fora do domínio ao qual pertence o recurso que será recuperado.

Dotenv: O DotEnv é um pacote leve do npm que carrega automaticamente as variáveis de ambiente de um arquivo.

Knex: O knex é um query-builder ou “construtor de consultas” em tradução livre, para Node. js, e que interage com bancos relacionais.

Endpoints

Criar conta na plataforma

POST /cadastro Esse endpoint deverá criar uma conta no sistema "intersol-teste"

Você deverá, OBRIGATORIAMENTE:

Inserir seu nome

Inserir seu usuario

Inserir seu email

Inserir sua senha

Login no sistema POST /login Esse endpoint deverá lhe redirecionar para página de dashboard (OBS: Você só consegue acessar a página de dashboard caso faça login, pois será enviado um TOKEN)

Você deverá, OBRIGATORIAMENTE:

Inserir o email ou usuario cadastrado Inserir a senha cadastrada Resposta

Em caso de sucesso, você será redirecionado para a dashboard do site! Em caso de falha na validação, a resposta mostrará uma mensagem de error no próprio site ou na API

POST /agencia Esse endpoint deverá cadastrar uma agência

Você deverá, OBRIGATORIAMENTE:

Inserir Número da Agência e Endereço

GET /agencias Esse endpoint deverá listas todas as agências.

POST /conta Esse endpoint deverá criar uma conta bancária.

Você deverá, OBRIGATORIAMENTE:

Inserir Número da Agência, Número da Conta

GET /contas Esse endpoint deverá listas todas as contas bancárias.

POST /deposito Esse endpoint deverá criar uma deposito na conta bancária logada.

Você deverá, OBRIGATORIAMENTE:

Inserir o valor

POST /saque Esse endpoint deverá criar uma saque na conta bancária logada.

Você deverá, OBRIGATORIAMENTE:

Inserir o valor

POST /transferencia Esse endpoint deverá criar uma transferencias entre duas contas com o valor partindo da conta logada.

Você deverá, OBRIGATORIAMENTE:

Inserir o valor e a conta que vai receber a transferencia.

POST /estorno Esse endpoint deverá criar um estorno da ultima transferencia.

Você deverá, OBRIGATORIAMENTE:

Inserir o valor e a conta que foi realizado a transferencia.