Skip to content

Commit 05dc8fe

Browse files
authored
Merge pull request #5300 from nhsuk/next
Version 6.1.0
2 parents c46a4f5 + 6e5087f commit 05dc8fe

File tree

503 files changed

+4195
-2287
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

503 files changed

+4195
-2287
lines changed

Gemfile.lock

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
GIT
22
remote: https://github.com/citizensadvice/capybara_accessible_selectors.git
3-
revision: 5b9ce7840d04270e99f4f0cb03989e05437326a6
3+
revision: d6f66fd2519368553942769aa7b5a91ce698e91f
44
specs:
55
capybara_accessible_selectors (0.15.0)
66
capybara (~> 3.36)
@@ -115,34 +115,34 @@ GEM
115115
ast (2.4.3)
116116
attr_required (1.0.2)
117117
aws-eventstream (1.4.0)
118-
aws-partitions (1.1186.0)
119-
aws-sdk-accessanalyzer (1.81.0)
120-
aws-sdk-core (~> 3, >= 3.234.0)
118+
aws-partitions (1.1187.0)
119+
aws-sdk-accessanalyzer (1.82.0)
120+
aws-sdk-core (~> 3, >= 3.239.1)
121121
aws-sigv4 (~> 1.5)
122-
aws-sdk-core (3.239.0)
122+
aws-sdk-core (3.239.1)
123123
aws-eventstream (~> 1, >= 1.3.0)
124124
aws-partitions (~> 1, >= 1.992.0)
125125
aws-sigv4 (~> 1.9)
126126
base64
127127
bigdecimal
128128
jmespath (~> 1, >= 1.6.1)
129129
logger
130-
aws-sdk-ec2 (1.579.0)
131-
aws-sdk-core (~> 3, >= 3.234.0)
130+
aws-sdk-ec2 (1.582.0)
131+
aws-sdk-core (~> 3, >= 3.239.1)
132132
aws-sigv4 (~> 1.5)
133133
aws-sdk-ecr (1.114.0)
134134
aws-sdk-core (~> 3, >= 3.234.0)
135135
aws-sigv4 (~> 1.5)
136-
aws-sdk-iam (1.134.0)
137-
aws-sdk-core (~> 3, >= 3.234.0)
136+
aws-sdk-iam (1.136.0)
137+
aws-sdk-core (~> 3, >= 3.239.1)
138138
aws-sigv4 (~> 1.5)
139-
aws-sdk-kms (1.117.0)
140-
aws-sdk-core (~> 3, >= 3.234.0)
139+
aws-sdk-kms (1.118.0)
140+
aws-sdk-core (~> 3, >= 3.239.1)
141141
aws-sigv4 (~> 1.5)
142142
aws-sdk-rds (1.299.0)
143143
aws-sdk-core (~> 3, >= 3.234.0)
144144
aws-sigv4 (~> 1.5)
145-
aws-sdk-s3 (1.203.1)
145+
aws-sdk-s3 (1.205.0)
146146
aws-sdk-core (~> 3, >= 3.234.0)
147147
aws-sdk-kms (~> 1)
148148
aws-sigv4 (~> 1.5)

app/components/app_activity_log_component.rb

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -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

app/components/app_consent_confirmation_component.rb

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -62,20 +62,18 @@ def refused_vaccinations = vaccinations_text(refused_consent_form_programmes)
6262

6363
def vaccinations_text(consent_form_programmes)
6464
programme_names =
65-
consent_form_programmes
66-
.includes(:programme)
67-
.map do |consent_form_programme|
68-
programme = consent_form_programme.programme
69-
70-
if programme.has_multiple_vaccine_methods?
71-
vaccine_method = consent_form_programme.vaccine_methods.first
72-
method_prefix =
73-
Vaccine.human_enum_name(:method_prefix, vaccine_method)
74-
"#{method_prefix} #{programme.name_in_sentence}".lstrip
75-
else
76-
programme.name_in_sentence
77-
end
65+
consent_form_programmes.map do |consent_form_programme|
66+
programme = consent_form_programme.programme
67+
68+
if programme.has_multiple_vaccine_methods?
69+
vaccine_method = consent_form_programme.vaccine_methods.first
70+
method_prefix =
71+
Vaccine.human_enum_name(:method_prefix, vaccine_method)
72+
"#{method_prefix} #{programme.name_in_sentence}".lstrip
73+
else
74+
programme.name_in_sentence
7875
end
76+
end
7977

8078
"#{programme_names.to_sentence} vaccination".pluralize(
8179
programme_names.count

app/components/app_consent_form_card_component.rb

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,7 @@ def call
1212
govuk_summary_list do |summary_list|
1313
summary_list.with_row do |row|
1414
row.with_key { "Programmes" }
15-
row.with_value do
16-
render AppProgrammeTagsComponent.new(@consent_form.programmes)
17-
end
15+
row.with_value { render AppProgrammeTagsComponent.new(programmes) }
1816
end
1917

2018
summary_list.with_row do |row|
@@ -41,6 +39,10 @@ def call
4139

4240
delegate :govuk_summary_list, to: :helpers
4341

42+
def programmes
43+
@consent_form.consent_form_programmes.map(&:programme)
44+
end
45+
4446
def refusal_reason
4547
{
4648
title: @consent_form.human_enum_name(:reason_for_refusal),

app/components/app_gillick_assessment_component.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ def gillick_assessment
1919
.gillick_assessments
2020
.order(created_at: :desc)
2121
.for_session(session)
22-
.find_by(programme:)
22+
.where_programme(programme)
23+
.first
2324
end
2425

2526
def can_assess?

app/components/app_patient_programmes_table_component.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,8 @@ def notes_for_programme(programme:, academic_year:)
7676

7777
def vaccination_status_hash(programme:, academic_year:)
7878
@vaccination_status_hash ||= {}
79-
@vaccination_status_hash[programme.id] ||= {}
80-
@vaccination_status_hash[programme.id][
79+
@vaccination_status_hash[programme.type] ||= {}
80+
@vaccination_status_hash[programme.type][
8181
academic_year
8282
] ||= PatientStatusResolver.new(
8383
patient,

app/components/app_patient_search_result_card_component.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ def status_tag(type)
138138

139139
def status_resolver_for(programme)
140140
@status_resolver_for ||= {}
141-
@status_resolver_for[programme.id] ||= PatientStatusResolver.new(
141+
@status_resolver_for[programme.type] ||= PatientStatusResolver.new(
142142
patient,
143143
programme:,
144144
academic_year:

app/components/app_patient_session_consent_component.rb

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ def latest_consent_request
1414
patient
1515
.consent_notifications
1616
.request
17-
.has_programme(programme)
17+
.has_all_programmes_of([programme])
1818
.joins(:session)
1919
.where(session: { academic_year: })
2020
.order(sent_at: :desc)
@@ -25,8 +25,9 @@ def consents
2525
@consents ||=
2626
patient
2727
.consents
28-
.where(academic_year:, programme:)
29-
.includes(:consent_form, :parent, :programme)
28+
.where_programme(programme)
29+
.where(academic_year:)
30+
.includes(:consent_form, :parent)
3031
.order(created_at: :desc)
3132
end
3233

@@ -47,7 +48,11 @@ def can_send_consent_request?
4748

4849
def grouped_consents
4950
@grouped_consents ||=
50-
ConsentGrouper.call(consents, programme_id: programme.id, academic_year:)
51+
ConsentGrouper.call(
52+
consents,
53+
programme_type: programme.type,
54+
academic_year:
55+
)
5156
end
5257

5358
def who_refused

app/components/app_patient_session_record_component.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ def vaccination_record
4444
end
4545

4646
def default_vaccinate_form
47-
pre_screening_confirmed = patient.pre_screenings.today.exists?(programme:)
47+
pre_screening_confirmed =
48+
patient.pre_screenings.today.where_programme(programme).exists?
4849

4950
VaccinateForm.new(
5051
current_user:,

app/components/app_patient_session_search_result_card_component.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -270,10 +270,10 @@ def note_to_log_event(note)
270270
end
271271

272272
def has_patient_specific_direction?
273-
programme_ids = programmes.map(&:id)
273+
programme_types = programmes.map(&:type)
274274
patient.patient_specific_directions.any? do
275-
it.programme_id.in?(programme_ids) && it.academic_year == academic_year &&
276-
!it.invalidated?
275+
it.programme_type.in?(programme_types) &&
276+
it.academic_year == academic_year && !it.invalidated?
277277
end
278278
end
279279

0 commit comments

Comments
 (0)