@@ -21,7 +21,7 @@ def initialize(team:, patient:, session: nil)
2121 @patient . archive_reasons . where ( team :) . includes ( :created_by )
2222
2323 @attendance_records =
24- ( patient || patient_session )
24+ patient
2525 . attendance_records
2626 . includes ( :location )
2727 . then do |scope |
@@ -35,11 +35,10 @@ def initialize(team:, patient:, session: nil)
3535 :consent_form ,
3636 :parent ,
3737 :recorded_by ,
38- :programme ,
3938 patient : :parent_relationships
4039 )
4140 . then do |scope |
42- session ? scope . where ( programme : session . programmes ) : scope
41+ session ? scope . where ( programme_type : session . programme_types ) : scope
4342 end
4443
4544 @gillick_assessments =
@@ -52,15 +51,19 @@ def initialize(team:, patient:, session: nil)
5251 @notes =
5352 @patient
5453 . notes
55- . includes ( :created_by , :patient , session : :programmes )
54+ . includes ( :created_by , :patient , :session )
5655 . then { |scope | session ? scope . where ( session :) : scope }
5756
5857 @notify_log_entries =
5958 @patient
6059 . notify_log_entries
6160 . includes ( :sent_by )
6261 . then do |scope |
63- session ? scope . where ( programme_ids : session . programmes . ids ) : scope
62+ if session
63+ scope . where ( programme_types : session . programme_types )
64+ else
65+ scope
66+ end
6467 end
6568
6669 @patient_locations =
@@ -76,7 +79,7 @@ def initialize(team:, patient:, session: nil)
7679 . patient_specific_directions
7780 . includes ( :created_by )
7881 . then do |scope |
79- session ? scope . where ( programme : session . programmes ) : scope
82+ session ? scope . where ( programme_type : session . programme_types ) : scope
8083 end
8184
8285 @pre_screenings =
@@ -90,7 +93,7 @@ def initialize(team:, patient:, session: nil)
9093 . triages
9194 . includes ( :performed_by )
9295 . then do |scope |
93- session ? scope . where ( programme : session . programmes ) : scope
96+ session ? scope . where ( programme_type : session . programme_types ) : scope
9497 end
9598
9699 @vaccination_records =
@@ -429,17 +432,17 @@ def attendance_events
429432 end
430433
431434 def programmes_for ( object )
432- if object . respond_to? ( :programme_ids )
433- object . programme_ids . map { programmes_by_id . fetch ( it ) }
434- elsif object . respond_to? ( :programme_id )
435- [ programmes_by_id . fetch ( object . programme_id ) ]
435+ if object . respond_to? ( :programme_types )
436+ object . programme_types . map { programmes_by_type . fetch ( it ) }
437+ elsif object . respond_to? ( :programme_type )
438+ [ programmes_by_type . fetch ( object . programme_type ) ]
436439 else
437440 object . programmes
438441 end
439442 end
440443
441- def programmes_by_id
442- @programmes_by_id ||= Programme . all . index_by ( &:id )
444+ def programmes_by_type
445+ @programmes_by_type ||= Programme . all . index_by ( &:type )
443446 end
444447
445448 private
0 commit comments