renalware-core 2.0.113 → 2.0.115
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +0 -2
- data/app/assets/javascripts/renalware/application.js.erb +0 -1
- data/app/assets/javascripts/renalware/feed_only_inputs.js.erb +26 -0
- data/app/assets/javascripts/renalware/feeds.js +50 -0
- data/app/assets/javascripts/renalware/person_ajax_search.js +43 -0
- data/app/assets/stylesheets/renalware/application.scss +0 -1
- data/app/assets/stylesheets/renalware/modules/_admin.scss +7 -0
- data/app/assets/stylesheets/renalware/modules/_pathology.scss +1 -1
- data/app/assets/stylesheets/renalware/modules/_patients.scss +6 -0
- data/app/assets/stylesheets/renalware/modules/_snippets.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_forms.scss +5 -1
- data/app/assets/stylesheets/renalware/partials/_layout.scss +4 -0
- data/app/{views/renalware/patients/_side_menu.html.slim → components/renalware/patients/side_menu_component.html.slim} +0 -0
- data/app/components/renalware/patients/side_menu_component.rb +18 -0
- data/app/controllers/renalware/clinical/body_compositions_controller.rb +6 -0
- data/app/controllers/renalware/feeds/hl7_test_messages_controller.rb +60 -0
- data/app/controllers/renalware/hd/mdm_patients_controller.rb +16 -6
- data/app/controllers/renalware/hd/scheduling/diaries_controller.rb +91 -0
- data/app/controllers/renalware/hd/scheduling/diary_slots_controller.rb +169 -0
- data/app/controllers/renalware/hd/session_forms/batches_controller.rb +1 -1
- data/app/controllers/renalware/pathology/observation_requests_controller.rb +23 -4
- data/app/controllers/renalware/pathology/requests/requests_controller.rb +0 -4
- data/app/controllers/renalware/patients/abridgements_controller.rb +39 -0
- data/app/controllers/renalware/pd/regimes_controller.rb +26 -0
- data/app/controllers/renalware/problems/problems_controller.rb +2 -2
- data/app/helpers/renalware/application_helper.rb +9 -0
- data/app/helpers/renalware/article_helper.rb +18 -0
- data/app/helpers/renalware/form_helper.rb +3 -2
- data/app/helpers/renalware/users_helper.rb +5 -1
- data/app/javascript/controllers/clipboard_controller.js +16 -0
- data/app/javascript/packs/renalware_core.js +20 -0
- data/app/jobs/feed_job.rb +1 -3
- data/app/jobs/hl7_message_example.yml +2 -2
- data/app/models/renalware/feeds/files/practice_memberships/import_job.rb +3 -0
- data/app/models/renalware/feeds/files/primary_care_physicians/import_job.rb +2 -0
- data/app/models/renalware/feeds/hl7_message.rb +57 -6
- data/app/models/renalware/feeds/hl7_test_form.rb +10 -0
- data/app/models/renalware/feeds/hl7_test_message.rb +11 -0
- data/app/models/renalware/feeds/message_parser.rb +6 -2
- data/app/models/renalware/feeds/message_processor.rb +44 -32
- data/app/models/renalware/feeds/persist_message.rb +9 -3
- data/app/models/renalware/feeds.rb +2 -0
- data/app/models/renalware/hd/scheduling/archive_arguments.rb +19 -0
- data/app/models/renalware/hd/scheduling/diary.rb +54 -0
- data/app/models/renalware/hd/scheduling/diary_housekeeping_job.rb +84 -0
- data/app/models/renalware/hd/scheduling/diary_range.rb +69 -0
- data/app/models/renalware/hd/scheduling/diary_slot.rb +88 -0
- data/app/models/renalware/hd/scheduling/find_or_create_diary_by_week_query.rb +52 -0
- data/app/models/renalware/hd/scheduling/find_or_create_master_diary.rb +27 -0
- data/app/models/renalware/hd/scheduling/master_diary.rb +35 -0
- data/app/models/renalware/hd/scheduling/weekly_diary.rb +47 -0
- data/app/models/renalware/pathology/message_listener.rb +2 -2
- data/app/models/renalware/pathology/requests/global_rule/latest_crf_older_than_weeks.rb +38 -0
- data/app/models/renalware/pathology/requests/global_rule/patient_is_diabetic.rb +1 -1
- data/app/models/renalware/patient.rb +1 -1
- data/app/models/renalware/patients/abridgement.rb +18 -0
- data/app/models/renalware/patients/abridgement_search_form.rb +12 -0
- data/app/models/renalware/patients/ingestion/command.rb +25 -0
- data/app/models/renalware/patients/ingestion/command_factory.rb +135 -0
- data/app/models/renalware/patients/ingestion/commands/add_or_update_patient.rb +65 -0
- data/app/models/renalware/patients/ingestion/message_listener.rb +21 -0
- data/app/models/renalware/patients/ingestion/message_mapper.rb +26 -0
- data/app/models/renalware/patients/ingestion/message_mappers/patient.rb +73 -0
- data/app/models/renalware/patients/ingestion/update_master_patient_index.rb +60 -0
- data/app/models/renalware/patients/ingestion/update_master_patient_index_job.rb.dead +20 -0
- data/app/models/renalware/patients.rb +4 -3
- data/app/models/renalware/problems/problem.rb +6 -2
- data/app/models/renalware/ukrdc/incoming/paths.rb +6 -7
- data/app/policies/renalware/admin/devops_policy.rb +18 -0
- data/app/policies/renalware/hd/{diary_policy.rb → scheduling/diary_policy.rb} +3 -1
- data/app/presenters/renalware/clinical/profile_presenter.rb +2 -1
- data/app/presenters/renalware/directory/person_auto_complete_presenter.rb +1 -1
- data/app/presenters/renalware/hd/scheduling/diary_presenter.rb +84 -0
- data/app/presenters/renalware/hd/scheduling/diary_slot_presenter.rb +74 -0
- data/app/presenters/renalware/hd/scheduling/null_slot.rb +42 -0
- data/app/presenters/renalware/pd/dashboard_presenter.rb +3 -2
- data/app/views/renalware/accesses/procedures/_form.html.slim +5 -1
- data/app/views/renalware/accesses/procedures/_list.html.slim +11 -4
- data/app/views/renalware/accesses/procedures/show.html.slim +17 -19
- data/app/views/renalware/addresses/_form.html.slim +17 -12
- data/app/views/renalware/admin/cache/show.html.slim +24 -0
- data/app/views/renalware/clinical/body_compositions/_list.html.slim +7 -43
- data/app/views/renalware/clinical/body_compositions/_table.html.slim +42 -0
- data/app/views/renalware/clinical/body_compositions/index.html.slim +9 -0
- data/app/views/renalware/clinical/dry_weights/_list.html.slim +2 -8
- data/app/views/renalware/clinical/dry_weights/_table.html.slim +7 -0
- data/app/views/renalware/clinical/profiles/show.html.slim +4 -2
- data/app/views/renalware/feeds/hl7_test_messages/create.js.erb +10 -0
- data/app/views/renalware/feeds/hl7_test_messages/new.slim +18 -0
- data/app/views/renalware/hd/mdm_patients/_filters.html.slim +0 -11
- data/app/views/renalware/hd/mdm_patients/_page_actions.html.slim +29 -0
- data/app/views/renalware/hd/mdm_patients/index.html.slim +7 -4
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_page_actions.html.slim +4 -4
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_table.html.slim +0 -0
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_weekly_diary.html.slim +1 -1
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/edit.html.slim +6 -6
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/index.html.slim +0 -0
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/show.pdf.slim +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_form.html.slim +15 -6
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_slot.html.slim +2 -2
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_tab.html.slim +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/create.js.erb +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/destroy.js.erb +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/edit.html.slim +2 -2
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/new.html.slim +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/new.js.erb +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/show.js.erb +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/update.js.erb +1 -1
- data/app/views/renalware/hospitals/units/index.html.slim +2 -2
- data/app/views/renalware/layouts/_patient.html.slim +2 -1
- data/app/views/renalware/letters/contacts/_form.html.slim +10 -13
- data/app/views/renalware/letters/letters/_form.html.slim +2 -9
- data/app/views/renalware/navigation/_developer.html.slim +4 -0
- data/app/views/renalware/navigation/_menu.html.slim +2 -0
- data/app/views/renalware/pathology/observation_requests/_filters.html.slim +17 -0
- data/app/views/renalware/pathology/observation_requests/index.html.slim +2 -1
- data/app/views/renalware/patients/_layout.html.slim +1 -1
- data/app/views/renalware/patients/_side_menu.html.slim.dead +7 -0
- data/app/views/renalware/patients/abridgements/_abridgement.html.slim +8 -0
- data/app/views/renalware/patients/abridgements/_table.html.slim +12 -0
- data/app/views/renalware/patients/abridgements/index.html.slim +22 -0
- data/app/views/renalware/patients/alerts/create.json +3 -0
- data/app/views/renalware/patients/patients/_form.html.slim +36 -17
- data/app/views/renalware/patients/patients/edit.html.slim +1 -1
- data/app/views/renalware/patients/patients/new.html.slim +1 -1
- data/app/views/renalware/patients/side_menu/_actions.html.slim +2 -0
- data/app/views/renalware/pd/_apd_regimes.html.slim +1 -1
- data/app/views/renalware/pd/_capd_regimes.html.slim +1 -1
- data/app/views/renalware/pd/dashboards/show/_apd_regimes.html.slim +11 -2
- data/app/views/renalware/pd/dashboards/show/_capd_regimes.html.slim +11 -2
- data/app/views/renalware/pd/regimes/index.html.slim +7 -0
- data/app/views/renalware/renal/profiles/_form.html.slim +7 -24
- data/app/views/renalware/shared/documents/_binary_marker_input.html.slim +2 -2
- data/app/views/renalware/shared/documents/_blood_group_input.html.slim +4 -2
- data/app/views/renalware/transplants/registrations/_form.html.slim +22 -17
- data/config/locales/renalware/clinical/body_composition.yml +6 -3
- data/config/locales/renalware/clinical/dry_weight.en.yml +4 -3
- data/config/locales/renalware/hd/diary_slots.en.yml +3 -2
- data/config/locales/renalware/letters/contact.en.yml +0 -2
- data/config/routes/feeds.rb +5 -0
- data/config/routes/hd.rb +11 -7
- data/config/routes/letters.rb +0 -5
- data/config/routes/patients.rb +1 -0
- data/config/routes/pd.rb +2 -2
- data/config/routes/renal.rb +0 -5
- data/config/routes.rb +1 -0
- data/config/webpack/development.js +5 -0
- data/config/webpack/environment.js +3 -0
- data/config/webpack/production.js +5 -0
- data/config/webpack/test.js +5 -0
- data/config/webpacker.yml +103 -0
- data/db/functions/hd_diary_archive_elapsed_master_slots_v01.sql +40 -0
- data/db/migrate/20190322120025_create_feed_hl7_test_messages.rb +12 -0
- data/db/migrate/20190325134823_create_patients_master_index.rb +24 -0
- data/db/migrate/20190327100851_add_handled_to_feed_messages.rb +5 -0
- data/db/migrate/20191012121433_add_consultant_to_users.rb +7 -0
- data/db/migrate/20191018143635_create_hd_diary_matrix_view.rb +7 -0
- data/db/migrate/20191018144917_create_fn_to_archive_master_slots.rb +9 -0
- data/db/views/hd_diary_matrix_v01.sql +38 -0
- data/lib/core_extensions/active_record/sort.rb +27 -9
- data/lib/renalware/configuration.rb +3 -0
- data/lib/renalware/engine.rb +31 -0
- data/lib/renalware/version.rb +1 -1
- data/lib/renalware/week_period.rb +8 -7
- data/lib/renalware.rb +13 -1
- data/lib/tasks/hd.rake +7 -0
- data/lib/tasks/pathology.rake +1 -1
- data/lib/tasks/renalware.rake +89 -4
- data/spec/factories/hd/scheduling/diaries.rb +18 -0
- data/spec/factories/hd/{slots.rb → scheduling/slots.rb} +1 -1
- data/spec/factories/patients/abridgements.rb +9 -0
- data/spec/support/hl7_helpers.rb +13 -0
- data/spec/support/pages/letters/form.rb +4 -1
- metadata +126 -50
- data/app/assets/javascripts/renalware/auto_complete.js +0 -63
- data/app/controllers/renalware/hd/diaries_controller.rb +0 -89
- data/app/controllers/renalware/hd/diary_slots_controller.rb +0 -175
- data/app/controllers/renalware/letters/descriptions_controller.rb +0 -22
- data/app/controllers/renalware/renal/prd_descriptions_controller.rb +0 -15
- data/app/models/renalware/hd/archive_yesterdays_slots_job.rb +0 -69
- data/app/models/renalware/hd/diary.rb +0 -41
- data/app/models/renalware/hd/diary_slot.rb +0 -83
- data/app/models/renalware/hd/find_or_create_diary_by_week_query.rb +0 -50
- data/app/models/renalware/hd/find_or_create_master_diary.rb +0 -26
- data/app/models/renalware/hd/master_diary.rb +0 -32
- data/app/models/renalware/hd/weekly_diary.rb +0 -45
- data/app/models/renalware/renal/prd_descriptions/search_query.rb +0 -35
- data/app/presenters/renalware/hd/diary_presenter.rb +0 -79
- data/app/presenters/renalware/hd/diary_slot_presenter.rb +0 -72
- data/app/presenters/renalware/hd/null_slot.rb +0 -40
- data/app/views/renalware/renal/prd_descriptions/search.json.jbuilder +0 -6
- data/lib/test_support/autocomplete_helpers.rb +0 -14
- data/spec/factories/hd/diaries.rb +0 -14
@@ -10,14 +10,14 @@
|
|
10
10
|
|
11
11
|
/- unless slot.diary.master?
|
12
12
|
= link_to "Remove them",
|
13
|
-
|
13
|
+
hd_scheduling_diary_slot_path(slot.diary, slot),
|
14
14
|
method: :delete,
|
15
15
|
remote: true,
|
16
16
|
class: "button alert"
|
17
17
|
|
18
18
|
/ - destroy_btn_title = slot.diary.master ? "Remove" : "Remove and revert to master diary"
|
19
19
|
/ = link_to destroy_btn_title,
|
20
|
-
/
|
20
|
+
/ hd_scheduling_diary_slot_path(slot.diary, slot),
|
21
21
|
/ method: :delete,
|
22
22
|
/ remote: true,
|
23
23
|
/ class: "button alert"
|
File without changes
|
File without changes
|
File without changes
|
@@ -39,8 +39,8 @@
|
|
39
39
|
- if pundit_policy_for(Renalware::HD::Station).index?
|
40
40
|
= link_to("HD Stations", hd_unit_stations_path(unit))
|
41
41
|
= pipe_separator
|
42
|
-
- if pundit_policy_for(Renalware::HD::Diary).index?
|
43
|
-
= link_to("HD Diaries",
|
42
|
+
- if pundit_policy_for(Renalware::HD::Scheduling::Diary).index?
|
43
|
+
= link_to("HD Diaries", hd_scheduling_unit_diaries_path(unit))
|
44
44
|
- if pundit_policy_for(Renalware::Hospitals::Ward).index?
|
45
45
|
= pipe_separator
|
46
46
|
= link_to("Wards", hospitals_unit_wards_path(unit))
|
@@ -6,7 +6,8 @@
|
|
6
6
|
|
7
7
|
nav.patient-side-nav.full-screenable
|
8
8
|
.layout-wrapper
|
9
|
-
|
9
|
+
/= render "renalware/patients/side_menu", patient: current_patient
|
10
|
+
= render Renalware::Patients::SideMenuComponent, patient: current_patient
|
10
11
|
|
11
12
|
.main-content.patient-content.full-screenable
|
12
13
|
.layout-wrapper
|
@@ -1,16 +1,13 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
spellcheck: false,
|
12
|
-
placeholder: t(".person_auto_complete.prompt")
|
13
|
-
= f.input :person_id, as: :hidden
|
1
|
+
#person-id-select2
|
2
|
+
= f.input :person_id,
|
3
|
+
wrapper: :horizontal_large,
|
4
|
+
collection: [[f.object.person&.to_s, f.object.person&.id]],
|
5
|
+
selected: 1,
|
6
|
+
input_html: { \
|
7
|
+
class: "person-ajax-search",
|
8
|
+
data: { "ajax--url" => search_directory_people_path(format: :json),
|
9
|
+
placeholder: "Start entering the person's name (min. 2 characters)" } \
|
10
|
+
}
|
14
11
|
= f.input :description_id, collection: contact_descriptions
|
15
12
|
= f.input :other_description
|
16
13
|
= f.input :notes, as: :text, input_html: { rows: 2 }
|
@@ -17,15 +17,8 @@ ruby:
|
|
17
17
|
|
18
18
|
= f.association :letterhead, autofocus: true
|
19
19
|
= f.input :description,
|
20
|
-
|
21
|
-
|
22
|
-
autocomplete_source: search_letters_descriptions_path,
|
23
|
-
autocomplete_rel: "[name='letters[description]']" \
|
24
|
-
},
|
25
|
-
placeholder: "Start entering the description (min. 2 characters)",
|
26
|
-
spellcheck: false,
|
27
|
-
class: "clear-autocomplete" \
|
28
|
-
}
|
20
|
+
collection: Renalware::Letters::Description.pluck(:text).uniq,
|
21
|
+
input_html: { class: "searchable_select" }
|
29
22
|
= hidden_field_tag "description_id"
|
30
23
|
= f.input :clinical, as: :hidden
|
31
24
|
= f.input :issued_on, as: :date_picker
|
@@ -12,6 +12,8 @@ section.top-bar-section
|
|
12
12
|
= render "renalware/navigation/admin"
|
13
13
|
- if current_user_is_super_admin?
|
14
14
|
= render "renalware/navigation/super_admin"
|
15
|
+
- if current_user_is_developer?
|
16
|
+
= render "renalware/navigation/developer"
|
15
17
|
li.divider
|
16
18
|
= render "renalware/navigation/sign_out"
|
17
19
|
li.divider
|
@@ -0,0 +1,17 @@
|
|
1
|
+
|
2
|
+
.columns.small-12.search-form.filters
|
3
|
+
= simple_form_for(search,
|
4
|
+
url: renalware.patient_pathology_observation_requests_path(patient),
|
5
|
+
method: :get) do |f|
|
6
|
+
.row
|
7
|
+
.columns.medium-5.large-4
|
8
|
+
= f.input :description_id_eq,
|
9
|
+
collection: obr_filter_options,
|
10
|
+
label: "Filter by Code",
|
11
|
+
label_method: ->(arr){ "#{arr[0]} - #{arr[2]}" },
|
12
|
+
input_html: { class: "searchable_select" }
|
13
|
+
|
14
|
+
.columns.medium-2.large-2.actions.end
|
15
|
+
= f.submit t("helpers.submit.filter"), class: "button"
|
16
|
+
span= " or "
|
17
|
+
= link_to t("helpers.reset"), renalware.patient_pathology_observation_requests_path(patient)
|
@@ -4,8 +4,9 @@
|
|
4
4
|
p No investigations available for this patient.
|
5
5
|
|
6
6
|
- else
|
7
|
-
p.hint Hover over table then scroll vertically to view more results.
|
7
|
+
/ p.hint Hover over table then scroll vertically to view more results.
|
8
8
|
.row
|
9
|
+
= render "filters", search: search, patient: patient, obr_filter_options: obr_filter_options
|
9
10
|
#observation-requests.large-6.columns.embedded-scroll
|
10
11
|
= render "table", observation_requests: observation_requests, patient: patient
|
11
12
|
|
@@ -10,7 +10,7 @@
|
|
10
10
|
- patient_page_title(title: title, patient: current_patient)
|
11
11
|
|
12
12
|
nav.patient-side-nav
|
13
|
-
= render
|
13
|
+
= render Renalware::Patients::SideMenuComponent, patient: current_patient
|
14
14
|
|
15
15
|
.patient-content
|
16
16
|
= render "renalware/patients/mini_profile", patient: current_patient
|
@@ -0,0 +1,7 @@
|
|
1
|
+
ul.side-nav
|
2
|
+
= render "renalware/patients/side_menu/general", patient: patient
|
3
|
+
= render "renalware/patients/side_menu/site_specific_links", patient: patient
|
4
|
+
= render "renalware/patients/side_menu/modalities", patient: patient
|
5
|
+
= render "renalware/patients/side_menu/transplants", patient: patient
|
6
|
+
= render "renalware/patients/side_menu/actions", patient: patient
|
7
|
+
= render "renalware/patients/side_menu/site_specific_actions", patient: patient
|
@@ -0,0 +1,22 @@
|
|
1
|
+
= within_admin_layout(title: "Add a patient") do
|
2
|
+
.add-patient-from-master-index
|
3
|
+
= simple_form_for(form,
|
4
|
+
method: :get,
|
5
|
+
url: renalware.patients_abridgements_path,
|
6
|
+
as: :search) do |f|
|
7
|
+
.row.filters
|
8
|
+
.filters__form
|
9
|
+
.columns.small-12.medium-6
|
10
|
+
= f.input :criteria, label: "Search by hospital number or name"
|
11
|
+
.columns.small-12.medium-6.actions.end
|
12
|
+
= button_tag type: :submit, class: "button" do
|
13
|
+
i.fas.fa-search
|
14
|
+
| Search
|
15
|
+
|
16
|
+
.search-results
|
17
|
+
h2 Matches
|
18
|
+
= render "table", abridgements: results
|
19
|
+
br
|
20
|
+
.search-results--by-dob
|
21
|
+
h2 Other patients with the same date of birth
|
22
|
+
= render "table", abridgements: results_matching_dob
|
@@ -1,54 +1,73 @@
|
|
1
|
+
- editing = (defined?(:editing) && editing).presence || false
|
2
|
+
- controlled_by_demographics_feed = editing ? { "data-controlled-by-demographics-feed" => true } : {}
|
3
|
+
|
1
4
|
.columns.large-12
|
2
5
|
= field_set_tag do
|
3
6
|
legend Patient Demographics
|
4
7
|
|
5
|
-
= f.input :nhs_number,
|
8
|
+
= f.input :nhs_number,
|
9
|
+
wrapper: :horizontal_small,
|
10
|
+
autofocus: true,
|
11
|
+
input_html: controlled_by_demographics_feed
|
6
12
|
|
7
|
-
|
13
|
+
/ If configured to do so we disable the first patient_identifier aka local_patient_id eg the
|
14
|
+
/ BLT or KCH number. The others are unlikely to come in via feed so are editable.
|
15
|
+
- Renalware.config.patient_hospital_identifiers.each_with_index do |(key, field), index|
|
8
16
|
= f.input field,
|
9
17
|
as: :string,
|
10
18
|
label: "#{key} No",
|
11
|
-
wrapper: :horizontal_small
|
19
|
+
wrapper: :horizontal_small,
|
20
|
+
input_html: index.zero? ? controlled_by_demographics_feed : {}
|
12
21
|
|
13
22
|
= f.input :external_patient_id, wrapper: :horizontal_small
|
14
23
|
= f.input :title, wrapper: :horizontal_tiny
|
15
|
-
= f.input :family_name, wrapper: :horizontal_small
|
16
|
-
= f.input :given_name, wrapper: :horizontal_small
|
24
|
+
= f.input :family_name, wrapper: :horizontal_small, input_html: controlled_by_demographics_feed
|
25
|
+
= f.input :given_name, wrapper: :horizontal_small, input_html: controlled_by_demographics_feed
|
17
26
|
/= f.input :suffix, wrapper: :horizontal_small
|
18
|
-
= f.input :born_on,
|
27
|
+
= f.input :born_on,
|
28
|
+
as: :date_picker,
|
29
|
+
label: "DoB",
|
30
|
+
wrapper: :horizontal_datepicker,
|
31
|
+
input_html: controlled_by_demographics_feed
|
19
32
|
= f.input :sex,
|
20
33
|
selected: patient.sex.code,
|
21
34
|
collection: Renalware::Gender.all,
|
22
35
|
label_method: :name, value_method: :code,
|
23
36
|
include_blank: "Please select",
|
24
37
|
required: true,
|
25
|
-
wrapper: :horizontal_small
|
38
|
+
wrapper: :horizontal_small,
|
39
|
+
input_html: controlled_by_demographics_feed
|
26
40
|
= f.association :ethnicity,
|
27
41
|
label_method: :name, value_method: :id,
|
28
42
|
include_blank: "Please select",
|
29
|
-
wrapper: :horizontal_small
|
43
|
+
wrapper: :horizontal_small,
|
44
|
+
input_html: controlled_by_demographics_feed
|
30
45
|
= f.association :country_of_birth,
|
31
46
|
include_blank: "Please select",
|
32
|
-
wrapper: :horizontal_small
|
47
|
+
wrapper: :horizontal_small,
|
48
|
+
input_html: controlled_by_demographics_feed
|
33
49
|
= f.association :religion,
|
34
50
|
label_method: :name, value_method: :id,
|
35
51
|
include_blank: "Please select",
|
36
|
-
wrapper: :horizontal_small
|
52
|
+
wrapper: :horizontal_small,
|
53
|
+
input_html: controlled_by_demographics_feed
|
37
54
|
= f.association :language,
|
38
55
|
label_method: :name, value_method: :id,
|
39
56
|
include_blank: "Please select main language",
|
40
|
-
wrapper: :horizontal_small
|
57
|
+
wrapper: :horizontal_small,
|
58
|
+
input_html: controlled_by_demographics_feed
|
41
59
|
= f.input :marital_status,
|
42
|
-
|
43
|
-
|
60
|
+
include_blank: "Please select marital status",
|
61
|
+
wrapper: :horizontal_small,
|
62
|
+
input_html: controlled_by_demographics_feed
|
44
63
|
= f.input :paediatric_patient_indicator,
|
45
64
|
as: :inline_radio_buttons,
|
46
65
|
label: "If under 18 years, is the recipient being treated in a paediatric unit?",
|
47
66
|
wrapper: :horizontal_small
|
48
67
|
|
49
|
-
= f.input :telephone1, wrapper: :horizontal_small
|
50
|
-
= f.input :telephone2, wrapper: :horizontal_small
|
51
|
-
= f.input :email, wrapper: :horizontal_small
|
68
|
+
= f.input :telephone1, wrapper: :horizontal_small, input_html: controlled_by_demographics_feed
|
69
|
+
= f.input :telephone2, wrapper: :horizontal_small, input_html: controlled_by_demographics_feed
|
70
|
+
= f.input :email, wrapper: :horizontal_small, input_html: controlled_by_demographics_feed
|
52
71
|
|
53
72
|
- if patient.persisted?
|
54
73
|
.row
|
@@ -103,7 +122,7 @@
|
|
103
122
|
fieldset id="current_address"
|
104
123
|
legend Current Address
|
105
124
|
= a.input :id, as: :hidden
|
106
|
-
= render "renalware/addresses/form", a: a
|
125
|
+
= render "renalware/addresses/form", a: a, controlled_by_feed_options: controlled_by_demographics_feed
|
107
126
|
|
108
127
|
.columns.large-12
|
109
128
|
= field_set_tag do
|
@@ -7,5 +7,5 @@
|
|
7
7
|
html: { autocomplete: "off" } do |f|
|
8
8
|
|
9
9
|
.columns= save_or_cancel(form: f, back_path: patient_path(patient))
|
10
|
-
= render "form", f: f, patient: patient
|
10
|
+
= render "form", f: f, patient: patient, editing: true
|
11
11
|
.columns= save_or_cancel(form: f, back_path: patient_path(patient))
|
@@ -21,5 +21,5 @@
|
|
21
21
|
wrapper: "horizontal_form" do |f|
|
22
22
|
|
23
23
|
.columns= save_or_cancel(form: f, back_path: patients_path)
|
24
|
-
= render "form", f: f, patient: patient
|
24
|
+
= render "form", f: f, patient: patient, editing: false
|
25
25
|
.columns= save_or_cancel(form: f, back_path: patients_path)
|
@@ -34,6 +34,8 @@ li.link.action
|
|
34
34
|
- if policy(patient).debug?
|
35
35
|
li.link.action
|
36
36
|
= link_to "Debug: UKRDC XML", api_ukrdc_patient_path(patient, changes_since: "2018-01-01")
|
37
|
+
li.link.action
|
38
|
+
= link_to "Debug: MPI", patients_abridgements_path("search[criteria]" => patient.local_patient_id)
|
37
39
|
|
38
40
|
- cache do
|
39
41
|
= render "renalware/admissions/requests/modal_dialog_placeholder"
|
@@ -1,2 +1,11 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
article.apd-regimes
|
2
|
+
header
|
3
|
+
h2 APD Regimes
|
4
|
+
.supplemental
|
5
|
+
= collection_count(apd_regimes)
|
6
|
+
span.noprint
|
7
|
+
= link_to "View All",
|
8
|
+
patient_pd_apd_regimes_path(patient),
|
9
|
+
class: "button secondary"
|
10
|
+
|
11
|
+
= render "renalware/pd/apd_regimes", regimes: apd_regimes, patient: patient
|
@@ -1,2 +1,11 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
article.capd-regimes
|
2
|
+
header
|
3
|
+
h2 CAPD Regimes
|
4
|
+
.supplemental
|
5
|
+
= collection_count(capd_regimes)
|
6
|
+
span.noprint
|
7
|
+
= link_to "View All",
|
8
|
+
patient_pd_capd_regimes_path(patient),
|
9
|
+
class: "button secondary"
|
10
|
+
|
11
|
+
= render "renalware/pd/capd_regimes", regimes: capd_regimes, patient: patient
|
@@ -13,30 +13,13 @@
|
|
13
13
|
include_blank: "Select modality",
|
14
14
|
wrapper: :horizontal_small
|
15
15
|
= f.input :first_seen_on, as: :date_picker, wrapper: :horizontal_datepicker
|
16
|
-
= f.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
f.object.class.human_attribute_name(:prd_description),
|
24
|
-
class: "right inline"
|
25
|
-
.columns.small-12.medium-8.large-9
|
26
|
-
.row.collapse
|
27
|
-
.small-11.columns
|
28
|
-
= text_field_tag "prd_description_auto_complete", \
|
29
|
-
f.object.prd_description.to_s,
|
30
|
-
data: { \
|
31
|
-
autocomplete_source: search_renal_prd_descriptions_path, \
|
32
|
-
autocomplete_rel: "[name='renal_profile[prd_description_id]']" \
|
33
|
-
},
|
34
|
-
placeholder: "Start entering the diagnosis or PRD code (min. 2 characters)",
|
35
|
-
spellcheck: false,
|
36
|
-
class: "clear-autocomplete"
|
37
|
-
.small-1.columns
|
38
|
-
span.postfix
|
39
|
-
= link_to "Clear", "#", data: { clear_value_on_click: ".clear-autocomplete" }
|
16
|
+
= f.association :prd_description,
|
17
|
+
collection: Renalware::Renal::PRDDescription.all.order(:term),
|
18
|
+
input_html: { \
|
19
|
+
class: "searchable_select", \
|
20
|
+
data: { \
|
21
|
+
placeholder: "",
|
22
|
+
"allow-clear" => "true" }}
|
40
23
|
|
41
24
|
= f.input :comorbidities_updated_on, as: :date_picker, wrapper: :horizontal_datepicker
|
42
25
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
= f.simple_fields_for attribute, f.object.public_send(attribute), wrapper: "vertical_form" do |fc|
|
2
2
|
tr
|
3
3
|
td= f.object.class.human_attribute_name(attribute)
|
4
|
-
td= fc.input :value_1, label: false
|
5
|
-
td= fc.input :value_2, label: false
|
4
|
+
td= fc.input :value_1, label: false, input_html: html_options
|
5
|
+
td= fc.input :value_2, label: false, input_html: html_options
|
6
6
|
td
|
7
7
|
td
|
@@ -1,7 +1,9 @@
|
|
1
1
|
= f.simple_fields_for attribute, f.object.public_send(attribute) do |fd|
|
2
2
|
= fd.input :group,
|
3
3
|
label: attr_name(fd.object, :group),
|
4
|
-
wrapper: :horizontal_small
|
4
|
+
wrapper: :horizontal_small,
|
5
|
+
input_html: html_options
|
5
6
|
= fd.input :rhesus,
|
6
7
|
label: fd.object.class.human_attribute_name(:rhesus),
|
7
|
-
wrapper: :horizontal_small
|
8
|
+
wrapper: :horizontal_small,
|
9
|
+
input_html: html_options
|
@@ -26,39 +26,44 @@ ruby:
|
|
26
26
|
= render layout: "renalware/shared/fieldset",
|
27
27
|
locals: { legend: "HLA", name: "hla" } do
|
28
28
|
= fd.simple_fields_for :hla, fd.object.hla do |fcm|
|
29
|
-
= fcm.input :type, wrapper: :horizontal_large
|
30
|
-
= fcm.input :recorded_on, as: :date_picker, wrapper: :horizontal_datepicker
|
29
|
+
= fcm.input :type, wrapper: :horizontal_large, input_html: { "data-controlled-by-tissue-typing-feed": true }
|
30
|
+
= fcm.input :recorded_on, as: :date_picker, wrapper: :horizontal_datepicker, input_html: { "data-controlled-by-tissue-typing-feed": true }
|
31
31
|
table
|
32
32
|
tbody
|
33
|
-
= render_input fcm, :a
|
34
|
-
= render_input fcm, :b
|
35
|
-
= render_input fcm, :cw
|
36
|
-
= render_input fcm, :dr
|
37
|
-
= render_input fcm, :dq
|
38
|
-
= render_input fcm, :drw
|
39
|
-
= render_input fcm, :drq
|
33
|
+
= render_input fcm, :a, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
34
|
+
= render_input fcm, :b, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
35
|
+
= render_input fcm, :cw, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
36
|
+
= render_input fcm, :dr, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
37
|
+
= render_input fcm, :dq, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
38
|
+
= render_input fcm, :drw, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
39
|
+
= render_input fcm, :drq, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
40
40
|
|
41
41
|
= render layout: "renalware/shared/fieldset",
|
42
42
|
locals: { legend: "Transplant", name: "transplant" } do
|
43
43
|
= fd.simple_fields_for :transplant, fd.object.transplant do |fcm|
|
44
44
|
table.no-stripes
|
45
|
-
= render_input fcm, :blood_group
|
45
|
+
= render_input fcm, :blood_group, html_options: { "data-controlled-by-tissue-typing-feed": true }
|
46
46
|
= fcm.input :nb_of_previous_grafts,
|
47
47
|
collection: 0..5,
|
48
48
|
include_blank: false,
|
49
|
-
wrapper: :horizontal_small
|
50
|
-
|
49
|
+
wrapper: :horizontal_small,
|
50
|
+
input_html: { "data-controlled-by-tissue-typing-feed": true }
|
51
|
+
= fcm.input :sens_status,
|
52
|
+
wrapper: :horizontal_medium,
|
53
|
+
input_html: { "data-controlled-by-tissue-typing-feed": true }
|
51
54
|
|
52
55
|
= render layout: "renalware/shared/fieldset",
|
53
56
|
locals: { legend: "Tissue Typing (UKT Status)", name: "tissue_typing" } do
|
54
57
|
= fd.simple_fields_for :uk_transplant_centre, fd.object.uk_transplant_centre do |fcm|
|
55
58
|
= fcm.input :status,
|
56
59
|
wrapper: :horizontal_small,
|
57
|
-
hint: "To be updated by feed"
|
60
|
+
hint: "To be updated by feed",
|
61
|
+
input_html: { "data-controlled-by-tissue-typing-feed": true }
|
58
62
|
= fcm.input :status_updated_on,
|
59
63
|
as: :date_picker,
|
60
64
|
wrapper: :horizontal_datepicker,
|
61
|
-
hint: "To be updated by feed"
|
65
|
+
hint: "To be updated by feed",
|
66
|
+
input_html: { "data-controlled-by-tissue-typing-feed": true }
|
62
67
|
|
63
68
|
= render layout: "renalware/shared/fieldset",
|
64
69
|
locals: { legend: "Organs", name: "organs" } do
|
@@ -83,9 +88,9 @@ ruby:
|
|
83
88
|
locals: { legend: "Admin", name: "admin" } do
|
84
89
|
= f.input :referred_on, as: :date_picker, wrapper: :horizontal_datepicker
|
85
90
|
= f.input :assessed_on, as: :date_picker, wrapper: :horizontal_datepicker
|
86
|
-
= f.input :entered_on, as: :date_picker, wrapper: :horizontal_datepicker
|
87
|
-
= f.input :contact, as: :text, input_html: { rows: 5
|
88
|
-
= f.input :notes, as: :text, input_html: { rows: 5
|
91
|
+
= f.input :entered_on, as: :date_picker, wrapper: :horizontal_datepicker, input_html: { "data-controlled-by-tissue-typing-feed": true }
|
92
|
+
= f.input :contact, as: :text, wrapper: :horizontal_large, input_html: { rows: 5, "data-controlled-by-tissue-typing-feed": true }
|
93
|
+
= f.input :notes, as: :text, wrapper: :horizontal_large, input_html: { rows: 5, "data-controlled-by-tissue-typing-feed": true }
|
89
94
|
|
90
95
|
= render "status_form", f: f if f.object.new_record?
|
91
96
|
|
@@ -19,12 +19,18 @@ en:
|
|
19
19
|
renalware:
|
20
20
|
clinical:
|
21
21
|
body_compositions:
|
22
|
+
index:
|
23
|
+
title: Body Composition Measurements
|
22
24
|
show:
|
23
25
|
title: Body Composition Measurements
|
24
26
|
list:
|
25
27
|
title: Body Composition Measurements
|
26
28
|
add_dry_weight: Add a Body Composition Measurements
|
27
29
|
add: Add
|
30
|
+
view_all: View All
|
31
|
+
recent:
|
32
|
+
title: Recent Body Composition Measurements
|
33
|
+
table:
|
28
34
|
modality_description: Modality
|
29
35
|
assessed_on: Date
|
30
36
|
overhydration: OH
|
@@ -40,6 +46,3 @@ en:
|
|
40
46
|
body_cell_mass: BCM
|
41
47
|
quality_of_reading: Q
|
42
48
|
assessor: Assessor
|
43
|
-
view_all: View All
|
44
|
-
recent:
|
45
|
-
title: Recent Body Composition Measurements
|
@@ -17,10 +17,11 @@ en:
|
|
17
17
|
list:
|
18
18
|
title: Dry Weights
|
19
19
|
add_dry_weight: Add a Dry Weight
|
20
|
+
view_all: View All
|
21
|
+
recent:
|
22
|
+
title: Recent Dry Weights
|
20
23
|
add: Add
|
24
|
+
table:
|
21
25
|
date: Date
|
22
26
|
weight: Weight (kg)
|
23
27
|
assessor: Assessor
|
24
|
-
view_all: View All
|
25
|
-
recent:
|
26
|
-
title: Recent Dry Weights
|
@@ -1,11 +1,12 @@
|
|
1
1
|
en:
|
2
2
|
renalware:
|
3
3
|
hd:
|
4
|
-
|
4
|
+
scheduling:
|
5
|
+
diary_slot:
|
5
6
|
activerecord:
|
6
7
|
errors:
|
7
8
|
models:
|
8
|
-
renalware/hd/diary_slot:
|
9
|
+
renalware/hd/scheduling/diary_slot:
|
9
10
|
patient_id:
|
10
11
|
taken: has already been assigned to a station in this day and period
|
11
12
|
diurnal_period_code_id:
|