Skip to content

Commit c91a04b

Browse files
committed
Rename PatientSession::RegistrationStatus
This renames the model in preparation for replacing its association with `PatientSession` to associations with the `Patient` and the `Session` separately. Jira-Issue: MAV-1821
1 parent 5b51990 commit c91a04b

12 files changed

+45
-45
lines changed

app/controllers/sessions/register_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class Sessions::RegisterController < ApplicationController
1111
layout "full"
1212

1313
def show
14-
@statuses = PatientSession::RegistrationStatus.statuses.keys
14+
@statuses = Patient::RegistrationStatus.statuses.keys
1515

1616
scope =
1717
@session.patient_sessions.includes_programmes.includes(

app/lib/status_updater.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ def update_consent_statuses!
4949
end
5050

5151
def update_registration_statuses!
52-
PatientSession::RegistrationStatus.import!(
52+
Patient::RegistrationStatus.import!(
5353
%i[patient_session_id],
5454
registration_statuses_to_import,
5555
on_duplicate_key_ignore: true
5656
)
5757

58-
PatientSession::RegistrationStatus
58+
Patient::RegistrationStatus
5959
.where(patient_session_id: patient_sessions.select(:id))
6060
.includes(
6161
:session_attendances,
@@ -68,7 +68,7 @@ def update_registration_statuses!
6868
.find_in_batches(batch_size: 10_000) do |batch|
6969
batch.each(&:assign_status)
7070

71-
PatientSession::RegistrationStatus.import!(
71+
Patient::RegistrationStatus.import!(
7272
batch.select(&:changed?),
7373
on_duplicate_key_update: {
7474
conflict_target: [:id],

app/models/patient_session/registration_status.rb renamed to app/models/patient/registration_status.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@
22

33
# == Schema Information
44
#
5-
# Table name: patient_session_registration_statuses
5+
# Table name: patient_registration_statuses
66
#
77
# id :bigint not null, primary key
88
# status :integer default("unknown"), not null
99
# patient_session_id :bigint not null
1010
#
1111
# Indexes
1212
#
13-
# idx_on_patient_session_id_438fc21144 (patient_session_id) UNIQUE
14-
# index_patient_session_registration_statuses_on_status (status)
13+
# index_patient_registration_statuses_on_patient_session_id (patient_session_id) UNIQUE
14+
# index_patient_registration_statuses_on_status (status)
1515
#
1616
# Foreign Keys
1717
#
1818
# fk_rails_... (patient_session_id => patient_sessions.id) ON DELETE => cascade
1919
#
20-
class PatientSession::RegistrationStatus < ApplicationRecord
20+
class Patient::RegistrationStatus < ApplicationRecord
2121
belongs_to :patient_session
2222

2323
has_one :patient, through: :patient_session

app/models/patient_session.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class PatientSession < ApplicationRecord
4444
belongs_to :patient
4545
belongs_to :session
4646

47-
has_one :registration_status
47+
has_one :registration_status, class_name: "Patient::RegistrationStatus"
4848

4949
has_one :location, through: :session
5050
has_one :subteam, through: :session
@@ -187,7 +187,7 @@ class PatientSession < ApplicationRecord
187187
scope :has_registration_status,
188188
->(status) do
189189
where(
190-
PatientSession::RegistrationStatus
190+
Patient::RegistrationStatus
191191
.where("patient_session_id = patient_sessions.id")
192192
.where(status:)
193193
.arel
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# frozen_string_literal: true
2+
3+
class RenamePatientSessionRegistrationStatus < ActiveRecord::Migration[8.0]
4+
def change
5+
rename_table :patient_session_registration_statuses,
6+
:patient_registration_statuses
7+
end
8+
end

db/schema.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -618,11 +618,11 @@
618618
t.index ["status"], name: "index_patient_consent_statuses_on_status"
619619
end
620620

621-
create_table "patient_session_registration_statuses", force: :cascade do |t|
621+
create_table "patient_registration_statuses", force: :cascade do |t|
622622
t.bigint "patient_session_id", null: false
623623
t.integer "status", default: 0, null: false
624-
t.index ["patient_session_id"], name: "idx_on_patient_session_id_438fc21144", unique: true
625-
t.index ["status"], name: "index_patient_session_registration_statuses_on_status"
624+
t.index ["patient_session_id"], name: "index_patient_registration_statuses_on_patient_session_id", unique: true
625+
t.index ["status"], name: "index_patient_registration_statuses_on_status"
626626
end
627627

628628
create_table "patient_sessions", force: :cascade do |t|
@@ -1123,7 +1123,7 @@
11231123
add_foreign_key "patient_changesets", "patients"
11241124
add_foreign_key "patient_consent_statuses", "patients", on_delete: :cascade
11251125
add_foreign_key "patient_consent_statuses", "programmes"
1126-
add_foreign_key "patient_session_registration_statuses", "patient_sessions", on_delete: :cascade
1126+
add_foreign_key "patient_registration_statuses", "patient_sessions", on_delete: :cascade
11271127
add_foreign_key "patient_sessions", "patients"
11281128
add_foreign_key "patient_sessions", "sessions"
11291129
add_foreign_key "patient_specific_directions", "patients"

spec/factories/patient_session_registration_statuses.rb renamed to spec/factories/patient_registration_statuses.rb

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,23 @@
22

33
# == Schema Information
44
#
5-
# Table name: patient_session_registration_statuses
5+
# Table name: patient_registration_statuses
66
#
77
# id :bigint not null, primary key
88
# status :integer default("unknown"), not null
99
# patient_session_id :bigint not null
1010
#
1111
# Indexes
1212
#
13-
# idx_on_patient_session_id_438fc21144 (patient_session_id) UNIQUE
14-
# index_patient_session_registration_statuses_on_status (status)
13+
# index_patient_registration_statuses_on_patient_session_id (patient_session_id) UNIQUE
14+
# index_patient_registration_statuses_on_status (status)
1515
#
1616
# Foreign Keys
1717
#
1818
# fk_rails_... (patient_session_id => patient_sessions.id) ON DELETE => cascade
1919
#
2020
FactoryBot.define do
21-
factory :patient_session_registration_status,
22-
class: "PatientSession::RegistrationStatus" do
21+
factory :patient_registration_status, class: "Patient::RegistrationStatus" do
2322
patient_session
2423

2524
traits_for_enum :status

spec/factories/patient_sessions.rb

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,17 +44,14 @@
4444

4545
trait :unknown_attendance do
4646
registration_status do
47-
association(
48-
:patient_session_registration_status,
49-
patient_session: instance
50-
)
47+
association(:patient_registration_status, patient_session: instance)
5148
end
5249
end
5350

5451
trait :in_attendance do
5552
registration_status do
5653
association(
57-
:patient_session_registration_status,
54+
:patient_registration_status,
5855
:attending,
5956
patient_session: instance
6057
)

spec/factories/patients.rb

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -137,11 +137,7 @@
137137
patient:,
138138
session: evaluator.session
139139
)
140-
create(
141-
:patient_session_registration_status,
142-
:attending,
143-
patient_session:
144-
)
140+
create(:patient_registration_status, :attending, patient_session:)
145141
end
146142
end
147143
end

spec/features/doubles_vaccination_cannot_record_as_admin_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def given_i_am_signed_in_as_an_admin
2020
create(:patient, :consent_given_triage_not_needed, session: @session)
2121

2222
create(
23-
:patient_session_registration_status,
23+
:patient_registration_status,
2424
patient_session:
2525
@patient.patient_sessions.includes(session: :session_dates).first
2626
)

0 commit comments

Comments
 (0)