Module: SubjModels::OfficeModule

Defined in:
lib/subj_models/office.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(including_class) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/subj_models/office.rb', line 7

def self.included(including_class)

  including_class.class_eval do

    include SubjModels::ComprisingExternalId

    belongs_to :city

    has_many :event_schedules
    has_many :order_delivery_pickups
    has_many :office_contacts, dependent: :destroy

    validates :name, :address, :lat, :lng, presence: true

    scope :main, -> { where(is_main:  true ) }
    scope :in_offices_list, -> { where(offices_list:  true ) }
    scope :in_courier_list, -> { where(courier_list:  true ) }
    scope :in_pickup_list, -> { where(pickup_list:  true ) }

    scope :has_events, -> do
      joins(:event_schedules).where('event_schedules.event_date >= ?',  DateTime.now.beginning_of_day).uniq
    end

  end

end

Instance Method Details

#to_sObject



34
35
36
# File 'lib/subj_models/office.rb', line 34

def to_s
  name
end