Skip to content

Commit 548419d

Browse files
committed
wip
1 parent 0756e06 commit 548419d

31 files changed

+249
-203
lines changed

app/components/app_patient_programmes_table_component.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ def vaccination_records_for(programme:, academic_year: nil)
258258
end
259259

260260
def eligible_year_groups_for(programme:)
261-
location_ids = patient.patient_sessions.joins(:session).select(:location_id)
261+
location_ids = patient.patient_sessions.select(:location_id)
262262

263263
LocationProgrammeYearGroup
264264
.where(location_id: location_ids)

app/components/app_session_actions_component.rb

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,7 @@ def render? = rows.any?
2020
delegate :academic_year, :programmes, to: :session
2121

2222
def patient_sessions
23-
session
24-
.patient_sessions
25-
.joins(:patient, :session)
26-
.appear_in_programmes(programmes)
23+
session.patient_sessions.joins(:patient).appear_in_programmes(programmes)
2724
end
2825

2926
def rows

app/components/app_session_details_summary_component.rb

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,7 @@ def call
1717
delegate :programmes, to: :session
1818

1919
def patient_sessions
20-
session
21-
.patient_sessions
22-
.joins(:patient, :session)
23-
.appear_in_programmes(programmes)
20+
session.patient_sessions.joins(:patient).appear_in_programmes(programmes)
2421
end
2522

2623
def cohort_row

app/components/app_session_needs_review_warning_component.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ def make_row_from_warning(warning)
4545
def patient_sessions
4646
@session
4747
.patient_sessions
48-
.joins(:patient, :session)
48+
.joins(:patient)
4949
.appear_in_programmes(@session.programmes)
5050
end
5151
end

app/controllers/patient_sessions/base_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def set_patient
3636

3737
def set_patient_session
3838
@patient_session =
39-
PatientSession.find_by!(patient: @patient, session: @session)
39+
PatientSession.find_by!(patient: @patient, location: @session.location, academic_year: @session.academic_year)
4040
end
4141

4242
def set_programme

app/controllers/patients_controller.rb

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,12 @@ def set_patient
4646
:school,
4747
consents: %i[parent patient],
4848
parent_relationships: :parent,
49-
sessions: :location,
5049
vaccination_records: :programme
5150
).find(params[:id])
5251
end
5352

5453
def set_in_generic_clinic
55-
generic_clinic_session =
56-
current_team.generic_clinic_session(academic_year: AcademicYear.pending)
57-
@in_generic_clinic = @patient.sessions.include?(generic_clinic_session)
54+
@in_generic_clinic = @patient.patient_sessions.exists?(location: current_team.generic_clinic, academic_year: AcademicYear.pending)
5855
end
5956

6057
def record_access_log_entry

app/controllers/programmes/base_controller.rb

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ def patient_ids
2424
@patient_ids ||=
2525
PatientSession
2626
.distinct
27-
.joins(:patient, :session)
28-
.where(session_id: session_ids)
27+
.joins(:patient)
28+
.joins_sessions
29+
.where("sessions.id IN (?)", session_ids)
2930
.appear_in_programmes([@programme])
3031
.not_archived(team: current_team)
3132
.pluck(:patient_id)

app/controllers/sessions/consent_controller.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ def show
1414
scope =
1515
@session
1616
.patient_sessions
17-
.includes_programmes
1817
.includes(patient: [:consent_statuses, { notes: :created_by }])
1918
.has_consent_status(@statuses, programme: @form.programmes)
2019

app/controllers/sessions_controller.rb

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,11 @@ def index
1818

1919
@patient_count_by_session_id =
2020
PatientSession
21-
.where(session_id: sessions.map(&:id))
22-
.joins(:patient, :session)
21+
.joins_sessions
22+
.where("sessions.id IN (?)", sessions.pluck(:id))
23+
.joins(:patient)
2324
.appear_in_programmes(@programmes)
24-
.group(:session_id)
25+
.group("sessions.id")
2526
.count
2627

2728
@pagy, @sessions = pagy_array(sessions)

app/forms/patient_search_form.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ def filter_nhs_number(scope)
129129
def filter_programmes(scope)
130130
if programmes.present?
131131
if @session
132-
scope.joins(:patient, :session).appear_in_programmes(programmes)
132+
scope.joins(:patient).appear_in_programmes(programmes)
133133
else
134134
scope.appear_in_programmes(programmes, academic_year:)
135135
end

0 commit comments

Comments
 (0)