renalware-core 2.0.128 → 2.0.129

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fcc25b7970b1a6a9a6033894090703cc9354b3ee10327537ecf42fdc80348950
4
- data.tar.gz: 28d5be9b91830c59bd3e9fd83ad8b20cfd8871cbcb34cdaaf30f93db5a746b86
3
+ metadata.gz: 156b1e1ab54f4596ebc2b14b72f0f82c1476191b8b0efbe035615136120ad49e
4
+ data.tar.gz: 05cc53cd4907c8545db2566f8ab8e33744821f50274b259212765b108a92c929
5
5
  SHA512:
6
- metadata.gz: cd5a41ec02111a2748f7602799b84fac3d780f01c85c9109a906eca19273008bbb551c0a231797d34a85a59f8f2dfeb6917bac6c68bd0c4a244e0db7ffeb3b2a
7
- data.tar.gz: dad6b4eb6d61d16fad025cabea2ef899cc579597dff259635c4e5027d29f98ba111fcfc428bd5930e239cf91f46bdc6312fd59ad22ee8827699dc642e51ca298
6
+ metadata.gz: 2c8b74079f3b0dcb8e7cc78ca57f01b8d81a5ca789c3f76f60c8bedac26cab9b5e78d57d2c41ac072c2acdf2adf528c1af653787ecf7548ded3abb4b8b90741c
7
+ data.tar.gz: c2e35bc6f3bf69085582d1905353b07a3e6d0f8fa20c6c180ea3d48d8d3910a125a71868302aee08ffcfe74c65fafc89dce41df30e217a7cdd486a061ce434da
@@ -33,7 +33,7 @@ module Renalware
33
33
  end
34
34
 
35
35
  def profile_params
36
- params.require(:low_clearance_profile).permit(document: {})
36
+ params.require(:low_clearance_profile).permit(:referrer_id, document: {})
37
37
  end
38
38
  end
39
39
  end
@@ -11,6 +11,8 @@ module Renalware
11
11
  attribute :dialysis_planned_on, Date
12
12
  attribute :predicted_esrf_date, Date
13
13
  attribute :referral_creatinine, Integer
14
+ # Note that referred_by is now used as 'Referred by notes' as we have a new referrer relation
15
+ # on the profile itself. We need to keep the document version around, so using for notes.
14
16
  attribute :referred_by, String
15
17
  attribute :education_status, Document::Enum
16
18
  attribute :referral_egfr, Decimal
@@ -10,6 +10,7 @@ module Renalware
10
10
  include Document::Base
11
11
  validates :patient, presence: true
12
12
  belongs_to :patient, touch: true
13
+ belongs_to :referrer
13
14
  has_document class_name: "Renalware::LowClearance::ProfileDocument"
14
15
  has_paper_trail class_name: "Renalware::LowClearance::Version",
15
16
  on: [:create, :update, :destroy]
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_dependency "renalware/low_clearance"
4
+ require "document/base"
5
+
6
+ module Renalware
7
+ module LowClearance
8
+ class Referrer < ApplicationRecord
9
+ validates :name, presence: true, uniqueness: true
10
+ scope :ordered, -> { order(name: :asc) }
11
+
12
+ def to_s
13
+ name
14
+ end
15
+ end
16
+ end
17
+ end
@@ -30,7 +30,6 @@ module Renalware
30
30
  # 1 2016-03-15 {"NA": "137", "TP": "74", "ALB": "48", "ALP": "71", ...
31
31
  # 1 2016-02-29 {"NA": "136", "TP": "78", "ALB": "47", "ALP": "71", ...
32
32
  #
33
- #
34
33
  class ObservationsGroupedByDateQuery
35
34
  attr_reader :patient, :observation_descriptions, :page, :limit
36
35
  alias current_page page
@@ -66,10 +65,24 @@ module Renalware
66
65
  Pathology::Observation.none
67
66
  end
68
67
 
68
+ # Returns path results grouped by day, and on each day, a hash results keyed by OBX code
69
+ # containing an array of [result, comment]. The array and data structure is designed to
70
+ # save space over the wire and in memory - we could have retuned an array of hashes with
71
+ # code, result, comment keys etc.
72
+ # Note in jsonb_object_agg the final ORDER BY is by ASC when you would think it would be
73
+ # by DESC seeing as how we want to the latest result. However ASC works and DESC does not
74
+ # and I am not not sure why yet.
75
+ #
76
+ # Example output:
77
+ #
78
+ # 2016-12-06, "{""NA"": [""139"", """"], ""EGFR"": [""83"", ""adjusted original: 77""]}"
79
+ # 2016-10-20, "{""FOL"": [""6.4"", """"]}"
80
+ # 2016-09-04, "{""TSH"": [""0.36"", """"]}"
81
+ # ...
69
82
  def to_sql
70
83
  <<-SQL.squish
71
84
  select obs_req.patient_id, cast(observed_at as date) as observed_on,
72
- jsonb_object_agg(obs_desc.code, ARRAY[obs.result, obs.comment]) results
85
+ jsonb_object_agg(obs_desc.code, ARRAY[obs.result, obs.comment] order by observed_at asc) results
73
86
  from pathology_observations obs
74
87
  inner join pathology_observation_requests obs_req on obs.request_id = obs_req.id
75
88
  inner join pathology_observation_descriptions obs_desc on obs.description_id = obs_desc.id
@@ -37,7 +37,7 @@ tbody.hd-session-row(class=[session.state, stripe_class])
37
37
  td.nowrap= session.after_measurement_for(:bm_stix)
38
38
  td.nowrap= session.after_measurement_for(:blood_pressure)
39
39
  td.print-only= session.signed_off_by
40
- tr
40
+ tr.noprint
41
41
  td(colspan=20)
42
42
  .quick-preview
43
43
  = definition_list_for(session, size: :large) do |list|
@@ -2,7 +2,7 @@ thead
2
2
  / - 20.times do
3
3
  / colgroup
4
4
  tr
5
- th
5
+ th.noprint
6
6
  th.noprint.col-width-small(rowspan=3)
7
7
  th.col-width-date(rowspan=3 valign="top")= t(".date")
8
8
  th.col-width-small= t(".site")
@@ -19,6 +19,8 @@
19
19
  dd= document.predicted_esrf_date
20
20
  dt= t(".referral_creatinine")
21
21
  dd= document.referral_creatinine
22
+ dt= t(".referrer")
23
+ dd= profile.referrer
22
24
  dt= t(".referred_by")
23
25
  dd= document.referred_by
24
26
  dt= t(".education_status")
@@ -13,6 +13,7 @@
13
13
  method: :put,
14
14
  wrapper: "horizontal_form" do |f|
15
15
 
16
+
16
17
  = f.simple_fields_for :document, profile.document do |flc|
17
18
  = flc.input :first_seen_on, as: :date_picker, wrapper: :horizontal_datepicker
18
19
  = flc.input :dialysis_plan, wrapper: :horizontal_medium
@@ -20,6 +21,13 @@
20
21
  = flc.input :predicted_esrf_date, as: :date_picker, wrapper: :horizontal_datepicker
21
22
  = flc.input :referral_creatinine, wrapper: :horizontal_tiny
22
23
  = flc.input :referral_egfr, wrapper: :horizontal_tiny
24
+
25
+ = f.input :referrer_id,
26
+ wrapper: :horizontal_medium,
27
+ collection: Renalware::LowClearance::Referrer.ordered,
28
+ label: "Referred by"
29
+
30
+ = f.simple_fields_for :document, profile.document do |flc|
23
31
  = flc.input :referred_by, wrapper: :horizontal_medium
24
32
  = flc.input :education_status, wrapper: :horizontal_tiny
25
33
  = flc.input :education_type, wrapper: :horizontal_tiny
@@ -9,7 +9,9 @@ en:
9
9
  dialysis_planned_on: Dialysis plan date
10
10
  predicted_esrf_date: Predicted ESRF date
11
11
  referral_creatinine: Referral CRE
12
- referred_by: Referred by
12
+ referrer: Referred by
13
+ referrer_id: Referred by
14
+ referred_by: Referred by notes
13
15
  education_status: Education status
14
16
  referral_egfr: Referral eGFR
15
17
  education_type: Education type
@@ -30,7 +32,7 @@ en:
30
32
  predicted_esrf_date: Predicted ESRF date
31
33
  referral_creatinine: Referral CRE
32
34
  referral_egfr: Referral eGFR
33
- referred_by: Referred by
35
+ referred_by: Referred by notes
34
36
  education_status: Education status
35
37
  education_type: Education type
36
38
  attended_on: Date attended educ.
@@ -0,0 +1,21 @@
1
+ class CreateLowClearanceReferrers < ActiveRecord::Migration[5.2]
2
+ def change
3
+ within_renalware_schema do
4
+ create_table :low_clearance_referrers do |t|
5
+ t.string :name, null: false, index: { unique: true }
6
+ t.boolean :hidden, null: false, default: false
7
+ t.timestamps null: false
8
+ end
9
+
10
+ add_reference(
11
+ :low_clearance_profiles,
12
+ :referrer,
13
+ references: :low_clearance_referrers,
14
+ index: true,
15
+ null: true
16
+ )
17
+
18
+ add_foreign_key :low_clearance_profiles, :low_clearance_referrers, column: :referrer_id
19
+ end
20
+ end
21
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Renalware
4
- VERSION = "2.0.128"
4
+ VERSION = "2.0.129"
5
5
  end
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../page_object"
4
+
5
+ module Pages
6
+ module LowClearance
7
+ class ProfilePage < Pages::PageObject
8
+ pattr_initialize :patient
9
+
10
+ def add_or_edit
11
+ visit patient_low_clearance_dashboard_path(patient)
12
+
13
+ within ".page-actions" do
14
+ click_on "Add"
15
+ click_on "Profile"
16
+ end
17
+ end
18
+
19
+ def save
20
+ within ".form-actions" do
21
+ find('input[name="commit"]').click
22
+ end
23
+ end
24
+
25
+ def referred_by=(value)
26
+ select value, from: "Referred by"
27
+ end
28
+
29
+ def referred_by_notes=(value)
30
+ fill_in "Referred by notes", with: value
31
+ end
32
+
33
+ def date_first_seen=(value)
34
+ fill_in "Date first seen", with: value
35
+ end
36
+
37
+ def dialysis_plan=(value)
38
+ select value, from: "Dialysis plan"
39
+ end
40
+
41
+ def dialysis_plan_date=(value)
42
+ fill_in "Dialysis plan date", with: value
43
+ end
44
+
45
+ def predicted_esrf_date=(value)
46
+ fill_in "Predicted ESRF date", with: value
47
+ end
48
+
49
+ def referral_cre=(value)
50
+ fill_in "Referral CRE", with: value
51
+ end
52
+
53
+ def referral_efgr=(value)
54
+ fill_in "Referral eGFR", with: value
55
+ end
56
+
57
+ def education_status=(value)
58
+ select value, from: "Education status"
59
+ end
60
+
61
+ def education_type=(value)
62
+ select value, from: "Education type"
63
+ end
64
+
65
+ def date_attending=(value)
66
+ fill_in "Date attended educ.", with: value
67
+ end
68
+ end
69
+ end
70
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: renalware-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.128
4
+ version: 2.0.129
5
5
  platform: ruby
6
6
  authors:
7
7
  - Airslie
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-11 00:00:00.000000000 Z
11
+ date: 2019-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionview-component
@@ -1658,6 +1658,7 @@ files:
1658
1658
  - app/models/renalware/low_clearance/modality_description.rb
1659
1659
  - app/models/renalware/low_clearance/patient.rb
1660
1660
  - app/models/renalware/low_clearance/profile.rb
1661
+ - app/models/renalware/low_clearance/referrer.rb
1661
1662
  - app/models/renalware/low_clearance/version.rb
1662
1663
  - app/models/renalware/medications.rb
1663
1664
  - app/models/renalware/medications/dose_unit.rb
@@ -3723,6 +3724,7 @@ files:
3723
3724
  - db/migrate/20191205185835_update_survey_views.rb
3724
3725
  - db/migrate/20191209160151_add_patient_question_text_to_survey_responses.rb
3725
3726
  - db/migrate/20191209163151_update_survey_views_to_allow_free_text.rb
3727
+ - db/migrate/20191213094611_create_low_clearance_referrers.rb
3726
3728
  - db/seeds.rb
3727
3729
  - db/seeds/default/accesses/access_pd_catheter_insertion_techniques.csv
3728
3730
  - db/seeds/default/accesses/access_pd_catheter_insertion_techniques.rb
@@ -4087,6 +4089,7 @@ files:
4087
4089
  - spec/support/pages/clinical/profile_page.rb
4088
4090
  - spec/support/pages/letters/form.rb
4089
4091
  - spec/support/pages/letters/patient_letters.rb
4092
+ - spec/support/pages/low_clearance/profile_page.rb
4090
4093
  - spec/support/pages/medications/prescription_fom.rb
4091
4094
  - spec/support/pages/page_object.rb
4092
4095
  - spec/support/pathology_spec_helper.rb