class Cotacao::Cotacao

Public Class Methods

new() click to toggle source
# File lib/cotacao.rb, line 9
def initialize
  apiUrl   = 'http://developers.agenciaideias.com.br/cotacoes/json'
  response = HTTParty.get(apiUrl)
  @data    = JSON.parse(response.body)
end

Public Instance Methods

console_print(type, cotacao, copy) click to toggle source
# File lib/cotacao.rb, line 34
def console_print(type, cotacao, copy)
  puts '----------------------'
  puts paint(copy, cotacao['variacao'].to_f)
end
convert(foreign_currency, real) click to toggle source
# File lib/cotacao.rb, line 60
def convert(foreign_currency, real)
  '%.2f' % (real.to_f * foreign_currency.to_f)
end
dolar(convert_to) click to toggle source
# File lib/cotacao.rb, line 21
def dolar(convert_to)
  dolar             = @data['dolar']
  cotacao           = dolar['cotacao']
  variacao          = dolar['variacao']
  convertion_string = ''

  if convert_to
    convertion_string = "- Em Reais: R$ #{self.convert(cotacao, convert_to)}"
  end

  self.console_print('dolar', dolar, "Dolar: R$ #{cotacao} - Variação: #{variacao} #{convertion_string}")
end
now() click to toggle source
# File lib/cotacao.rb, line 15
def now
  self.dolar(nil)
  self.console_print('euro', @data['euro'], "Euro: R$ #{@data['euro']['cotacao']} - Variação: #{@data['euro']['variacao']}")
  self.console_print('bovespa', @data['bovespa'], "Bovespa: #{@data['bovespa']['cotacao']} - Variação: #{@data['bovespa']['variacao']}")
end
paint(copy, variation) click to toggle source
# File lib/cotacao.rb, line 49
def paint(copy, variation)
  variation_status = status(variation)
  if variation_status == 'positive'
    "  ↑↑ #{copy} ↑↑".green
  elsif variation_status == 'stable'
    "  ●● #{copy} ●●".yellow
  elsif variation_status == 'negative'
    "  ↓↓ #{copy} ↓↓".red
  end
end
status(variation) click to toggle source
# File lib/cotacao.rb, line 39
def status(variation)
  if variation > 0.00
    return 'positive'
  elsif variation == 0.00
    return 'stable'
  elsif variation < 0.00
    return 'negative'
  end
end