class SendSchoolConsentRequestsJob
Public Instance Methods
Source
# File app/jobs/send_school_consent_requests_job.rb, line 14 def patients_and_programmes(session) patient_programmes_eligible_for_notification( session: ) do |patient, programmes| if should_send_notification?(patient:, session:, programmes:) yield patient, programmes end end end
Source
# File app/jobs/send_school_consent_requests_job.rb, line 8 def perform(session) patients_and_programmes(session) do |patient, programmes| patient.notifier.send_consent_request(programmes, session:, sent_by: nil) end end
Source
# File app/jobs/send_school_consent_requests_job.rb, line 24 def should_send_notification?(patient:, session:, programmes:) programmes.any? do |programme| patient.consent_notifications.none? do it.academic_year == session.academic_year && it.request? && it.programmes.include?(programme) end end end