Module: CashRegister

Extended by:
Helper
Defined in:
lib/cash_register/deal.rb,
lib/cash_register.rb,
lib/cash_register/deals.rb,
lib/cash_register/helper.rb,
lib/cash_register/free_item.rb,
lib/cash_register/list_item.rb,
lib/cash_register/promotions.rb,
lib/cash_register/normal_item.rb,
lib/cash_register/two4one_item.rb,
lib/cash_register/discount_item.rb

Overview

商品类

Defined Under Namespace

Modules: Deals, Helper, Promotions Classes: Deal, DiscountItem, FreeItem, ListItem, NormalItem, Two4OneItem

Class Method Summary collapse

Methods included from Helper

format_price

Class Method Details

.output_bill(input_list) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/cash_register.rb', line 9

def output_bill(input_list)
  output = []
  output << "***<没钱赚商店>购物清单***"
  list_items = read_list(input_list).map do |code, count|
    ListItem.new(code, count)
  end
  output += output_list_items(list_items)
  free_items = list_items.map(&:free_item).compact
  if free_items.any?
    output << dashed_line
    output << "买二赠一商品:"
    output += output_free_items(free_items)
  end
  output += output_summary(list_items.map(&:item))
  puts output
  output
end