renalware-core 2.0.158 → 2.0.163
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/renalware/components/configuration.js +20 -0
- data/app/assets/javascripts/renalware/components/{dialogs.js.erb → dialogs.js} +2 -5
- data/app/assets/javascripts/renalware/components/{feed_only_inputs.js.erb → feed_only_inputs.js} +4 -4
- data/app/assets/javascripts/renalware/{core.js.erb → core.js} +0 -5
- data/app/assets/javascripts/renalware/rollup_compiled.css +42050 -42050
- data/app/assets/javascripts/renalware/rollup_compiled.js +768 -201
- data/app/assets/stylesheets/renalware/modules/_clinical.scss +41 -0
- data/app/components/renalware/admissions/active_consult_alert_component.html.slim +1 -1
- data/app/components/renalware/article_component.rb +1 -1
- data/app/components/renalware/letters/letters_in_progress_component.rb +1 -5
- data/app/components/renalware/letters/unread_electronic_ccs_component.rb +1 -4
- data/app/components/renalware/medications/tabbed_prescriptions_list_component.html.slim +2 -2
- data/app/components/renalware/pathology/sparkline_component.html.slim +1 -1
- data/app/components/renalware/patients/bookmarks_component.rb +1 -5
- data/app/components/renalware/patients/messages_component.rb +1 -7
- data/app/components/renalware/pd/adequacy_results_component.rb +1 -1
- data/app/components/renalware/pd/pet_results_component.html.slim +5 -7
- data/app/components/renalware/surveys/eq5d_component.rb +1 -5
- data/app/components/renalware/surveys/pos_s_component.rb +1 -5
- data/app/components/renalware/system/admin_menu_component.rb +1 -4
- data/app/components/renalware/system/users_awaiting_approval_component.rb +1 -5
- data/app/controllers/renalware/api/token_authenticated_api_controller.rb +1 -1
- data/app/controllers/renalware/api/v1/medications/prescriptions_controller.rb +1 -1
- data/app/controllers/renalware/api/v1/patients/patients_controller.rb +1 -1
- data/app/controllers/renalware/events/events_controller.rb +0 -1
- data/app/controllers/renalware/pd/pet_results_controller.rb +1 -1
- data/{lib → app/documents}/document/attribute_initializer.rb +0 -0
- data/{lib → app/documents}/document/attribute_initializer/active_model.rb +0 -0
- data/{lib → app/documents}/document/attribute_initializer/base.rb +0 -0
- data/{lib → app/documents}/document/attribute_initializer/enum.rb +0 -0
- data/{lib → app/documents}/document/base.rb +0 -0
- data/{lib → app/documents}/document/embedded.rb +0 -0
- data/{lib → app/documents}/document/enum.rb +0 -0
- data/app/javascript/renalware/controllers/modal_controller.js +1 -1
- data/app/jobs/renalware/hd/generate_monthly_statistics.rb +1 -1
- data/app/jobs/renalware/hd/generate_monthly_statistics_for_patient_job.rb +1 -1
- data/app/jobs/renalware/letters/calculate_page_count_job.rb +0 -1
- data/app/jobs/renalware/letters/mailshots/create_mailshot_letters_job.rb +0 -1
- data/app/jobs/renalware/letters/printing/batch_print_job.rb +0 -1
- data/app/jobs/renalware/letters/save_rtf_letter_to_file_job.rb +1 -1
- data/app/mailers/renalware/letters/{delivery/errors.rb → delivery.rb} +2 -1
- data/app/mailers/renalware/letters/delivery/practice_mailer.rb +2 -2
- data/app/models/concerns/renalware/deviseable.rb +3 -3
- data/app/models/renalware/admissions/admission_query.rb +0 -1
- data/{lib → app/models}/renalware/automatic_age_calculator.rb +0 -0
- data/app/models/renalware/clinical/create_allergy.rb +4 -4
- data/app/models/renalware/clinics/create_clinic_visit.rb +4 -4
- data/app/models/renalware/clinics/current_observations.rb +3 -4
- data/app/models/renalware/events/alertable_events_query.rb +27 -0
- data/app/models/renalware/events/create_event.rb +0 -1
- data/app/models/renalware/events/event.rb +4 -0
- data/app/models/renalware/events/event_type_alert_trigger.rb +15 -0
- data/app/models/renalware/events/type.rb +7 -0
- data/app/models/renalware/feeds/files/exceptions.rb +1 -0
- data/app/models/renalware/feeds/files/practice_memberships/import_csv.rb +0 -1
- data/app/models/renalware/feeds/files/primary_care_physicians/import_csv.rb +0 -1
- data/app/models/renalware/feeds/message_processor.rb +0 -1
- data/app/models/renalware/hd/prescription_administration.rb +6 -4
- data/app/models/renalware/hd/profiles_in_date_range_query.rb +1 -6
- data/app/models/renalware/hd/scheduling/diary_range.rb +1 -2
- data/app/models/renalware/hd/scheduling/find_or_create_diary_by_week_query.rb +1 -1
- data/app/models/renalware/hd/session_forms/batch.rb +0 -1
- data/app/models/renalware/hd/session_forms/batch_compile_pdfs.rb +0 -1
- data/app/models/renalware/hd/session_forms/batch_item.rb +0 -1
- data/app/models/renalware/hd/sessions/close_stale_open_sessions.rb +0 -1
- data/app/models/renalware/letters/approve_letter.rb +0 -1
- data/app/models/renalware/letters/complete_letter.rb +0 -1
- data/app/models/renalware/letters/delivery/delivery_policy.rb +0 -1
- data/app/models/renalware/letters/delivery/email_letter_to_practice.rb +0 -1
- data/app/models/renalware/letters/delivery/practice_email.rb +0 -1
- data/app/models/renalware/letters/html_renderer.rb +1 -1
- data/app/models/renalware/letters/letter_factory.rb +1 -1
- data/app/models/renalware/letters/part/recent_pathology_results.rb +0 -1
- data/app/models/renalware/letters/pathology_layout.rb +1 -1
- data/app/models/renalware/letters/pdf_letter_cache.rb +1 -1
- data/app/models/renalware/letters/pdf_renderer.rb +1 -1
- data/app/models/renalware/letters/printing/batch_compile_pdfs.rb +0 -1
- data/app/models/renalware/letters/printing/complete_batch.rb +0 -1
- data/app/models/renalware/letters/printing/pdf_combining.rb +0 -2
- data/app/models/renalware/letters/resolve_default_electronic_ccs.rb +0 -2
- data/app/models/renalware/letters/rtf_renderer.rb +3 -2
- data/app/models/renalware/modalities/change_patient_modality.rb +4 -4
- data/app/models/renalware/pathology.rb +1 -0
- data/app/models/renalware/pathology/adjust_observation.rb +0 -1
- data/app/models/renalware/pathology/message_listener.rb +1 -1
- data/app/models/renalware/pathology/observation.rb +1 -1
- data/app/models/renalware/pathology/observation_descriptions_by_code_query.rb +1 -1
- data/app/models/renalware/pathology/observations_grouped_by_date_query.rb +0 -1
- data/app/models/renalware/pathology/observations_grouped_by_date_table.rb +0 -1
- data/app/models/renalware/pathology/ordered_patient_query.rb +1 -1
- data/app/models/renalware/pathology/requests/request_params_factory.rb +0 -1
- data/app/models/renalware/patients/calculate_age.rb +0 -1
- data/app/models/renalware/patients/clear_patient_ukrdc_data.rb +0 -1
- data/app/models/renalware/patients/ingestion/update_master_patient_index.rb +0 -1
- data/app/models/renalware/patients/last_successful_practice_sync_date_query.rb +0 -2
- data/app/models/renalware/patients/primary_care_physician.rb +1 -0
- data/app/models/renalware/patients/sync_ods_job.rb +1 -1
- data/app/models/renalware/patients/sync_practices_via_api.rb +1 -1
- data/app/models/renalware/pd.rb +5 -0
- data/app/models/renalware/pd/{apd/exceptions.rb → apd.rb.dead} +0 -0
- data/app/models/renalware/pd/apd/available_overnight_volume.rb +0 -1
- data/app/models/renalware/pd/apd/regime_calculations.rb +1 -1
- data/app/models/renalware/pd/create_regime.rb +4 -4
- data/app/models/renalware/pd/regimes_in_date_range_query.rb +0 -2
- data/app/models/renalware/pd/revise_regime.rb +5 -5
- data/{lib → app/models}/renalware/remembered_preferences.rb +0 -0
- data/app/models/renalware/research/study_participants_query.rb +0 -1
- data/app/models/renalware/transplants/create_donor_stage.rb +4 -4
- data/app/models/renalware/transplants/registrations/wait_list_query.rb +1 -1
- data/app/models/renalware/ukrdc.rb +1 -0
- data/app/models/renalware/ukrdc/create_encrypted_patient_xml_files.rb +2 -2
- data/app/models/renalware/ukrdc/create_patient_xml_file.rb +1 -2
- data/app/models/renalware/ukrdc/export_summary.rb +0 -1
- data/app/models/renalware/ukrdc/housekeeping/remove_old_export_archive_folders.rb +0 -1
- data/app/models/renalware/ukrdc/incoming/file_list.rb +0 -2
- data/app/models/renalware/ukrdc/incoming/import_survey.rb +0 -1
- data/app/models/renalware/ukrdc/incoming/import_surveys.rb +0 -1
- data/app/models/renalware/ukrdc/incoming/xml_document.rb +0 -1
- data/app/models/renalware/ukrdc/pathology_observation_requests_query.rb +1 -2
- data/app/models/renalware/ukrdc/treatment_timeline/generate_timeline.rb +0 -1
- data/app/models/renalware/ukrdc/treatment_timeline/generate_treatments.rb +1 -1
- data/app/models/renalware/ukrdc/treatment_timeline/generator_factory.rb +1 -1
- data/app/models/renalware/ukrdc/treatment_timeline/hd/generator.rb +1 -1
- data/app/models/renalware/ukrdc/treatment_timeline/pd/generator.rb +0 -1
- data/app/models/renalware/ukrdc/treatment_timeline/pd/regime_decorator.rb +0 -1
- data/app/models/renalware/ukrdc/treatment_timeline/transfer_out/generator.rb +0 -1
- data/app/models/renalware/ukrdc/treatment_timeline/transplant/generator.rb +0 -1
- data/app/models/renalware/ukrdc/xml_renderer.rb +2 -2
- data/app/models/renalware/virology/vaccination.rb +10 -2
- data/app/models/renalware/virology/vaccination_type.rb +16 -0
- data/app/presenters/renalware/accesses/dashboard_presenter.rb +0 -1
- data/app/presenters/renalware/clinical/header_presenter.rb +0 -1
- data/app/presenters/renalware/letters/letter_presenter.rb +1 -1
- data/app/presenters/renalware/letters/part_class_filter.rb +0 -1
- data/app/presenters/renalware/letters/practice_email_meta_data.rb +0 -1
- data/app/presenters/renalware/low_clearance/dashboard_presenter.rb +0 -1
- data/app/presenters/renalware/medications/prescription_presenter.rb +7 -0
- data/app/presenters/renalware/pathology/observations_diff.rb +0 -1
- data/app/presenters/renalware/renal/clinical_summary_presenter.rb +0 -1
- data/app/presenters/renalware/summary_part.rb +0 -2
- data/app/presenters/renalware/transplants/donor_dashboard_presenter.rb +0 -1
- data/app/presenters/renalware/transplants/recipient_dashboard_presenter.rb +0 -1
- data/app/presenters/renalware/ukrdc/transplant_operation_presenter.rb +0 -1
- data/app/presenters/renalware/user_session_presenter.rb +1 -3
- data/app/values/renalware/bmi.rb +0 -2
- data/app/views/renalware/admin/cache/show.html.slim +0 -36
- data/app/views/renalware/admin/playgrounds/show.html.slim +2 -2
- data/app/views/renalware/events/events/_alerts.html.slim +3 -0
- data/app/views/renalware/events/events/alert/_simple.html.slim +5 -0
- data/app/views/renalware/events/events/toggled_cell/_swab.html.slim +1 -1
- data/app/views/renalware/hd/dashboards/_page_actions.html.slim +4 -1
- data/app/views/renalware/hd/mdm_patients/_patient.html.slim +1 -1
- data/app/views/renalware/hd/prescription_administrations/_form.html.slim +2 -2
- data/app/views/renalware/hd/transmission_logs/index.html.slim +2 -1
- data/app/views/renalware/layouts/_patient.html.slim +1 -0
- data/app/views/renalware/letters/batches/_create.html.slim +2 -2
- data/app/views/renalware/letters/contacts/_new_person.html.slim +1 -1
- data/app/views/renalware/letters/contacts/_person_from_directory.html.slim +1 -1
- data/app/views/renalware/letters/formatted_letters/_letter.html.slim +13 -14
- data/app/views/renalware/letters/mailshots/mailshots/_form.html.slim +25 -21
- data/app/views/renalware/letters/parts/_allergies.html.slim +1 -1
- data/app/views/renalware/letters/parts/_problems.html.slim +1 -1
- data/app/views/renalware/letters/parts/_recent_pathology_results.html.slim +1 -1
- data/app/views/renalware/medications/home_delivery/events/_edit.html.slim +4 -4
- data/app/views/renalware/medications/prescriptions/_current.html.slim +1 -1
- data/app/views/renalware/medications/prescriptions/_current_hd.html.slim +1 -1
- data/app/views/renalware/medications/prescriptions/_form.html.slim +3 -3
- data/app/views/renalware/medications/prescriptions/_prescription.html.slim +3 -1
- data/app/views/renalware/medications/prescriptions/_recently_stopped.html.slim +1 -1
- data/app/views/renalware/system/downloads/index.html.slim +1 -1
- data/app/views/renalware/system/messages/_form.html.slim +1 -1
- data/app/views/renalware/system/view_metadata/_columns_table.html.slim +2 -2
- data/app/views/renalware/system/view_metadata/edit.html.slim +6 -6
- data/app/views/renalware/virology/vaccinations/_alert.html.slim +5 -0
- data/app/views/renalware/virology/vaccinations/_inputs.html.slim +2 -1
- data/app/views/renalware/virology/vaccinations/_toggled_cell.html.slim +1 -1
- data/config/initializers/core_extensions.rb +1 -1
- data/config/initializers/inflections.rb +2 -0
- data/config/locales/renalware/virology/virology.en.yml +2 -0
- data/db/migrate/20201105153422_update_medication_current_prescriptions_view.rb +7 -0
- data/db/migrate/20201112152752_update_pd_mdm_patients_view1.rb +7 -0
- data/db/migrate/20210105163944_create_virology_vaccination_types.rb +13 -0
- data/db/migrate/20210115181817_create_event_type_alert_triggers.rb +15 -0
- data/db/seeds/default/seeds.rb +1 -0
- data/db/seeds/default/virology/seeds.rb +3 -0
- data/db/seeds/default/virology/vaccination_types.rb +25 -0
- data/db/views/medication_current_prescriptions_v01.sql +2 -1
- data/db/views/medication_current_prescriptions_v02.sql +30 -0
- data/db/views/pd_mdm_patients_v03.sql +50 -0
- data/db/views/reporting_anaemia_audit_v01.sql +0 -2
- data/lib/core_extensions/active_support/{duration.rb → duration_additions.rb} +0 -0
- data/lib/failure.rb +6 -0
- data/lib/gpg_encrypt_folder.rb +0 -2
- data/lib/month_period.rb +16 -0
- data/lib/renalware/configuration.rb +5 -6
- data/lib/renalware/version_number.rb +1 -1
- data/lib/service_result.rb +17 -0
- data/lib/sql/indexed_case_stmt.rb +1 -3
- data/lib/success.rb +9 -0
- data/lib/tasks/ukrdc.rake +1 -1
- data/lib/week_period.rb +57 -0
- data/spec/factories/events/events.rb +1 -2
- data/spec/factories/letters/letters.rb +4 -11
- data/spec/factories/medications/prescription_version.rb +1 -2
- data/spec/factories/patients/ethnicities.rb +1 -2
- data/spec/factories/pd/bag_types.rb +2 -2
- data/spec/factories/snippets/users.rb +1 -2
- data/spec/factories/transplants/recipient_followups.rb +1 -2
- data/spec/factories/virology/vaccination_types.rb +8 -0
- data/spec/factories/virology/vaccinations.rb +1 -1
- data/{lib/test_support → spec/support}/ajax_helpers.rb +0 -0
- data/{lib/test_support → spec/support}/text_editor_helpers.rb +0 -0
- metadata +49 -40
- data/app/assets/javascripts/renalware/components/reporting.js.erb +0 -0
- data/app/assets/javascripts/renalware/components/session_timeout_redirect.js.erb +0 -37
- data/app/components/renalware/system/article_component.html.slim +0 -3
- data/app/components/renalware/system/article_component.rb +0 -9
- data/app/mailers/renalware/previews/report_preview.rb +0 -14
- data/app/mailers/renalware/previews/ukrdc_summary_preview.rb +0 -20
- data/app/mailers/renalware/previews/user_mailer_preview.rb +0 -16
- data/lib/renalware/failure.rb +0 -6
- data/lib/renalware/month_period.rb +0 -18
- data/lib/renalware/service_result.rb +0 -19
- data/lib/renalware/success.rb +0 -9
- data/lib/renalware/week_period.rb +0 -59
@@ -141,6 +141,7 @@ article.clinical-allergies {
|
|
141
141
|
.patient-alerts {
|
142
142
|
color: $white;
|
143
143
|
background-color: transparent;
|
144
|
+
padding-top: .1rem;
|
144
145
|
|
145
146
|
@media print {
|
146
147
|
display: none;
|
@@ -186,6 +187,46 @@ article.clinical-allergies {
|
|
186
187
|
}
|
187
188
|
}
|
188
189
|
|
190
|
+
&.active-consult {
|
191
|
+
background-color: $nhs-pink;
|
192
|
+
|
193
|
+
&:hover {
|
194
|
+
background-color: darken($nhs-pink, 7);
|
195
|
+
}
|
196
|
+
|
197
|
+
.title a,
|
198
|
+
i:before {
|
199
|
+
color: $white;
|
200
|
+
}
|
201
|
+
}
|
202
|
+
|
203
|
+
&.vaccination {
|
204
|
+
background-color: $nhs-aqua-green;
|
205
|
+
|
206
|
+
&:hover {
|
207
|
+
background-color: darken($nhs-aqua-green, 4);
|
208
|
+
}
|
209
|
+
|
210
|
+
.title a,
|
211
|
+
i:before {
|
212
|
+
color: $white;
|
213
|
+
}
|
214
|
+
}
|
215
|
+
|
216
|
+
&.event {
|
217
|
+
background-color: $nhs-yellow;
|
218
|
+
|
219
|
+
&:hover {
|
220
|
+
background-color: darken($nhs-yellow, 7);
|
221
|
+
}
|
222
|
+
|
223
|
+
.title a,
|
224
|
+
.date,
|
225
|
+
i:before {
|
226
|
+
color: $dark-grey;
|
227
|
+
}
|
228
|
+
}
|
229
|
+
|
189
230
|
&.research-study-participant {
|
190
231
|
background-color: darken($nhs-green, 3);
|
191
232
|
color: $white;
|
@@ -6,7 +6,7 @@ module Renalware
|
|
6
6
|
# build more and more useful components. Other components can use this component
|
7
7
|
# in their markup.
|
8
8
|
class ArticleComponent < ApplicationComponent
|
9
|
-
|
9
|
+
rattr_initialize [:title]
|
10
10
|
with_content_areas :title_link, :actions
|
11
11
|
end
|
12
12
|
end
|
@@ -3,11 +3,7 @@
|
|
3
3
|
module Renalware
|
4
4
|
module Letters
|
5
5
|
class LettersInProgressComponent < ApplicationComponent
|
6
|
-
|
7
|
-
|
8
|
-
def initialize(current_user:)
|
9
|
-
@current_user = current_user
|
10
|
-
end
|
6
|
+
pattr_initialize [:current_user!]
|
11
7
|
|
12
8
|
# Note we want oldest letters ordered first here - elsewhere letters are newest first
|
13
9
|
def letters_in_progress
|
@@ -4,11 +4,8 @@ module Renalware
|
|
4
4
|
module Letters
|
5
5
|
class UnreadElectronicCCsComponent < ApplicationComponent
|
6
6
|
include Pundit::Helper
|
7
|
-
attr_reader :current_user
|
8
7
|
|
9
|
-
|
10
|
-
@current_user = current_user
|
11
|
-
end
|
8
|
+
pattr_initialize [:current_user!]
|
12
9
|
|
13
10
|
def unread_electronic_ccs
|
14
11
|
@unread_electronic_ccs ||= begin
|
@@ -2,11 +2,11 @@ div(data-controller="tabs" data-tabs-active-tab="active")
|
|
2
2
|
.tabs-container
|
3
3
|
ul.list-reset.sub-nav
|
4
4
|
- groups.each do |group|
|
5
|
-
li(data-target="
|
5
|
+
li(data-tabs-target="tab" data-action="click->tabs#change")
|
6
6
|
a(class="" href="#" data-trigger-masonry-refresh="true")= group.title
|
7
7
|
|
8
8
|
- groups.each do |group|
|
9
|
-
.hidden(data-target="
|
9
|
+
.hidden(data-tabs-target="panel")
|
10
10
|
table.prescriptions-list
|
11
11
|
thead
|
12
12
|
tr
|
@@ -6,7 +6,7 @@
|
|
6
6
|
/ This is the stimulusjs version. See sparklines_controller.js
|
7
7
|
div(data-controller="pathology-sparklines"
|
8
8
|
data-pathology-sparklines-chart-data='[["2010-06-03T16:37:00.000+01:00","106"], ["2011-06-03T16:37:00.000+01:00","110"]]')
|
9
|
-
div(data-target="
|
9
|
+
div(data-pathology-sparklines-target="chart")
|
10
10
|
- else
|
11
11
|
/ This implementation uses ChartKick to insert the chart javascript into the
|
12
12
|
/ page. It works fine, but when there are 50 path results on screen, we are
|
@@ -3,11 +3,7 @@
|
|
3
3
|
module Renalware
|
4
4
|
module Patients
|
5
5
|
class BookmarksComponent < ApplicationComponent
|
6
|
-
|
7
|
-
|
8
|
-
def initialize(current_user:)
|
9
|
-
@current_user = current_user
|
10
|
-
end
|
6
|
+
pattr_initialize [:current_user!]
|
11
7
|
|
12
8
|
def bookmarks
|
13
9
|
@bookmarks ||= begin
|
@@ -8,13 +8,7 @@ module Renalware
|
|
8
8
|
include Pagy::Frontend
|
9
9
|
TITLE = "Messages"
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
def initialize(patient:, current_user:)
|
14
|
-
@patient = patient
|
15
|
-
@current_user = current_user
|
16
|
-
super
|
17
|
-
end
|
11
|
+
rattr_initialize [:patient!, :current_user!]
|
18
12
|
|
19
13
|
def pagination
|
20
14
|
load_messages unless @pagination
|
@@ -4,25 +4,23 @@
|
|
4
4
|
header
|
5
5
|
h2= title
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
/.flex.flex-row-reverse
|
10
7
|
.flex.justify-end
|
11
8
|
|
12
9
|
.inline-flex
|
13
|
-
a.reset.opacity-50.bg-white.m-05.pt-px.pb-0.px-1(href="#" data-target="
|
10
|
+
a.reset.opacity-50.bg-white.m-05.pt-px.pb-0.px-1(href="#" data-tabs-target="tab"
|
14
11
|
data-action="click->tabs#change")
|
15
12
|
svg.h-6.w-6.fill-current.text-black xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"
|
16
13
|
path d="M1 4h2v2H1V4zm4 0h14v2H5V4zM1 9h2v2H1V9zm4 0h14v2H5V9zm-4 5h2v2H1v-2zm4 0h14v2H5v-2z"
|
17
14
|
|
18
|
-
a.reset.opacity-50.bg-white.m-0.pt-px.px-2(data-target="
|
15
|
+
a.reset.opacity-50.bg-white.m-0.pt-px.px-2(data-tabs-target="tab" href="#"
|
19
16
|
data-action="click->tabs#change")
|
20
17
|
svg.h-6.w-6.stroke-current.text-black viewBox="0 0 24 26" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"
|
21
18
|
path d="M12 20V10M18 20V4M6 20v-4"
|
22
19
|
|
23
20
|
= link_to "Show all", renalware.patient_pd_pet_results_path(patient), remote: true, class: "float-none button flex-initial secondary"
|
24
21
|
= link_to "Add", renalware.new_patient_pd_pet_result_path(patient), class: "float-none button flex-initial"
|
25
|
-
|
22
|
+
|
23
|
+
div#pet-results-table data-tabs-target="panel"
|
26
24
|
|
27
25
|
= render "renalware/pd/pet_results/table",
|
28
26
|
patient: patient,
|
@@ -30,7 +28,7 @@
|
|
30
28
|
pagination: pagination,
|
31
29
|
current_user: current_user
|
32
30
|
|
33
|
-
.chart.hidden.mt-5 data-target="
|
31
|
+
.chart.hidden.mt-5 data-tabs-target="panel"
|
34
32
|
div(style="display:block; position:relative; height: 400px; width: 100%; text-align: center; margin-bottom: 20px")
|
35
33
|
#containerx(data-controller="pd-pet-chart"
|
36
34
|
data-pd-pet-chart-url=renalware.patient_pd_pet_results_path(patient, format: :json)
|
@@ -5,11 +5,7 @@ require_dependency "renalware/surveys"
|
|
5
5
|
module Renalware
|
6
6
|
module Surveys
|
7
7
|
class EQ5DComponent < ApplicationComponent
|
8
|
-
|
9
|
-
|
10
|
-
def initialize(patient:)
|
11
|
-
@patient = patient
|
12
|
-
end
|
8
|
+
rattr_initialize [:patient!]
|
13
9
|
|
14
10
|
def rows
|
15
11
|
@rows ||= EQ5DPivotedResponse.where(patient_id: patient.id)
|
@@ -5,11 +5,8 @@ module Renalware
|
|
5
5
|
# Experimental ActionView component
|
6
6
|
class AdminMenuComponent < ApplicationComponent
|
7
7
|
include Renalware::UsersHelper
|
8
|
-
attr_reader :current_user
|
9
8
|
|
10
|
-
|
11
|
-
@current_user = current_user
|
12
|
-
end
|
9
|
+
rattr_initialize [:current_user!]
|
13
10
|
|
14
11
|
def admin_menu_item(*args)
|
15
12
|
return unless
|
@@ -3,11 +3,7 @@
|
|
3
3
|
module Renalware
|
4
4
|
module System
|
5
5
|
class UsersAwaitingApprovalComponent < ApplicationComponent
|
6
|
-
|
7
|
-
|
8
|
-
def initialize(current_user:)
|
9
|
-
@current_user = current_user
|
10
|
-
end
|
6
|
+
rattr_initialize [:current_user!]
|
11
7
|
|
12
8
|
def users_needing_approval_count
|
13
9
|
@users_needing_approval_count ||= User.unapproved.count
|
@@ -7,7 +7,7 @@ require "devise"
|
|
7
7
|
|
8
8
|
module Renalware
|
9
9
|
module API
|
10
|
-
class
|
10
|
+
class TokenAuthenticatedAPIController < ApplicationController
|
11
11
|
before_action :authenticate_user_from_token!
|
12
12
|
before_action :authenticate_user! # fallback
|
13
13
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -11,7 +11,7 @@
|
|
11
11
|
// <span>Open Modal</span>
|
12
12
|
// </a>
|
13
13
|
// <!-- Modal Container -->
|
14
|
-
// <div data-target="
|
14
|
+
// <div data-modal-target="container" data-action="click->modal#closeBackground keyup@window->modal#closeWithKeyboard" class="hidden animated fadeIn fixed inset-0 overflow-y-auto flex items-center justify-center" style="z-index: 9999;">
|
15
15
|
// <!-- Modal Inner Container -->
|
16
16
|
// <div class="max-h-screen w-full max-w-lg relative">
|
17
17
|
// <!-- Modal Card -->
|
@@ -10,7 +10,7 @@ module Renalware
|
|
10
10
|
|
11
11
|
# :reek:UtilityFunction
|
12
12
|
def perform(patient:, month:, year:)
|
13
|
-
period =
|
13
|
+
period = MonthPeriod.new(month: month, year: year)
|
14
14
|
GenerateMonthlyStatisticsForPatient.new(patient: patient, period: period).call
|
15
15
|
end
|
16
16
|
end
|
@@ -7,7 +7,7 @@ module Renalware
|
|
7
7
|
module Letters
|
8
8
|
# Used for example in a host app like renalware-blt to generate an RTF letter for saving to
|
9
9
|
# the electronic public register, aka EPR/CRS.
|
10
|
-
class
|
10
|
+
class SaveRTFLetterToFileJob < ApplicationJob
|
11
11
|
queue_as :rtf_generation
|
12
12
|
queue_with_priority 1
|
13
13
|
|
@@ -5,7 +5,8 @@ require_dependency "renalware/letters"
|
|
5
5
|
module Renalware
|
6
6
|
module Letters
|
7
7
|
module Delivery
|
8
|
-
|
8
|
+
# Test fail with the error class definition here
|
9
|
+
# class LetterIsNotApprovedOrCompletedError < StandardError; end
|
9
10
|
end
|
10
11
|
end
|
11
12
|
end
|
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_dependency "renalware/letters"
|
4
|
-
require "attr_extras"
|
5
|
-
require_relative "./errors"
|
6
4
|
|
7
5
|
module Renalware
|
8
6
|
module Letters
|
9
7
|
module Delivery
|
8
|
+
class LetterIsNotApprovedOrCompletedError < StandardError; end
|
9
|
+
|
10
10
|
# Note PracticeMailer not the best name as we use this mailer to send a letter to any
|
11
11
|
# recipient (practices, hospital secretaries etc)
|
12
12
|
class PracticeMailer < ApplicationMailer
|
File without changes
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_dependency "renalware/clinical"
|
4
|
-
|
5
|
-
|
4
|
+
require "success"
|
5
|
+
require "failure"
|
6
6
|
|
7
7
|
module Renalware
|
8
8
|
module Clinical
|
@@ -17,9 +17,9 @@ module Renalware
|
|
17
17
|
yield allergy if block_given?
|
18
18
|
if allergy.valid?
|
19
19
|
save_allergy(allergy)
|
20
|
-
::
|
20
|
+
::Success.new(allergy)
|
21
21
|
else
|
22
|
-
::
|
22
|
+
::Failure.new(allergy)
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|