class Organisation < ApplicationRecord has_many :users has_many :owned_case_logs, class_name: "CaseLog", foreign_key: "owning_organisation_id" has_many :managed_case_logs, class_name: "CaseLog", foreign_key: "managing_organisation_id" include DbEnums enum "Org type": DbEnums.org_type, _suffix: true def case_logs CaseLog.for_organisation(self) end def completed_case_logs case_logs.completed end def not_completed_case_logs case_logs.not_completed end def address_string %i[address_line1 address_line2 postcode].map { |field| public_send(field) }.join("\n") end def display_attributes { name: name, address: address_string, telephone_number: phone, type: "Org type", local_authorities_operated_in: local_authorities, holds_own_stock: holds_own_stock, other_stock_owners: other_stock_owners, managing_agents: managing_agents, } end end