Class: Renalware::HD::Scheduling::FindOrCreateMasterDiary

Inherits:
Object
  • Object
show all
Defined in:
app/models/renalware/hd/scheduling/find_or_create_master_diary.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(unit_id, user) ⇒ FindOrCreateMasterDiary

Returns a new instance of FindOrCreateMasterDiary.



13
14
15
16
# File 'app/models/renalware/hd/scheduling/find_or_create_master_diary.rb', line 13

def initialize(unit_id, user)
  @unit_id = unit_id
  @user = user
end

Instance Attribute Details

#unit_idObject (readonly)

Returns the value of attribute unit_id.



7
8
9
# File 'app/models/renalware/hd/scheduling/find_or_create_master_diary.rb', line 7

def unit_id
  @unit_id
end

#userObject (readonly)

Returns the value of attribute user.



7
8
9
# File 'app/models/renalware/hd/scheduling/find_or_create_master_diary.rb', line 7

def user
  @user
end

Class Method Details

.for_unit(unit_id, user) ⇒ Object



9
10
11
# File 'app/models/renalware/hd/scheduling/find_or_create_master_diary.rb', line 9

def self.for_unit(unit_id, user)
  new(unit_id, user).call
end

Instance Method Details

#callObject



18
19
20
21
22
23
# File 'app/models/renalware/hd/scheduling/find_or_create_master_diary.rb', line 18

def call
  MasterDiary.find_or_initialize_by(hospital_unit_id: unit_id).tap do |master|
    master.by = user
    master.save!
  end
end