Browse Source

feat: add activating soon to scheme filtering

pull/2061/head
natdeanlewissoftwire 2 years ago
parent
commit
490b8b778f
  1. 1
      app/helpers/filters_helper.rb
  2. 4
      app/models/scheme.rb
  3. 1
      spec/models/scheme_spec.rb

1
app/helpers/filters_helper.rb

@ -52,6 +52,7 @@ module FiltersHelper
"incomplete" => "Incomplete",
"active" => "Active",
"deactivating_soon" => "Deactivating soon",
"activating_soon" => "Activating soon",
"reactivating_soon" => "Reactivating soon",
"deactivated" => "Deactivated",
}.freeze

4
app/models/scheme.rb

@ -65,6 +65,10 @@ class Scheme < ApplicationRecord
.where("scheme_deactivation_periods.reactivation_date > ?", Time.zone.now)
}
scope :activating_soon, lambda {
where("startdate > ?", Time.zone.now)
}
scope :active_status, lambda {
where.not(id: joins(:scheme_deactivation_periods).reactivating_soon.pluck(:id))
.where.not(id: joins(:scheme_deactivation_periods).deactivated.pluck(:id))

1
spec/models/scheme_spec.rb

@ -123,6 +123,7 @@ RSpec.describe Scheme, type: :model do
let(:deactivated_scheme_2) { FactoryBot.create(:scheme) }
let(:reactivating_soon_scheme) { FactoryBot.create(:scheme) }
let(:reactivating_soon_scheme_2) { FactoryBot.create(:scheme) }
let(:activating_soon_scheme) { FactoryBot.create(:scheme, startdate: Time.zone.today + 1.week)}
before do
scheme.destroy!

Loading…
Cancel
Save