class StatusGenerator::Triage
Public Class Methods
Source
# File app/lib/status_generator/triage.rb, line 4 def initialize( programme_type:, academic_year:, patient:, consents:, triages:, vaccination_records:, parents:, sessions:, consent_notifications: ) @programme_type = programme_type @academic_year = academic_year @patient = patient @consents = consents @triages = triages @vaccination_records = vaccination_records @parents = parents @sessions = sessions @consent_notifications = consent_notifications end
Public Instance Methods
Source
# File app/lib/status_generator/triage.rb, line 62 def consent_requires_triage? latest_consents.any?(&:requires_triage?) end
Source
# File app/lib/status_generator/triage.rb, line 56 def delay_vaccination_until_date if status_should_be_delay_vaccination? latest_triage&.delay_vaccination_until end end
Source
# File app/lib/status_generator/triage.rb, line 26 def programme Programme.find(programme_type, disease_types:, patient:) end
Source
# File app/lib/status_generator/triage.rb, line 30 def status if status_should_be_safe_to_vaccinate? :safe_to_vaccinate elsif status_should_be_do_not_vaccinate? :do_not_vaccinate elsif status_should_be_delay_vaccination? :delay_vaccination elsif status_should_be_invite_to_clinic? :invite_to_clinic elsif status_should_be_required? :required else :not_required end end
Source
# File app/lib/status_generator/triage.rb, line 66 def vaccination_history_requires_triage? return false unless programme.triage_on_vaccination_history? existing_records = vaccination_records.select { it.programme_type == programme_type } if programme.seasonal? existing_records.select! { it.academic_year == academic_year } end existing_records.any?(&:administered?) && !vaccinated? end
Source
# File app/lib/status_generator/triage.rb, line 46 def vaccine_method latest_triage&.vaccine_method if status_should_be_safe_to_vaccinate? end
Source
# File app/lib/status_generator/triage.rb, line 50 def without_gelatine latest_triage&.without_gelatine if status_should_be_safe_to_vaccinate? end