vinicius-vph / desafio-back-end-Blu

A idéia deste desafio é nos permitir avaliar melhor as habilidades de candidatos à vagas de programador, de vários níveis.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Desafio programação - para vaga Back-end Blu

Descrição do projeto

A aplicação é uma interface web que aceita upload do arquivo CNAB via formulário, interpreta o arquivo recebido, normaliza os dados, armazena-os em um banco de dados SQLite e exiba essas informações em tela. Essas informações contém uma lista das operações importadas por lojas, e um totalizador do saldo em conta de cada loja, onde saldos negativos são representados entre parênteses para uma leitura mais agradável.

Documentação do arquivo CNAB

Descrição do campo Inicio Fim Tamanho Comentário
Tipo 1 1 1 Tipo da transação
Data 2 9 8 Data da ocorrência
Valor 10 19 10 Valor da movimentação. Obs. O valor encontrado no arquivo precisa ser divido por cem(valor / 100.00) para normalizá-lo.
CPF 20 30 11 CPF do beneficiário
Cartão 31 42 12 Cartão utilizado na transação
Hora 43 48 6 Hora da ocorrência atendendo ao fuso de UTC-3
Dono da loja 49 62 14 Nome do representante da loja
Nome loja 63 81 19 Nome da loja

Documentação sobre os tipos das transações

Tipo Descrição Natureza Sinal
1 Débito Entrada +
2 Boleto Saída -
3 Financiamento Saída -
4 Crédito Entrada +
5 Recebimento Empréstimo Entrada +
6 Vendas Entrada +
7 Recebimento TED Entrada +
8 Recebimento DOC Entrada +
9 Aluguel Saída -


Para executar o projeto é necessário ter:

Ferramenta Versão
Ruby 2.6.5
Rails 6.0.4
Banco de dados Versão
Sqlite3 1.4

É necessário também ter uma chave ssh válida para clonar o projeto, você pode obter mais informações Aqui




Para executar localmente o projeto siga os passos abaixo:

Clone o repositório

$ git@github.com:vinicius-vph/desafio-back-end.git

Acesse a pasta do projeto

$ cd desafio-back-end

Instale as dependencias do ruby e do rails

$ bundle install

Instale as dependencias do javascript

$ yarn

Se necessário crie o banco de dados e execute as migrações das tabelas manualmente

$ rails db:migrate

Execute o projeto localmente

$ rails s

Acesse o endereço http://localhost:3000

Você estará na tela inicial da aplicação, e com isso deverá ser possível realizar o upload do arquivo CNAB e visualizar os dados na tela de resultados.

About

A idéia deste desafio é nos permitir avaliar melhor as habilidades de candidatos à vagas de programador, de vários níveis.


Languages

Language:Ruby 73.5%Language:HTML 20.0%Language:JavaScript 6.4%Language:SCSS 0.0%