Class: Renalware::Letters::Letter::Draft

Inherits:
Renalware::Letters::Letter show all
Defined in:
app/models/renalware/letters/letter/draft.rb

Constant Summary

Constants inherited from Renalware::Letters::Letter

EVENTS_MAP

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Renalware::Letters::Letter

#archive_recipients!, #archived?, #archived_by, #determine_counterpart_ccs, #effective_date, effective_date_sort, #find_cc_recipient_for_contact, for_event, #letter_event, #signed?, #subject?

Methods included from Accountable

#first_or_create_by!, #save_by, #save_by!, #update_by

Class Method Details

.policy_classObject



8
9
10
# File 'app/models/renalware/letters/letter/draft.rb', line 8

def self.policy_class
  DraftLetterPolicy
end

Instance Method Details

#revise(params) ⇒ Object



12
13
14
15
# File 'app/models/renalware/letters/letter/draft.rb', line 12

def revise(params)
  params = LetterParamsProcessor.new(patient).call(params)
  self.attributes = params
end

#submit(by:) ⇒ Object



17
18
19
20
21
22
23
# File 'app/models/renalware/letters/letter/draft.rb', line 17

def submit(by:)
  becomes!(PendingReview).tap do |letter|
    letter.by = by
    letter. = by
    letter. = Time.current
  end
end