his_emr_api_lab 1.0.0 → 1.0.1

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: 7e6be868d3a1113b834bf4e6644734eead3e01d7b51f90e310e3020eb8125b6c
4
- data.tar.gz: bd7ca74bdf0af442d3a4c6f9a1f9e0a73d4d61571f1e39ae6ce5352246cd801d
3
+ metadata.gz: 1469d458b5c92b2b7fe0e9a930ce1671d83e1b0992f6e71adcda1e3893cee831
4
+ data.tar.gz: 370aa6b191193791ce6e9e913635a124ef71cb57d865f75b1b332f2ab027e5d1
5
5
  SHA512:
6
- metadata.gz: 7c122f5fbc967d7e470aac9eb455f77d9471a40caa582a9306d4558a25094d8efba17a9aca25ea312609ac9c7571cf154f463a0c65a55387bb8a030dcf48b7c6
7
- data.tar.gz: 9c68ca05bb1accaac6942c37f2399ae5ef5f94bde87cbd30811f35e394a9b2a43e2671f266173839156b980c3030051fc5e9fc4103c3b8f41a7dcd84e5324e35
6
+ metadata.gz: 2c1fec86c5267d23f6ed657a86a5d59a36e94996e850550dd3e0d8185e5668f98c1e15c30b4a794ec551083141af50ffebc7041094ecb6a9e41b6871cd38badf
7
+ data.tar.gz: 56c0018c64eee53e5227f234de141de0f23873bfe1f170cec0b837cce995a935e1b743852794204cbd641fa07f79531b424219eee63a41f1492c6cd9254fbed7
@@ -18,7 +18,7 @@ module Lab
18
18
  tracking_number: serialized_order.accession_number,
19
19
  sending_facility: current_facility_name,
20
20
  receiving_facility: serialized_order.target_lab,
21
- tests: serialized_order.tests.collect(&:name),
21
+ tests: serialized_order.tests.map { |test| format_test_name(test.name) },
22
22
  patient: format_patient(serialized_order.patient_id),
23
23
  order_location: format_order_location(serialized_order.encounter_id),
24
24
  sample_type: format_sample_type(serialized_order.specimen.name),
@@ -27,7 +27,7 @@ module Lab
27
27
  test_statuses: format_test_status_trail(order),
28
28
  who_order_test: format_orderer(order),
29
29
  districy: current_district, # yes districy [sic]...
30
- priority: serialized_order.reason_for_test.name,
30
+ priority: format_sample_priority(serialized_order.reason_for_test.name),
31
31
  date_created: serialized_order.order_date,
32
32
  test_results: format_test_results(serialized_order),
33
33
  type: 'Order'
@@ -69,7 +69,7 @@ module Lab
69
69
  end
70
70
 
71
71
  def format_sample_type(name)
72
- name.casecmp?('Unknown') ? 'not_specified' : name
72
+ name.casecmp?('Unknown') ? 'not_specified' : name.titleize
73
73
  end
74
74
 
75
75
  def format_sample_status(name)
@@ -98,8 +98,7 @@ module Lab
98
98
 
99
99
  def format_test_status_trail(order)
100
100
  order.tests.each_with_object({}) do |test, trail|
101
- test_name = ConceptName.find_by_concept_id!(test.value_coded).name
102
- test_name = 'Viral load' if test_name.casecmp?('HIV Viral Load')
101
+ test_name = format_test_name(ConceptName.find_by_concept_id!(test.value_coded).name)
103
102
 
104
103
  current_test_trail = trail[test_name] = {}
105
104
 
@@ -125,9 +124,11 @@ module Lab
125
124
  order.tests&.each_with_object({}) do |test, results|
126
125
  next unless test.result
127
126
 
128
- results[test.name] = {
127
+ results[format_test_name(test.name)] = {
129
128
  results: test.result.each_with_object({}) do |measure, measures|
130
- measures[measure.indicator.name] = { result_value: "#{measure.value_modifier}#{measure.value}" }
129
+ measures[format_test_name(measure.indicator.name)] = {
130
+ result_value: "#{measure.value_modifier}#{measure.value}"
131
+ }
131
132
  end,
132
133
  result_date: test.result.first&.date,
133
134
  result_entered_by: {}
@@ -135,6 +136,20 @@ module Lab
135
136
  end
136
137
  end
137
138
 
139
+ def format_test_name(test_name)
140
+ return 'Viral Load' if test_name.casecmp?('HIV Viral load')
141
+
142
+ return 'TB' if test_name.name.casecmp?('TB Program')
143
+
144
+ test_name.titleize
145
+ end
146
+
147
+ def format_sample_priority(priority)
148
+ return 'Routine' if priority&.casecmp?('Medical examination, routine')
149
+
150
+ priority&.titleize
151
+ end
152
+
138
153
  def current_health_center
139
154
  health_center = Location.current_health_center
140
155
  raise 'Current health center not set' unless health_center
data/lib/lab/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lab
4
- VERSION = '1.0.0'
4
+ VERSION = '1.0.1'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: his_emr_api_lab
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elizabeth Glaser Pediatric Foundation Malawi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-04 00:00:00.000000000 Z
11
+ date: 2021-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: couchrest