renalware-core 2.0.155 → 2.0.160
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/stylesheets/renalware/modules/_clinical.scss +13 -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/patients/bookmarks_component.rb +1 -5
- data/app/components/renalware/patients/messages_component.rb +2 -8
- data/app/components/renalware/pd/adequacy_results_component.rb +1 -1
- data/app/components/renalware/pd/pet_results_component.html.slim +1 -3
- 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/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/create_event.rb +0 -1
- 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_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 +5 -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/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/prescriptions/_current.html.slim +1 -1
- data/app/views/renalware/medications/prescriptions/_current_hd.html.slim +1 -1
- 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/view_metadata/_columns_table.html.slim +2 -2
- data/app/views/renalware/virology/vaccinations/_cell.html.slim +1 -1
- data/app/views/renalware/virology/vaccinations/_inputs.html.slim +1 -0
- data/app/views/renalware/virology/vaccinations/_toggled_cell.html.slim +2 -0
- data/config/initializers/core_extensions.rb +1 -1
- data/config/initializers/inflections.rb +2 -0
- data/config/locales/renalware/virology/virology.en.yml +4 -0
- data/db/migrate/20201020155510_add_bmi_to_clinic_visits.rb +5 -2
- data/db/migrate/20201020171139_update_low_clearance_mdm_patients_view.rb +1 -1
- data/db/migrate/20201021153832_update_supportive_care_mdm_patients_view.rb +1 -1
- data/db/migrate/20201021154809_update_transplant_mdm_patients_view.rb +1 -1
- data/db/migrate/20201023092859_remove_unused_indexes.rb +1 -1
- 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/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/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 +35 -37
- 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
@@ -186,6 +186,19 @@ article.clinical-allergies {
|
|
186
186
|
}
|
187
187
|
}
|
188
188
|
|
189
|
+
&.active-consult {
|
190
|
+
background-color: $nhs-pink;
|
191
|
+
|
192
|
+
&:hover {
|
193
|
+
background-color: darken($nhs-pink, 7);
|
194
|
+
}
|
195
|
+
|
196
|
+
.title a,
|
197
|
+
i:before {
|
198
|
+
color: $white;
|
199
|
+
}
|
200
|
+
}
|
201
|
+
|
189
202
|
&.research-study-participant {
|
190
203
|
background-color: darken($nhs-green, 3);
|
191
204
|
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
|
@@ -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
|
@@ -30,7 +24,7 @@ module Renalware
|
|
30
24
|
if pagination.items < pagination.count
|
31
25
|
"#{TITLE} (#{pagination.items} of #{pagination.count})"
|
32
26
|
else
|
33
|
-
"#{TITLE} (#{pagination.
|
27
|
+
"#{TITLE} (#{pagination.count})"
|
34
28
|
end
|
35
29
|
end
|
36
30
|
|
@@ -4,9 +4,6 @@
|
|
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
|
@@ -22,6 +19,7 @@
|
|
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"
|
22
|
+
|
25
23
|
div#pet-results-table data-target="tabs.panel"
|
26
24
|
|
27
25
|
= render "renalware/pd/pet_results/table",
|
@@ -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
|
@@ -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
|
|
@@ -1,8 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_dependency "renalware/clinics"
|
4
|
-
|
5
|
-
|
4
|
+
require "success"
|
5
|
+
require "failure"
|
6
6
|
|
7
7
|
module Renalware
|
8
8
|
module Clinics
|
@@ -22,9 +22,9 @@ module Renalware
|
|
22
22
|
visit = patient.clinic_visits.new(params)
|
23
23
|
objects = OpenStruct.new(clinic_visit: visit, appointment: appointment)
|
24
24
|
if visit.save && update_appointment_with(visit.id)
|
25
|
-
return ::
|
25
|
+
return ::Success.new(objects)
|
26
26
|
else
|
27
|
-
return ::
|
27
|
+
return ::Failure.new(objects)
|
28
28
|
end
|
29
29
|
end
|
30
30
|
end
|
@@ -1,11 +1,10 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_dependency "renalware/letters"
|
4
|
-
require "attr_extras"
|
5
4
|
|
6
5
|
module Renalware
|
7
6
|
module Clinics
|
8
|
-
# TODO:
|
7
|
+
# TODO: Unused?
|
9
8
|
class CurrentObservations
|
10
9
|
NULL_DATE = nil
|
11
10
|
pattr_initialize :patient
|
@@ -17,7 +16,7 @@ module Renalware
|
|
17
16
|
@weight ||= begin
|
18
17
|
result = ClinicVisit
|
19
18
|
.most_recent_for_patient(patient)
|
20
|
-
.where(
|
19
|
+
.where.not(weight: nil)
|
21
20
|
.pluck(:date, :weight).first || []
|
22
21
|
|
23
22
|
Observation.new(result.first, result.last)
|
@@ -29,7 +28,7 @@ module Renalware
|
|
29
28
|
@height ||= begin
|
30
29
|
result = ClinicVisit
|
31
30
|
.most_recent_for_patient(patient)
|
32
|
-
.where(
|
31
|
+
.where.not(height: nil)
|
33
32
|
.pluck(:date, :height).first || []
|
34
33
|
|
35
34
|
Observation.new(result.first, result.last)
|