effective_memberships 0.1.14 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75225933549d813b188349328bc0085c59300aaca562fbb1d1c446dead8af779
4
- data.tar.gz: d03884209ed1744845b4da006b5c390a2b98f3de92229bdc0dc1142832a04879
3
+ metadata.gz: ca7f69647fe281a0f8953227a7c0ecb2cea138de771e5b192a3168bf79c93f38
4
+ data.tar.gz: e1c66037d7175df0cf4f5c729a73242b52b14dcbe51c2aa82ca161ea5f10fb41
5
5
  SHA512:
6
- metadata.gz: ea1277f6778c5520514608398fb6293e7db5be449bcd8fb84386dd6163ca091545f87964e0d71d2d328bbb365b4dd6887c2c5ec60d055bf146fb1e412f5e169e
7
- data.tar.gz: 914e29624e5b40c7f169264b0e8bccf8aaebdb8fa9c4303f06b9318916e68bf59f82a2dd3a2df3e9841568d898e4df653c79cbf74f969ec7c5d84e3e76f8b5c2
6
+ metadata.gz: c70d4c0e95201a64ab9722000775145be07a9c0bbd267193e1a6a133b2330f1f6439d32651a0c7e6e3f6f18dc5bc6213e9090c06fbf90bab297302e74dedcef1
7
+ data.tar.gz: a1b3282710ab4c04bab435233a4a63f26d21d474da980fa66cfb3456b50108dd9d8ba94d76f27f9da09824456f5fc4f045df9853a4765b793f747674bc4213ba
@@ -13,6 +13,8 @@ module Admin
13
13
  col :created_at, visible: false
14
14
  col :id, visible: false
15
15
 
16
+ col :period, visible: false
17
+
16
18
  unless attributes[:owner_id] || attributes[:applicant_id] || attributes[:fee_payment_id]
17
19
  col :owner
18
20
  end
@@ -209,11 +209,11 @@ module EffectiveMembershipsRegistrar
209
209
  period_end_on = period_end_on(date: date)
210
210
 
211
211
  if owner.outstanding_fee_payment_fees.present?
212
- fp = EffectiveMemberships.FeePayment.new(owner: owner)
213
- fp.ready!
214
- fp.submit_order.purchase!(skip_buyer_validations: true, email: false)
212
+ order = Effective::Order.new(items: owner.outstanding_fee_payment_fees, user: owner)
213
+ order.purchase!(skip_buyer_validations: true, email: false)
215
214
  end
216
215
 
216
+ owner.update_membership_status!
217
217
  owner.membership.update!(fees_paid_period: period, fees_paid_through_period: period_end_on)
218
218
  end
219
219
 
@@ -253,6 +253,7 @@ module EffectiveMembershipsRegistrar
253
253
 
254
254
  # Create Renewal Fees
255
255
  Effective::Membership.create_renewal_fees(period).find_each do |membership|
256
+
256
257
  membership.categories.select(&:create_renewal_fees?).map do |category|
257
258
  fee = membership.owner.build_renewal_fee(category: category, period: period, late_on: late_on, bad_standing_on: bad_standing_on)
258
259
  raise("expected build_renewal_fee to return a fee for period #{period}") unless fee.kind_of?(Effective::Fee)
@@ -39,21 +39,15 @@ module Effective
39
39
  }
40
40
 
41
41
  scope :create_renewal_fees, -> (period = nil) {
42
- deep.with_unpaid_fees_through(period)
43
- .where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
44
- #.where(category_id: EffectiveMemberships.Category.create_renewal_fees)
42
+ deep.with_unpaid_fees_through(period).where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
45
43
  }
46
44
 
47
45
  scope :create_late_fees, -> (period = nil) {
48
- deep.with_unpaid_fees_through(period)
49
- .where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
50
- #.where(category_id: EffectiveMemberships.Category.create_late_fees)
46
+ deep.with_unpaid_fees_through(period).where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
51
47
  }
52
48
 
53
49
  scope :create_bad_standing, -> (period = nil) {
54
- deep.with_unpaid_fees_through(period)
55
- .where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
56
- #.where(category_id: EffectiveMemberships.Category.create_bad_standing)
50
+ deep.with_unpaid_fees_through(period).where.not(fees_paid_period: nil) # Must have purchased a Prorated or Renewal Fee before
57
51
  }
58
52
 
59
53
  before_validation do
@@ -3,8 +3,10 @@ module Effective
3
3
  belongs_to :category, polymorphic: true
4
4
  belongs_to :membership, polymorphic: true
5
5
 
6
+ log_changes(to: :membership) if respond_to?(:log_changes)
7
+
6
8
  def to_s
7
- 'membership category'
9
+ category&.to_s || 'membership category'
8
10
  end
9
11
 
10
12
  end
@@ -7,8 +7,11 @@
7
7
  - collection = EffectiveMembershipsOwner.descendants.map { |d| [d.name.to_s, d.members.sorted] }.to_h
8
8
  = f.select :owner_id, collection, polymorphic: true
9
9
 
10
- = f.select :fee_type , EffectiveMemberships.custom_fee_types
10
+ - if f.object.new_record?
11
+ = f.select :fee_type, EffectiveMemberships.custom_fee_types
12
+ - else
13
+ = f.static_field :fee_type
14
+
11
15
  = f.price_field :price
12
16
 
13
- - if fee.new_record?
14
- = effective_submit(f)
17
+ = effective_submit(f)
@@ -1,3 +1,3 @@
1
1
  module EffectiveMemberships
2
- VERSION = '0.1.14'
2
+ VERSION = '0.1.18'
3
3
  end
@@ -8,10 +8,14 @@ namespace :effective_memberships do
8
8
  # rake effective_memberships:create_fees
9
9
  desc 'Run daily to create Renewal and Late fees'
10
10
  task create_fees: :environment do
11
- if ActiveRecord::Base.connection.table_exists?(:memberships)
12
- EffectiveLogger.info "Running effective_memberships:create_fees scheduled task" if defined?(EffectiveLogger)
13
- EffectiveMemberships.Registrar.create_fees!
11
+ begin
12
+ if ActiveRecord::Base.connection.table_exists?(:memberships)
13
+ EffectiveLogger.info "Running effective_memberships:create_fees scheduled task" if defined?(EffectiveLogger)
14
+ EffectiveMemberships.Registrar.create_fees!
15
+ end
16
+ rescue => e
17
+ ExceptionNotifier.notify_exception(e) if defined?(ExceptionNotifier)
18
+ puts "Error creating effective membership fees: #{e.errors.inspect}"
14
19
  end
15
20
  end
16
-
17
21
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_memberships
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.14
4
+ version: 0.1.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-06 00:00:00.000000000 Z
11
+ date: 2022-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails