Class: Comable::Order
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Comable::Order
- Includes:
- Decoratable
- Defined in:
- app/models/comable/order.rb
Instance Method Summary collapse
- #complete ⇒ Object
- #complete? ⇒ Boolean
-
#current_total_price ⇒ Object
時価合計を取得.
- #incomplete? ⇒ Boolean
- #precomplete ⇒ Object
-
#total_price ⇒ Object
売価合計を取得.
Methods included from Decoratable
Instance Method Details
#complete ⇒ Object
34 35 36 37 38 39 40 41 42 |
# File 'app/models/comable/order.rb', line 34 def complete # TODO: トランザクションの追加 precomplete # TODO: コールバック化 # define_model_callbacks :complete before_complete save! self end |
#complete? ⇒ Boolean
44 45 46 |
# File 'app/models/comable/order.rb', line 44 def complete? !incomplete? end |
#current_total_price ⇒ Object
時価合計を取得
53 54 55 |
# File 'app/models/comable/order.rb', line 53 def current_total_price order_deliveries.map(&:order_details).flatten.each(&:current_subtotal_price) end |
#incomplete? ⇒ Boolean
48 49 50 |
# File 'app/models/comable/order.rb', line 48 def incomplete? completed_at.nil? end |
#precomplete ⇒ Object
28 29 30 31 32 |
# File 'app/models/comable/order.rb', line 28 def precomplete valid_stock fail Comable::InvalidOrder, errors..join("\n") if errors.any? self end |
#total_price ⇒ Object
売価合計を取得
58 59 60 |
# File 'app/models/comable/order.rb', line 58 def total_price order_deliveries.map(&:order_details).flatten.each(&:subtotal_price) end |