|
|
|
@ -40,6 +40,7 @@ class Organisation < ApplicationRecord |
|
|
|
scope :filter_by_active, -> { where(active: true) } |
|
|
|
scope :filter_by_active, -> { where(active: true) } |
|
|
|
scope :filter_by_inactive, -> { where(active: false) } |
|
|
|
scope :filter_by_inactive, -> { where(active: false) } |
|
|
|
scope :merged_during_open_collection_period, -> { where("merge_date >= ?", FormHandler.instance.start_date_of_earliest_open_for_editing_collection_period) } |
|
|
|
scope :merged_during_open_collection_period, -> { where("merge_date >= ?", FormHandler.instance.start_date_of_earliest_open_for_editing_collection_period) } |
|
|
|
|
|
|
|
scope :merged_during_displayed_collection_period, -> { where("merge_date >= ?", FormHandler.instance.start_date_of_earliest_lettings_form) } |
|
|
|
|
|
|
|
|
|
|
|
has_paper_trail |
|
|
|
has_paper_trail |
|
|
|
|
|
|
|
|
|
|
|
@ -156,16 +157,20 @@ class Organisation < ApplicationRecord |
|
|
|
sales_logs.after_date(FormHandler.instance.sales_earliest_open_for_editing_collection_start_date).duplicate_sets.map { |array_str| array_str ? array_str.map(&:to_i) : [] } |
|
|
|
sales_logs.after_date(FormHandler.instance.sales_earliest_open_for_editing_collection_start_date).duplicate_sets.map { |array_str| array_str ? array_str.map(&:to_i) : [] } |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def recently_absorbed_organisations_grouped_by_merge_date |
|
|
|
def organisations_absorbed_during_displayed_collection_period_grouped_by_merge_date |
|
|
|
return unless absorbed_organisations.present? && absorbed_organisations.merged_during_open_collection_period.present? |
|
|
|
return unless absorbed_organisations.present? && absorbed_organisations.merged_during_displayed_collection_period.present? |
|
|
|
|
|
|
|
|
|
|
|
absorbed_organisations.merged_during_open_collection_period.group_by(&:merge_date) |
|
|
|
absorbed_organisations.merged_during_displayed_collection_period.group_by(&:merge_date) |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def has_recent_absorbed_organisations? |
|
|
|
def has_recent_absorbed_organisations? |
|
|
|
absorbed_organisations&.merged_during_open_collection_period.present? |
|
|
|
absorbed_organisations&.merged_during_open_collection_period.present? |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def has_organisations_absorbed_during_displayed_collection_period? |
|
|
|
|
|
|
|
absorbed_organisations&.merged_during_displayed_collection_period.present? |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
def organisation_or_stock_owner_signed_dsa_and_holds_own_stock? |
|
|
|
def organisation_or_stock_owner_signed_dsa_and_holds_own_stock? |
|
|
|
return true if data_protection_confirmed? && holds_own_stock? |
|
|
|
return true if data_protection_confirmed? && holds_own_stock? |
|
|
|
return true if stock_owners.any? { |stock_owner| stock_owner.data_protection_confirmed? && stock_owner.holds_own_stock? } |
|
|
|
return true if stock_owners.any? { |stock_owner| stock_owner.data_protection_confirmed? && stock_owner.holds_own_stock? } |
|
|
|
|