class Acme::Smileage::Commands::Oricon
Public Instance Methods
show()
click to toggle source
# File lib/acme/smileage/commands/oricon.rb, line 11 def show show_sales_data(:oricon) end
Private Instance Methods
format_number(n, rank)
click to toggle source
# File lib/acme/smileage/commands/oricon.rb, line 40 def format_number(n, rank) ("%0#{rank}d" % n).reverse.gsub( /(\d{3})(?=\d)/, '\1,').reverse.gsub(/^(0+)/) { '*' * $1.length } end
print_sales_data(album, sales)
click to toggle source
# File lib/acme/smileage/commands/oricon.rb, line 27 def print_sales_data(album, sales) return unless sales puts "%s枚 %s枚 %.2f %s位 %s回 %s %s" % [ format_number(sales.first_week_sales, 5), format_number(sales.total_sales, 5), sales.total_to_first_week_ratio, format_number(sales.peak_rank, 3), format_number(sales.weeks_on_chart, 2), album.release_date, album.name ] end
show_sales_data(sales)
click to toggle source
# File lib/acme/smileage/commands/oricon.rb, line 17 def show_sales_data(sales) sm = Acme::Smileage.new filter = options[:album] ? :album? : :single? puts "初動売上 累積売上 初動比 最高位 登場回 発売日 タイトル" sm.discography(&filter).each do |album| print_sales_data(album, album.__send__(sales)) end end