Class: Renalware::Letters::ReviseLetter
- Inherits:
-
Object
- Object
- Renalware::Letters::ReviseLetter
show all
- Includes:
- LetterPathology, Wisper::Publisher
- Defined in:
- app/models/renalware/letters/revise_letter.rb
Class Method Summary
collapse
Instance Method Summary
collapse
#build_pathology_snapshot
Class Method Details
.build ⇒ Object
11
12
13
|
# File 'app/models/renalware/letters/revise_letter.rb', line 11
def self.build
new
end
|
Instance Method Details
#call(patient, letter_id, params = {}) ⇒ Object
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'app/models/renalware/letters/revise_letter.rb', line 15
def call(patient, letter_id, params = {})
letter = patient.letters.pending.find(letter_id)
Letter.transaction do
letter.revise(params)
if letter.changes.key?(:pathology_timestamp)
letter.pathology_snapshot = build_pathology_snapshot(patient)
end
letter.save!
end
broadcast(:revise_letter_successful, letter)
rescue ActiveRecord::RecordInvalid
broadcast(:revise_letter_failed, letter)
end
|