Class: Stockman::Logic::Kit::StockLevelsCollection

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/stockman/logic/kit/stock_levels_collection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(kit_id) ⇒ StockLevelsCollection

Returns a new instance of StockLevelsCollection.



9
10
11
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 9

def initialize(kit_id)
  @kit_id = kit_id.to_i
end

Instance Attribute Details

#kit_idObject (readonly)

Returns the value of attribute kit_id.



7
8
9
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 7

def kit_id
  @kit_id
end

Instance Method Details

#[](warehouse_id) ⇒ Object



13
14
15
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 13

def [](warehouse_id)
  find_by_warehouse(warehouse_id)
end

#contentsObject



29
30
31
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 29

def contents
  @contents ||= ContentsCollection.new(kit_id)
end

#eachObject



21
22
23
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 21

def each
  stock_levels.each{ |stock_level| yield stock_level }
end

#empty?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 25

def empty?
  stock_levels.empty?
end

#find_by_warehouse(warehouse_id) ⇒ Object



17
18
19
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 17

def find_by_warehouse(warehouse_id)
  stock_levels.detect{ |stock_level| stock_level.warehouse_id == warehouse_id }
end

#stock_levelsObject



33
34
35
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 33

def stock_levels
  @stock_levels ||= load_stock_levels
end

#warehouse_idsObject



37
38
39
# File 'lib/stockman/logic/kit/stock_levels_collection.rb', line 37

def warehouse_ids
  @warehouse_ids ||= contents.map(&:warehouse_ids).flatten.uniq
end