Git Product home page Git Product logo

nx_challenge's Introduction

README

Nexoos Challenge

Seu desafio será completar o desenvolvimento dessa API capaz de gerir empréstimos, salvando informações necessárias do cliente para podermos realizar o cálculo do valor da parcela (PMT), além de haver a possibilidade de leitura desses dados pelo cliente.

Deve-se:

  • Modelar o banco de dados parar ter os dados necessários do cálculo da PMT
  • Completar as rotas POST /loans e GET /loans/ID, alterando a API para escrever e retornar dados do banco de dados.
    • Na escrita, deve-se calcular o valor da parcela (PMT) e salvar no banco de dados.

Sobre a PMT:

https://fia.com.br/blog/matematica-financeira/#:~:text=PMT%20s%C3%A3o%20pagamentos%20de%20mesmo,ou%20empresarial)%20de%20forma%20recorrente.&text=Por%20isso%2C%20tamb%C3%A9m%20s%C3%A3o%20tratados,fixa%20de%20empr%C3%A9stimo%20ou%20financiamento

Cálculo da PMT:

http://ghiorzi.org/amortiza.htm

Post Request para Loans:

curl --request POST http://localhost:3000/loans -d \
 value=1000& \
 taxa=0.2

Expected Response:

{
  "loan": {
    "id": 1
  }
}

Get Request para Loans:

curl --request GET http://localhost:3000/loans/1

Expected Response:

{
  "loan": {
    "id": 1, "pmt": 308
  }
}

Requisitos técnicos

  • Usar Ruby on Rails
  • É permitido o uso de frameworks e gems
  • Deve ser usado GIT para versionamento

Pontos extras para:

  • Documentação
  • Testes unitários e/ou de integração com Rspec

Envio:

Envie o seu código pronto através de um Pull Request para esse repositório

Resolução do desafio:

Para instalar as Gems execute no terminal:

bundle install

Para criar o banco de dados sqlite3 excute no terminal:

rails db:create db:migrate

Para rodar os testes excute no terminal:

rspec

Para rodar a aplicação em http://localhost:3000/

rails s

Acesse a aplicação

http://localhost:3000

Documentação da API com seus endpoints está disponível em:

Postman

nx_challenge's People

Contributors

gyordanoreis avatar thiagomsilva 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.