Class: SolidusSubscriptions::Installment
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- SolidusSubscriptions::Installment
- Defined in:
- app/models/solidus_subscriptions/installment.rb
Instance Method Summary collapse
-
#failed!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as a failure.
-
#fulfilled? ⇒ Boolean
Had this installment been fulfilled by a completed order.
-
#line_item_builder ⇒ SolidusSubscriptions::LineItemBuilder
Get the builder for the subscription_line_item.
-
#out_of_stock ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as out of stock.
-
#payment_failed!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as having a failed payment.
-
#success!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as a success.
-
#unfulfilled? ⇒ Boolean
Does this installment still need to be fulfilled by a completed order.
Instance Method Details
#failed!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as a failure
74 75 76 77 78 79 80 81 82 |
# File 'app/models/solidus_subscriptions/installment.rb', line 74 def failed!(order) advance_actionable_date! details.create!( success: false, order: order, message: I18n.t('solidus_subscriptions.installment_details.failed') ) end |
#fulfilled? ⇒ Boolean
Had this installment been fulfilled by a completed order
94 95 96 |
# File 'app/models/solidus_subscriptions/installment.rb', line 94 def fulfilled? details.where(success: true).exists? end |
#line_item_builder ⇒ SolidusSubscriptions::LineItemBuilder
Get the builder for the subscription_line_item. This will be an object that can generate the appropriate line item for the subscribable object
33 34 35 |
# File 'app/models/solidus_subscriptions/installment.rb', line 33 def line_item_builder subscription.line_item_builder end |
#out_of_stock ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as out of stock.
41 42 43 44 45 46 47 48 |
# File 'app/models/solidus_subscriptions/installment.rb', line 41 def out_of_stock advance_actionable_date! details.create!( success: false, message: I18n.t('solidus_subscriptions.installment_details.out_of_stock') ) end |
#payment_failed!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as having a failed payment
105 106 107 108 109 110 111 112 113 |
# File 'app/models/solidus_subscriptions/installment.rb', line 105 def payment_failed!(order) advance_actionable_date! details.create!( success: false, order: order, message: I18n.t('solidus_subscriptions.installment_details.payment_failed') ) end |
#success!(order) ⇒ SolidusSubscriptions::InstallmentDetail
Mark this installment as a success
57 58 59 60 61 62 63 64 65 |
# File 'app/models/solidus_subscriptions/installment.rb', line 57 def success!(order) update!(actionable_date: nil) details.create!( success: true, order: order, message: I18n.t('solidus_subscriptions.installment_details.success') ) end |
#unfulfilled? ⇒ Boolean
Does this installment still need to be fulfilled by a completed order
87 88 89 |
# File 'app/models/solidus_subscriptions/installment.rb', line 87 def unfulfilled? !fulfilled? end |