class Stockman::Logic::Kit::ContentsCollection
Attributes
kit_id[R]
Public Class Methods
new(kit_id)
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 9 def initialize(kit_id) @kit_id = kit_id.to_i end
Public Instance Methods
[](index)
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 13 def [](index) contents[index] end
contents()
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 29 def contents @contents ||= load_contents end
each() { |content| ... }
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 17 def each contents.each{ |content| yield content } end
minimum_available_amount(warehouse_id)
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 25 def minimum_available_amount(warehouse_id) minimum_amount(:available, warehouse_id) end
minimum_physical_amount(warehouse_id)
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 21 def minimum_physical_amount(warehouse_id) minimum_amount(:physical, warehouse_id) end
Private Instance Methods
load_contents()
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 35 def load_contents Storage.obtain_hash("kits:#{kit_id}:variants").map do |variant_id, amount_in_kit| Content.new(kit_id, variant_id, amount_in_kit) end end
minimum_amount(type, warehouse_id)
click to toggle source
# File lib/stockman/logic/kit/contents_collection.rb, line 41 def minimum_amount(type, warehouse_id) contents.map{|content| content.send(:"#{type}_amount", warehouse_id)}.min end