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.
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 |
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 | - |
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
$ git@github.com:vinicius-vph/desafio-back-end.git
$ cd desafio-back-end
$ bundle install
$ yarn
$ rails db:migrate
$ 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.