renalware-core 2.0.51 → 2.0.52
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/app/assets/stylesheets/renalware/application.scss +2 -1
- data/app/assets/stylesheets/renalware/base/_mixins.scss +3 -3
- data/app/assets/stylesheets/renalware/base/_variables.scss +33 -33
- data/app/assets/stylesheets/renalware/clipboard.scss +2 -2
- data/app/assets/stylesheets/renalware/hd_diary_pdf.scss +8 -8
- data/app/assets/stylesheets/renalware/lib/_foundation_and_overrides.scss +25 -25
- data/app/assets/stylesheets/renalware/lib/_select2-foundation5-overrides.scss +12 -0
- data/app/assets/stylesheets/renalware/modules/_admissions.scss +3 -3
- data/app/assets/stylesheets/renalware/modules/_clinical.scss +34 -33
- data/app/assets/stylesheets/renalware/modules/_clipboard.scss +3 -3
- data/app/assets/stylesheets/renalware/modules/_dashboard.scss +2 -2
- data/app/assets/stylesheets/renalware/modules/_events.scss +1 -1
- data/app/assets/stylesheets/renalware/modules/_feeds.scss +1 -1
- data/app/assets/stylesheets/renalware/modules/_hd.scss +44 -39
- data/app/assets/stylesheets/renalware/modules/_letters.scss +6 -6
- data/app/assets/stylesheets/renalware/modules/_medications.scss +15 -4
- data/app/assets/stylesheets/renalware/modules/_messaging.scss +2 -2
- data/app/assets/stylesheets/renalware/modules/_pathology.scss +24 -15
- data/app/assets/stylesheets/renalware/modules/_patients.scss +35 -29
- data/app/assets/stylesheets/renalware/modules/_pd.scss +10 -6
- data/app/assets/stylesheets/renalware/modules/_problems.scss +1 -1
- data/app/assets/stylesheets/renalware/modules/_renal.scss +3 -3
- data/app/assets/stylesheets/renalware/modules/_snippets.scss +29 -20
- data/app/assets/stylesheets/renalware/modules/_system.scss +11 -3
- data/app/assets/stylesheets/renalware/modules/_users.scss +5 -5
- data/app/assets/stylesheets/renalware/partials/_animation.scss +1 -0
- data/app/assets/stylesheets/renalware/partials/_animations.scss +1 -0
- data/app/assets/stylesheets/renalware/partials/_autocomplete.scss +5 -5
- data/app/assets/stylesheets/renalware/partials/_beta_banner.scss +1 -1
- data/app/assets/stylesheets/renalware/partials/_button.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_components.scss +1 -1
- data/app/assets/stylesheets/renalware/partials/_datepicker.scss +1 -1
- data/app/assets/stylesheets/renalware/partials/_disabled_block.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_document.scss +6 -6
- data/app/assets/stylesheets/renalware/partials/_editor.scss +11 -11
- data/app/assets/stylesheets/renalware/partials/_errors.scss +8 -6
- data/app/assets/stylesheets/renalware/partials/_forms.scss +27 -27
- data/app/assets/stylesheets/renalware/partials/_highlight.scss +1 -1
- data/app/assets/stylesheets/renalware/partials/_iframe.scss +1 -1
- data/app/assets/stylesheets/renalware/partials/_layout.scss +25 -23
- data/app/assets/stylesheets/renalware/partials/_lists.scss +8 -7
- data/app/assets/stylesheets/renalware/partials/_mdm.scss +3 -3
- data/app/assets/stylesheets/renalware/partials/_modal_window.scss +23 -21
- data/app/assets/stylesheets/renalware/partials/_navigation.scss +36 -36
- data/app/assets/stylesheets/renalware/partials/_patient_search.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_simple_form.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_tables.scss +48 -46
- data/app/assets/stylesheets/renalware/partials/_tabs.scss +8 -8
- data/app/assets/stylesheets/renalware/partials/_toggle.scss +3 -3
- data/app/assets/stylesheets/renalware/partials/_tooltip.scss +1 -342
- data/app/assets/stylesheets/renalware/partials/_typography.scss +4 -4
- data/app/assets/stylesheets/renalware/pdf.scss +7 -7
- data/app/assets/stylesheets/renalware/print/pathology_request_forms.scss +4 -4
- data/app/assets/stylesheets/renalware/protocol_pdf.scss +50 -42
- data/app/assets/stylesheets/renalware/table_pdf.scss +27 -24
- data/app/assets/stylesheets/renalware/watermark.scss +3 -3
- data/app/controllers/renalware/accesses/assessments_controller.rb +12 -19
- data/app/controllers/renalware/base_controller.rb +2 -0
- data/app/controllers/renalware/events/events_controller.rb +12 -11
- data/app/controllers/renalware/hd/current_profile_controller.rb +2 -8
- data/app/controllers/renalware/hd/mdm_patients_controller.rb +9 -3
- data/app/controllers/renalware/letters/electronic_receipts_controller.rb +0 -5
- data/app/controllers/renalware/letters/letters_controller.rb +0 -6
- data/app/controllers/renalware/low_clearance/profiles_controller.rb +1 -8
- data/app/controllers/renalware/patients/patients_controller.rb +5 -15
- data/app/controllers/renalware/pd/assessments_controller.rb +3 -16
- data/app/controllers/renalware/pd/training_sessions_controller.rb +6 -20
- data/app/controllers/renalware/renal/profiles_controller.rb +1 -9
- data/app/controllers/renalware/research/studies_controller.rb +3 -2
- data/app/controllers/renalware/research/study_participants_controller.rb +9 -3
- data/app/controllers/renalware/transplants/donor_workups_controller.rb +1 -10
- data/app/controllers/renalware/virology/dashboards_controller.rb +1 -1
- data/app/controllers/renalware/virology/profiles_controller.rb +1 -14
- data/app/helpers/renalware/admin_helper.rb +4 -0
- data/app/models/concerns/renalware/ordered_set_scope.rb +1 -1
- data/app/models/concerns/renalware/patient_pathology_scopes.rb +8 -2
- data/app/models/concerns/renalware/supersedeable.rb +10 -3
- data/app/models/renalware/admissions/consult_query.rb +14 -0
- data/app/models/renalware/hd/mdm_patients_form.rb +8 -1
- data/app/models/renalware/letters/electronic_recipient_options.rb +11 -3
- data/app/models/renalware/letters/letter.rb +3 -3
- data/app/models/renalware/letters/printing/create_pdf_by_interleaving_address_sheet_and_letter_for_each_recipient.rb +1 -0
- data/app/models/renalware/letters/recipient.rb +12 -1
- data/app/models/renalware/low_clearance.rb +1 -1
- data/app/models/renalware/low_clearance/mdm_patients_query.rb +3 -1
- data/app/models/renalware/messaging.rb +0 -4
- data/app/models/renalware/messaging/internal/recipient_options.rb +14 -4
- data/app/models/renalware/pathology/observation_descriptions_by_code_query.rb +1 -1
- data/app/models/renalware/pathology/ordered_patient_query.rb +1 -1
- data/app/models/renalware/research/study_participant.rb +2 -0
- data/app/models/renalware/research/study_participants_query.rb +20 -0
- data/app/models/renalware/transplants/registrations/wait_list_query.rb +14 -0
- data/app/models/renalware/ukrdc/send_patients.rb +1 -13
- data/app/models/renalware/user.rb +4 -1
- data/app/policies/renalware/virology/{dasboard_policy.rb → dashboard_policy.rb} +0 -0
- data/app/presenters/renalware/letters/letter_presenter.rb +24 -6
- data/app/presenters/renalware/transplants/consent_presenter.rb +2 -1
- data/app/values/renalware/address.rb +1 -1
- data/app/views/renalware/admin/users/_tabs.html.slim +4 -2
- data/app/views/renalware/admissions/consults/_table.html.slim +1 -2
- data/app/views/renalware/api/ukrdc/patients/_allergies.xml.builder +1 -1
- data/app/views/renalware/api/ukrdc/patients/_diagnoses.xml.builder +8 -3
- data/app/views/renalware/api/ukrdc/patients/_documents.xml.builder +1 -1
- data/app/views/renalware/events/swabs/_list.html.slim +1 -1
- data/app/views/renalware/hd/current_profile/_form.html.slim +25 -21
- data/app/views/renalware/hd/mdm_patients/_filters.html.slim +9 -4
- data/app/views/renalware/letters/letters/_additional_ccs.html.slim +5 -4
- data/app/views/renalware/letters/letters/edit.html.slim +1 -0
- data/app/views/renalware/letters/letters/new.html.slim +1 -1
- data/app/views/renalware/patients/patients/edit.html.slim +2 -2
- data/app/views/renalware/renal/registry_preflight_checks/_filters.html.slim +3 -3
- data/app/views/renalware/renal/registry_preflight_checks/_table.html.slim +9 -5
- data/app/views/renalware/renal/registry_preflight_checks/deaths.html.slim +1 -1
- data/app/views/renalware/reporting/report_mailer/daily_summary.html.slim +2 -1
- data/app/views/renalware/research/studies/_filters.html.slim +14 -0
- data/app/views/renalware/research/studies/index.html.slim +7 -4
- data/app/views/renalware/research/study_participants/_filters.html.slim +13 -0
- data/app/views/renalware/research/study_participants/_table.html.slim +2 -2
- data/app/views/renalware/research/study_participants/create.js.erb +1 -1
- data/app/views/renalware/research/study_participants/index.html.slim +4 -1
- data/app/views/renalware/research/study_participants/update.js.erb +1 -1
- data/app/views/renalware/shared/documents/_year_dated_confirmation_input.html.slim +1 -1
- data/app/views/renalware/transplants/wait_lists/show.html.slim +2 -2
- data/db/migrate/20181008144324_update_daily_letters_report_view_to_version_2.rb +13 -0
- data/db/migrate/20181008145159_create_reporting_daily_ukrdc_view.rb +11 -0
- data/db/migrate/20181013115138_update_reporting_daily_pathology_view_to_v2.rb +13 -0
- data/db/views/reporting_daily_letters_v02.sql +4 -0
- data/db/views/reporting_daily_pathology_v02.sql +18 -0
- data/db/views/reporting_daily_ukrdc_v01.sql +2 -0
- data/lib/migration_helper.rb +11 -0
- data/lib/renalware/version.rb +1 -1
- data/lib/sql/{index_case_stmt.rb → indexed_case_stmt.rb} +2 -2
- data/lib/tasks/ukrdc.rake +2 -1
- data/spec/factories/patients/practices.rb +2 -1
- data/spec/factories/patients/primary_care_physicians.rb +1 -1
- data/spec/support/pages/admissions/consults_page.rb +26 -0
- data/spec/support/pages/page_object.rb +10 -0
- data/spec/support/shared_examples/paranoia_examples.rb +2 -2
- data/vendor/assets/stylesheets/renalware/balloon.css +383 -0
- data/{app/assets/stylesheets/renalware/lib/_select2-foundation5.scss → vendor/assets/stylesheets/renalware/select2-foundation5.css} +180 -78
- metadata +26 -37
- data/app/models/renalware/clinics/consultant.rb +0 -10
- data/app/models/renalware/events/patient_listener.rb +0 -10
- data/app/models/renalware/letters/discharge_summary.rb +0 -10
- data/app/presenters/renalware/clinical/body_composition_presenter.rb +0 -11
- data/app/presenters/renalware/pathology/patient_presenter.rb +0 -13
- data/app/presenters/renalware/pathology/requests/global_rule_presenter.rb +0 -15
- data/app/views/renalware/events/types/_header.html.slim.dead +0 -4
- data/app/views/renalware/modalities/descriptions/_header.html.slim.dead +0 -5
- data/app/views/renalware/transplants/mdm_patients/_filters.html.slim.dead +0 -8
- data/config/locales/renalware/reporting/reporting_daily.en.yml +0 -7
@@ -6,10 +6,9 @@ module Renalware
|
|
6
6
|
before_action :load_patient
|
7
7
|
|
8
8
|
def show
|
9
|
-
assessment = patient.assessments.find(params[:id])
|
10
9
|
render locals: {
|
11
10
|
patient: patient,
|
12
|
-
assessment: AssessmentPresenter.new(
|
11
|
+
assessment: AssessmentPresenter.new(find_assessement)
|
13
12
|
}
|
14
13
|
end
|
15
14
|
|
@@ -21,7 +20,7 @@ module Renalware
|
|
21
20
|
def create
|
22
21
|
assessment = patient.assessments.new(assessment_params)
|
23
22
|
|
24
|
-
if assessment.
|
23
|
+
if assessment.save_by(current_user)
|
25
24
|
redirect_to patient_accesses_dashboard_path(patient),
|
26
25
|
notice: t(".success", model_name: "Access assessment")
|
27
26
|
else
|
@@ -31,14 +30,13 @@ module Renalware
|
|
31
30
|
end
|
32
31
|
|
33
32
|
def edit
|
34
|
-
|
35
|
-
render_edit(assessment)
|
33
|
+
render_edit(find_assessement)
|
36
34
|
end
|
37
35
|
|
38
36
|
def update
|
39
|
-
assessment =
|
37
|
+
assessment = find_assessement
|
40
38
|
|
41
|
-
if assessment.
|
39
|
+
if assessment.update_by(current_user, assessment_params)
|
42
40
|
redirect_to patient_accesses_dashboard_path(patient),
|
43
41
|
notice: t(".success", model_name: "Access assessment")
|
44
42
|
else
|
@@ -49,6 +47,10 @@ module Renalware
|
|
49
47
|
|
50
48
|
protected
|
51
49
|
|
50
|
+
def find_assessement
|
51
|
+
patient.assessments.find(params[:id])
|
52
|
+
end
|
53
|
+
|
52
54
|
def render_new(assessment)
|
53
55
|
render :new, locals: { patient: patient, assessment: assessment }
|
54
56
|
end
|
@@ -58,10 +60,7 @@ module Renalware
|
|
58
60
|
end
|
59
61
|
|
60
62
|
def assessment_params
|
61
|
-
params
|
62
|
-
.require(:accesses_assessment)
|
63
|
-
.permit(attributes)
|
64
|
-
.merge(document: document_attributes, by: current_user)
|
63
|
+
params.require(:accesses_assessment).permit(attributes)
|
65
64
|
end
|
66
65
|
|
67
66
|
def attributes
|
@@ -69,16 +68,10 @@ module Renalware
|
|
69
68
|
:performed_on, :first_used_on, :failed_on,
|
70
69
|
:side, :type_id,
|
71
70
|
:catheter_make, :catheter_lot_no,
|
72
|
-
:performed_by, :notes, :outcome,
|
73
|
-
document:
|
71
|
+
:performed_by, :notes, :outcome, :comments,
|
72
|
+
document: {}
|
74
73
|
]
|
75
74
|
end
|
76
|
-
|
77
|
-
def document_attributes
|
78
|
-
params
|
79
|
-
.require(:accesses_assessment)
|
80
|
-
.fetch(:document, nil).try(:permit!)
|
81
|
-
end
|
82
75
|
end
|
83
76
|
end
|
84
77
|
end
|
@@ -9,6 +9,8 @@ module Renalware
|
|
9
9
|
|
10
10
|
before_action :set_paper_trail_whodunnit
|
11
11
|
after_action :verify_authorized
|
12
|
+
# has_user_timed_out is defined on SessionTimeoutController
|
13
|
+
# Perhaps we should define #has_user_timed_out here and override in SessionTimeoutController?
|
12
14
|
after_action :track_action, except: [:has_user_timed_out]
|
13
15
|
|
14
16
|
rescue_from Pundit::NotAuthorizedError, with: :user_not_authorized
|
@@ -22,7 +22,7 @@ module Renalware
|
|
22
22
|
def create
|
23
23
|
event = new_event_for_patient(event_params)
|
24
24
|
|
25
|
-
if event.
|
25
|
+
if event.save_by(current_user)
|
26
26
|
redirect_to return_url, notice: t(".success", model_name: "event")
|
27
27
|
else
|
28
28
|
flash.now[:error] = t(".failed", model_name: "event")
|
@@ -56,7 +56,7 @@ module Renalware
|
|
56
56
|
|
57
57
|
def update
|
58
58
|
event = load_and_authorize_event_for_edit_or_update
|
59
|
-
if event.
|
59
|
+
if event.update_by(current_user, event_params)
|
60
60
|
redirect_to return_url, notice: t(".success", model_name: "event")
|
61
61
|
else
|
62
62
|
flash.now[:error] = failed_msg_for("event type")
|
@@ -131,15 +131,16 @@ module Renalware
|
|
131
131
|
end
|
132
132
|
|
133
133
|
def event_params
|
134
|
-
params
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
134
|
+
params
|
135
|
+
.require(:events_event)
|
136
|
+
.permit(
|
137
|
+
:event_type_id,
|
138
|
+
:date_time,
|
139
|
+
:description,
|
140
|
+
:notes,
|
141
|
+
:disable_selection_of_event_type,
|
142
|
+
document: {}
|
143
|
+
)
|
143
144
|
end
|
144
145
|
|
145
146
|
def new_event_for_patient(params = {})
|
@@ -58,7 +58,7 @@ module Renalware
|
|
58
58
|
params
|
59
59
|
.require(:hd_profile)
|
60
60
|
.permit(attributes)
|
61
|
-
.merge(
|
61
|
+
.to_h.merge(by: current_user)
|
62
62
|
end
|
63
63
|
|
64
64
|
def attributes
|
@@ -66,15 +66,9 @@ module Renalware
|
|
66
66
|
:schedule_definition_id, :other_schedule, :hospital_unit_id, :dialysate_id,
|
67
67
|
:prescribed_time, :prescribed_on, :prescriber_id,
|
68
68
|
:named_nurse_id, :transport_decider_id,
|
69
|
-
document:
|
69
|
+
document: {}
|
70
70
|
]
|
71
71
|
end
|
72
|
-
|
73
|
-
def document_attributes
|
74
|
-
params
|
75
|
-
.require(:hd_profile)
|
76
|
-
.fetch(:document, nil).try(:permit!)
|
77
|
-
end
|
78
72
|
end
|
79
73
|
end
|
80
74
|
end
|
@@ -6,7 +6,7 @@ module Renalware
|
|
6
6
|
module HD
|
7
7
|
class MDMPatientsController < Renalware::MDMPatientsController
|
8
8
|
def index
|
9
|
-
filter_form =
|
9
|
+
filter_form = form_object_class.new(filter_form_params)
|
10
10
|
|
11
11
|
query = HD::MDMPatientsQuery.new(
|
12
12
|
params: filter_form.ransacked_parameters.merge(query_params).with_indifferent_access
|
@@ -21,12 +21,18 @@ module Renalware
|
|
21
21
|
|
22
22
|
private
|
23
23
|
|
24
|
+
# Permit all attributes on the filter form object. Slightly messy
|
24
25
|
def filter_form_params
|
25
|
-
params.fetch(:filter, {}).permit
|
26
|
+
params.fetch(:filter, {}).permit(form_object_class.permittable_attributes)
|
26
27
|
end
|
27
28
|
|
29
|
+
def form_object_class
|
30
|
+
Renalware::HD::MDMPatientsForm
|
31
|
+
end
|
32
|
+
|
33
|
+
# Ransack params use for column sorting
|
28
34
|
def query_params
|
29
|
-
params.fetch(:q, {}).permit
|
35
|
+
params.fetch(:q, {}).permit(:s)
|
30
36
|
end
|
31
37
|
|
32
38
|
def render_index(filter_form:, **args)
|
@@ -54,11 +54,6 @@ module Renalware
|
|
54
54
|
)
|
55
55
|
end
|
56
56
|
|
57
|
-
# def filter_receipts(receipts, search_form)
|
58
|
-
# matching_patients = Patients::SearchQuery.new(term: search_form.term).call
|
59
|
-
# receipts.joins(letter: [:patient]).merge(matching_patients)
|
60
|
-
# end
|
61
|
-
|
62
57
|
def search_term
|
63
58
|
params.fetch(:patient_search, {}).fetch(:term, nil)
|
64
59
|
end
|
@@ -210,12 +210,6 @@ module Renalware
|
|
210
210
|
]
|
211
211
|
end
|
212
212
|
|
213
|
-
# def electronic_receipts_attributes
|
214
|
-
# [
|
215
|
-
# :recipient_id
|
216
|
-
# ]
|
217
|
-
# end
|
218
|
-
|
219
213
|
def address_attributes
|
220
214
|
[
|
221
215
|
:id, :name, :organisation_name, :street_1, :street_2, :street_3, :town, :county,
|
@@ -33,14 +33,7 @@ module Renalware
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def profile_params
|
36
|
-
params
|
37
|
-
.require(:low_clearance_profile)
|
38
|
-
.permit(document: [])
|
39
|
-
.merge(document: document_attributes)
|
40
|
-
end
|
41
|
-
|
42
|
-
def document_attributes
|
43
|
-
params.require(:low_clearance_profile)[:document]&.permit!
|
36
|
+
params.require(:low_clearance_profile).permit(document: {})
|
44
37
|
end
|
45
38
|
end
|
46
39
|
end
|
@@ -36,7 +36,7 @@ module Renalware
|
|
36
36
|
patient = Patient.new(patient_params)
|
37
37
|
authorize patient
|
38
38
|
|
39
|
-
if patient.
|
39
|
+
if patient.save_by(current_user)
|
40
40
|
# Reload in order to let pg generate the secure id
|
41
41
|
redirect_to_patient_demographics(patient.reload)
|
42
42
|
else
|
@@ -52,7 +52,7 @@ module Renalware
|
|
52
52
|
|
53
53
|
def update
|
54
54
|
authorize patient
|
55
|
-
if patient.
|
55
|
+
if patient.update_by(current_user, patient_params)
|
56
56
|
redirect_to_patient_demographics(patient)
|
57
57
|
else
|
58
58
|
flash.now[:error] = t(".failed", model_name: "patient")
|
@@ -81,11 +81,7 @@ module Renalware
|
|
81
81
|
end
|
82
82
|
|
83
83
|
def patient_params
|
84
|
-
params
|
85
|
-
.require(:patient)
|
86
|
-
.permit(patient_attributes)
|
87
|
-
.merge(document: document_attributes)
|
88
|
-
.merge(by: current_user)
|
84
|
+
params.require(:patient).permit(patient_attributes)
|
89
85
|
end
|
90
86
|
|
91
87
|
def patient_attributes
|
@@ -98,7 +94,8 @@ module Renalware
|
|
98
94
|
:local_patient_id_4, :local_patient_id_5, :external_patient_id,
|
99
95
|
:send_to_renalreg, :send_to_rpv, :renalreg_decision_on, :rpv_decision_on,
|
100
96
|
:renalreg_recorded_by, :rpv_recorded_by,
|
101
|
-
current_address_attributes: address_params
|
97
|
+
current_address_attributes: address_params,
|
98
|
+
document: {}
|
102
99
|
]
|
103
100
|
end
|
104
101
|
|
@@ -109,13 +106,6 @@ module Renalware
|
|
109
106
|
]
|
110
107
|
end
|
111
108
|
|
112
|
-
def document_attributes
|
113
|
-
params
|
114
|
-
.require(:patient)
|
115
|
-
.fetch(:document, nil)
|
116
|
-
.try(:permit!)
|
117
|
-
end
|
118
|
-
|
119
109
|
def redirect_to_patient_demographics(patient)
|
120
110
|
redirect_to patient, notice: success_msg_for("patient")
|
121
111
|
end
|
@@ -20,7 +20,7 @@ module Renalware
|
|
20
20
|
def create
|
21
21
|
assessment = PD::Assessment.for_patient(patient).new(assessment_params)
|
22
22
|
authorize assessment
|
23
|
-
if assessment.
|
23
|
+
if assessment.save_by(current_user)
|
24
24
|
redirect_to patient_pd_dashboard_path(patient),
|
25
25
|
notice: success_msg_for("assessment")
|
26
26
|
else
|
@@ -37,7 +37,7 @@ module Renalware
|
|
37
37
|
def update
|
38
38
|
assessment = find_assessment
|
39
39
|
authorize assessment
|
40
|
-
if assessment.
|
40
|
+
if assessment.update_by(current_user, assessment_params)
|
41
41
|
redirect_to patient_pd_dashboard_path(patient),
|
42
42
|
notice: success_msg_for("assessment")
|
43
43
|
else
|
@@ -52,20 +52,7 @@ module Renalware
|
|
52
52
|
end
|
53
53
|
|
54
54
|
def assessment_params
|
55
|
-
params
|
56
|
-
.require(:assessment)
|
57
|
-
.permit(attributes)
|
58
|
-
.merge(document: document_attributes, by: current_user)
|
59
|
-
end
|
60
|
-
|
61
|
-
def attributes
|
62
|
-
[
|
63
|
-
document: []
|
64
|
-
]
|
65
|
-
end
|
66
|
-
|
67
|
-
def document_attributes
|
68
|
-
params.require(:assessment).fetch(:document, nil).try(:permit!)
|
55
|
+
params.require(:assessment).permit(document: {})
|
69
56
|
end
|
70
57
|
end
|
71
58
|
end
|
@@ -12,15 +12,15 @@ module Renalware
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def new
|
15
|
-
training_session =
|
15
|
+
training_session = TrainingSession.for_patient(patient).new
|
16
16
|
authorize training_session
|
17
17
|
render locals: { patient: patient, training_session: training_session }
|
18
18
|
end
|
19
19
|
|
20
20
|
def create
|
21
|
-
training_session =
|
21
|
+
training_session = TrainingSession.for_patient(patient).new(training_session_params)
|
22
22
|
authorize training_session
|
23
|
-
if training_session.
|
23
|
+
if training_session.save_by(current_user)
|
24
24
|
redirect_to patient_pd_dashboard_path(patient),
|
25
25
|
notice: success_msg_for("training_session")
|
26
26
|
else
|
@@ -37,7 +37,7 @@ module Renalware
|
|
37
37
|
def update
|
38
38
|
training_session = find_training_session
|
39
39
|
authorize training_session
|
40
|
-
if training_session.
|
40
|
+
if training_session.update_by(current_user, training_session_params)
|
41
41
|
redirect_to patient_pd_dashboard_path(patient),
|
42
42
|
notice: success_msg_for("training_session")
|
43
43
|
else
|
@@ -48,27 +48,13 @@ module Renalware
|
|
48
48
|
private
|
49
49
|
|
50
50
|
def find_training_session
|
51
|
-
|
51
|
+
TrainingSession.for_patient(patient).find(params[:id])
|
52
52
|
end
|
53
53
|
|
54
54
|
def training_session_params
|
55
55
|
params
|
56
56
|
.require(:training_session)
|
57
|
-
.permit(
|
58
|
-
.merge(document: document_attributes, by: current_user)
|
59
|
-
end
|
60
|
-
|
61
|
-
def training_session_attributes
|
62
|
-
[
|
63
|
-
:training_site_id, :training_type_id
|
64
|
-
]
|
65
|
-
end
|
66
|
-
|
67
|
-
def document_attributes
|
68
|
-
params
|
69
|
-
.require(:training_session)
|
70
|
-
.fetch(:document, nil)
|
71
|
-
.try(:permit!)
|
57
|
+
.permit(:training_site_id, :training_type_id, document: {})
|
72
58
|
end
|
73
59
|
end
|
74
60
|
end
|
@@ -44,9 +44,8 @@ module Renalware
|
|
44
44
|
.permit(
|
45
45
|
:esrf_on, :first_seen_on, :prd_description_id, :weight_at_esrf,
|
46
46
|
:modality_at_esrf, :comorbidities_updated_on,
|
47
|
-
address_at_diagnosis_attributes: address_params
|
47
|
+
address_at_diagnosis_attributes: address_params, document: {}
|
48
48
|
)
|
49
|
-
.merge(document: document_attributes)
|
50
49
|
end
|
51
50
|
|
52
51
|
def address_params
|
@@ -59,13 +58,6 @@ module Renalware
|
|
59
58
|
def find_profile
|
60
59
|
patient.profile || patient.build_profile
|
61
60
|
end
|
62
|
-
|
63
|
-
def document_attributes
|
64
|
-
params
|
65
|
-
.require(:renal_profile)
|
66
|
-
.fetch(:document, nil)
|
67
|
-
.try(:permit!)
|
68
|
-
end
|
69
61
|
end
|
70
62
|
end
|
71
63
|
end
|
@@ -8,9 +8,10 @@ module Renalware
|
|
8
8
|
include Renalware::Concerns::Pageable
|
9
9
|
|
10
10
|
def index
|
11
|
-
|
11
|
+
query = Study.ordered.ransack(params[:q])
|
12
|
+
studies = query.result.page(page).per(per_page)
|
12
13
|
authorize studies
|
13
|
-
render locals: { studies: studies }
|
14
|
+
render locals: { studies: studies, query: query }
|
14
15
|
end
|
15
16
|
|
16
17
|
def new
|
@@ -9,7 +9,7 @@ module Renalware
|
|
9
9
|
|
10
10
|
def index
|
11
11
|
authorize StudyParticipant, :index?
|
12
|
-
|
12
|
+
render_current_action_with_locals
|
13
13
|
end
|
14
14
|
|
15
15
|
def show
|
@@ -23,7 +23,7 @@ module Renalware
|
|
23
23
|
authorize participant
|
24
24
|
|
25
25
|
if participant.save
|
26
|
-
|
26
|
+
render_current_action_with_locals
|
27
27
|
else
|
28
28
|
render_new(participant)
|
29
29
|
end
|
@@ -50,7 +50,7 @@ module Renalware
|
|
50
50
|
def update
|
51
51
|
participant = find_and_authorise_participant
|
52
52
|
if participant.update(participant_params_for_update)
|
53
|
-
|
53
|
+
render_current_action_with_locals
|
54
54
|
else
|
55
55
|
render_edit(participant)
|
56
56
|
end
|
@@ -70,6 +70,12 @@ module Renalware
|
|
70
70
|
render :new, locals: { participant: participant }, layout: false
|
71
71
|
end
|
72
72
|
|
73
|
+
def render_current_action_with_locals
|
74
|
+
query = StudyParticipantsQuery.new(study: study, options: params[:q])
|
75
|
+
participants = query.call.page(page).per(per_page)
|
76
|
+
render locals: { study: study, participants: participants, query: query.search }
|
77
|
+
end
|
78
|
+
|
73
79
|
def study
|
74
80
|
@study ||= Study.find(params[:study_id])
|
75
81
|
end
|