health-data-standards 3.2.5 → 3.2.6
Sign up to get free protection for your applications and to get access to all the features.
@@ -17,6 +17,7 @@ module HealthDataStandards
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def render_patient_data(patient, measures)
|
20
|
+
HealthDataStandards.logger.warn("Generating CAT I for #{patient.first} #{patient.last}")
|
20
21
|
udcs = unique_data_criteria(measures)
|
21
22
|
data_criteria_html = udcs.map do |udc|
|
22
23
|
entries = entries_for_data_criteria(udc['data_criteria'], patient)
|
@@ -51,7 +51,8 @@ module HealthDataStandards
|
|
51
51
|
def entries_for_data_criteria(data_criteria, patient)
|
52
52
|
data_criteria_oid = HQMFTemplateHelper.template_id_by_definition_and_status(data_criteria.definition,
|
53
53
|
data_criteria.status || '',
|
54
|
-
|
54
|
+
data_criteria.negation)
|
55
|
+
HealthDataStandards.logger.warn("Looking for dc [#{data_criteria_oid}]")
|
55
56
|
filtered_entries = []
|
56
57
|
case data_criteria_oid
|
57
58
|
when '2.16.840.1.113883.3.560.1.404'
|
@@ -62,6 +63,19 @@ module HealthDataStandards
|
|
62
63
|
filtered_entries = handle_payer_information(patient)
|
63
64
|
else
|
64
65
|
entries = patient.entries_for_oid(data_criteria_oid)
|
66
|
+
|
67
|
+
case data_criteria_oid
|
68
|
+
when '2.16.840.1.113883.3.560.1.5'
|
69
|
+
#special case handling for Lab Test: Performed being implicitly available through a Lab Test: Result
|
70
|
+
entries.concat patient.entries_for_oid('2.16.840.1.113883.3.560.1.12')
|
71
|
+
when '2.16.840.1.113883.3.560.1.12'
|
72
|
+
entries.concat patient.entries_for_oid('2.16.840.1.113883.3.560.1.5')
|
73
|
+
when '2.16.840.1.113883.3.560.1.6'
|
74
|
+
entries.concat patient.entries_for_oid('2.16.840.1.113883.3.560.1.63')
|
75
|
+
when '2.16.840.1.113883.3.560.1.63'
|
76
|
+
entries.concat patient.entries_for_oid('2.16.840.1.113883.3.560.1.6')
|
77
|
+
end
|
78
|
+
|
65
79
|
codes = (value_set_map(patient["bundle_id"])[data_criteria.code_list_id] || [])
|
66
80
|
if codes.empty?
|
67
81
|
HealthDataStandards.logger.warn("No codes for #{data_criteria.code_list_id}")
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<%
|
6
6
|
# get the pateint id , treate it as a hex number, turn it to a string and strip the last 9 characters off of it
|
7
7
|
hic = patient.id.to_s.hex.to_s
|
8
|
-
hic.slice
|
8
|
+
hic = hic.slice(hic.length-9,9)
|
9
9
|
%>
|
10
10
|
<id extension="<%= hic %>A" root="2.16.840.1.113883.4.572"/>
|
11
11
|
<addr use="HP">
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: health-data-standards
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.2.
|
4
|
+
version: 3.2.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2013-07-
|
16
|
+
date: 2013-07-10 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: rest-client
|