Class: Spree::StockItem
- Inherits:
-
Base
- Object
- ApplicationRecord
- Base
- Spree::StockItem
show all
- Defined in:
- app/models/spree/stock_item.rb
Instance Method Summary
collapse
Methods inherited from Base
belongs_to_required_by_default, page, spree_base_scopes
#clear_preferences, #default_preferences, #defined_preferences, #get_preference, #has_preference!, #has_preference?, #preference_default, #preference_type, #set_preference
Instance Method Details
#adjust_count_on_hand(value) ⇒ Object
37
38
39
40
41
|
# File 'app/models/spree/stock_item.rb', line 37
def adjust_count_on_hand(value)
with_lock do
set_count_on_hand(count_on_hand + value)
end
end
|
#available? ⇒ Boolean
Tells whether it’s available to be included in a shipment
55
56
57
|
# File 'app/models/spree/stock_item.rb', line 55
def available?
in_stock? || backorderable?
end
|
#backordered_inventory_units ⇒ Object
#in_stock? ⇒ Boolean
50
51
52
|
# File 'app/models/spree/stock_item.rb', line 50
def in_stock?
count_on_hand > 0
end
|
#reduce_count_on_hand_to_zero ⇒ Object
63
64
65
|
# File 'app/models/spree/stock_item.rb', line 63
def reduce_count_on_hand_to_zero
set_count_on_hand(0) if count_on_hand > 0
end
|
#set_count_on_hand(value) ⇒ Object
43
44
45
46
47
48
|
# File 'app/models/spree/stock_item.rb', line 43
def set_count_on_hand(value)
self.count_on_hand = value
process_backorders(count_on_hand - count_on_hand_was)
save!
end
|
#variant ⇒ Object
59
60
61
|
# File 'app/models/spree/stock_item.rb', line 59
def variant
Spree::Variant.unscoped { super }
end
|