cqm-reports 2.0.7 → 2.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/qrda-export/catI-r5/qrda1_r5.rb +24 -2
- data/lib/qrda-export/catI-r5/qrda_header/_record_target.mustache +15 -9
- data/lib/qrda-export/catI-r5/qrda_templates/medication_discharge.mustache +0 -2
- data/lib/qrda-export/helper/cat1_view_helper.rb +2 -0
- data/lib/qrda-import/base-importers/section_importer.rb +2 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d2524cbacaae3fea93a3dca5545a113a25f1454
|
4
|
+
data.tar.gz: 77634976e41228b7dbdf43293f0596b481ed9eba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 96c3f9a0fc48608c70790be92d6bf44781dd85acc012e004d31f1f3ecdfcf8b91b14ca98bf491d0ac2b08f6c56e371104ab7e9e37c8aeacf4d4fd1dcd811468b
|
7
|
+
data.tar.gz: 7030f81b37ddd6362c967a16fa166a6f2fac407dcc084ee2be739eade82ae2b54947bf3edc792fefeafd886b7fbd02ca9be8497edc6cef49951382cda984ec40
|
@@ -13,11 +13,33 @@ class Qrda1R5 < Mustache
|
|
13
13
|
@qdmPatient = patient.qdmPatient
|
14
14
|
@measures = measures
|
15
15
|
@provider = options[:provider]
|
16
|
+
@patient_address_option = options[:patient_addresses]
|
17
|
+
@patient_telecom_option = options[:patient_telecoms]
|
16
18
|
@performance_period_start = options[:start_time]
|
17
19
|
@performance_period_end = options[:end_time]
|
18
20
|
@submission_program = options[:submission_program]
|
19
21
|
end
|
20
22
|
|
23
|
+
def patient_addresses
|
24
|
+
@patient_address_option ||= [CQM::Address.new(
|
25
|
+
use: 'HP',
|
26
|
+
street: ['202 Burlington Rd.'],
|
27
|
+
city: 'Bedford',
|
28
|
+
state: 'MA',
|
29
|
+
zip: '01730',
|
30
|
+
country: 'US'
|
31
|
+
)]
|
32
|
+
JSON.parse(@patient_address_option.to_json)
|
33
|
+
end
|
34
|
+
|
35
|
+
def patient_telecoms
|
36
|
+
@patient_telecom_option ||= [CQM::Telecom.new(
|
37
|
+
use: 'HP',
|
38
|
+
value: '555-555-2003'
|
39
|
+
)]
|
40
|
+
JSON.parse(@patient_telecom_option.to_json)
|
41
|
+
end
|
42
|
+
|
21
43
|
def patient_characteristic_payer
|
22
44
|
JSON.parse(@qdmPatient.get_data_elements('patient_characteristic', 'payer').to_json)
|
23
45
|
end
|
@@ -173,7 +195,7 @@ class Qrda1R5 < Mustache
|
|
173
195
|
def physical_exam_order
|
174
196
|
JSON.parse(@qdmPatient.get_data_elements('physical_exam', 'order').to_json)
|
175
197
|
end
|
176
|
-
|
198
|
+
|
177
199
|
def physical_exam_performed
|
178
200
|
JSON.parse(@qdmPatient.get_data_elements('physical_exam', 'performed').to_json)
|
179
201
|
end
|
@@ -213,7 +235,7 @@ class Qrda1R5 < Mustache
|
|
213
235
|
def substance_recommended
|
214
236
|
JSON.parse(@qdmPatient.get_data_elements('substance', 'recommended').to_json)
|
215
237
|
end
|
216
|
-
|
238
|
+
|
217
239
|
def symptom
|
218
240
|
JSON.parse(@qdmPatient.get_data_elements('symptom', nil).to_json)
|
219
241
|
end
|
@@ -1,14 +1,20 @@
|
|
1
1
|
<recordTarget>
|
2
2
|
<patientRole>
|
3
3
|
<id extension="{{mrn}}" root="1.3.6.1.4.1.115" />
|
4
|
-
|
5
|
-
<
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
4
|
+
{{#patient_addresses}}
|
5
|
+
<addr use="{{use}}">
|
6
|
+
{{#street}}
|
7
|
+
<streetAddressLine>{{.}}</streetAddressLine>
|
8
|
+
{{/street}}
|
9
|
+
<city>{{city}}</city>
|
10
|
+
<state>{{state}}</state>
|
11
|
+
<postalCode>{{zip}}</postalCode>
|
12
|
+
<country>{{country}}</country>
|
13
|
+
</addr>
|
14
|
+
{{/patient_addresses}}
|
15
|
+
{{#patient_telecoms}}
|
16
|
+
<telecom use="{{use}}" value="tel:{{value}}"/>
|
17
|
+
{{/patient_telecoms}}
|
12
18
|
<patient>
|
13
19
|
{{#patient}}
|
14
20
|
<name>
|
@@ -48,4 +54,4 @@
|
|
48
54
|
</languageCommunication>
|
49
55
|
</patient>
|
50
56
|
</patientRole>
|
51
|
-
</recordTarget>
|
57
|
+
</recordTarget>
|
@@ -9,8 +9,6 @@
|
|
9
9
|
<substanceAdministration moodCode="EVN" classCode="SBADM">
|
10
10
|
<!-- Medication Activity (consolidation) template -->
|
11
11
|
<templateId root="2.16.840.1.113883.10.20.22.4.16" extension="2014-06-09"/>
|
12
|
-
<!-- Medication, Active template -->
|
13
|
-
<templateId root="2.16.840.1.113883.10.20.24.3.41" extension="2016-02-01"/>
|
14
12
|
<id root="1.3.6.1.4.1.115" extension="{{object_id}}"/>
|
15
13
|
<text>{{description}}</text>
|
16
14
|
<statusCode code="active"/>
|
@@ -67,6 +67,8 @@ module Qrda
|
|
67
67
|
result_value_as_string(self['result'][0])
|
68
68
|
elsif self['result'].is_a? Hash
|
69
69
|
result_value_as_string(self['result'])
|
70
|
+
elsif self['result'].is_a? String
|
71
|
+
"<value xsi:type=\"ST\">#{self['result']}</value>"
|
70
72
|
elsif !self['result'].nil?
|
71
73
|
"<value xsi:type=\"PQ\" value=\"#{self['result']}\" unit=\"1\"/>"
|
72
74
|
end
|
@@ -155,7 +155,6 @@ module QRDA
|
|
155
155
|
|
156
156
|
def extract_result_value(value_element)
|
157
157
|
return unless value_element && !value_element['nullFlavor']
|
158
|
-
|
159
158
|
value = value_element['value']
|
160
159
|
if value.present?
|
161
160
|
return value.strip.to_f if (value_element['unit'] == "1" || value_element['unit'].nil?)
|
@@ -163,6 +162,8 @@ module QRDA
|
|
163
162
|
return QDM::Quantity.new(value.strip.to_f, value_element['unit'])
|
164
163
|
elsif value_element['code'].present?
|
165
164
|
return code_if_present(value_element)
|
165
|
+
elsif value_element.text.present?
|
166
|
+
return value_element.text
|
166
167
|
end
|
167
168
|
end
|
168
169
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cqm-reports
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The MITRE Corporation
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-05-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cqm-models
|