ruby-hl7-extensions 0.3.4 → 0.4.3

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: aa176792ca93e20b20e53f4e246845933f3def4ca3e4ecb1de983b1e8e80fd00
4
- data.tar.gz: 63e466a6e859f29288bac706fa9fe197a12e6817f35d437225ceb210ea9d828a
3
+ metadata.gz: 473cc11b6d52e60339ae28e465f10fbb54a9abd8850e9c845d0bd7b9559fdc26
4
+ data.tar.gz: ce45195185bdcb771d6c979b9f13fc5acedc3b2b3ebc79989bb88921f3764ae5
5
5
  SHA512:
6
- metadata.gz: 98056cbfbda3c0e36b2518a65125160c5dd6864866e089adadd71060ddd71394c8538a99b9d32639dc1991715c515aa87dd1b097be7a7492bceed63199ba5293
7
- data.tar.gz: fc1d689aed8794bc6f1de91b78ae55dbb0c8ec92d48f31aa24abf250b3b6d363b5e96afde05187b85720df388d3a60ebe199a4a0750b7dc007ebe898efe81471
6
+ metadata.gz: 7ed717409f4d8639fd499f045736a816d6a9af6c045073fd7be341443ce28d9907b8876a6cfc964a428488f2d649b18e8c389dbe9fed22994eb2c6e5f8e5817a
7
+ data.tar.gz: d0190b48dade8810aeb7d346fd32c1dd2dd4946bda2bf9f11a4b5959a956ac3a6bff667023a2d3658a22ba1a2d5029cb7e12c290d9def818a98e804c3f6a5159
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.4
1
+ 0.4.3
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 0
3
- :minor: 3
4
- :patch: 4
3
+ :minor: 4
4
+ :patch: 3
@@ -67,6 +67,14 @@ module Extensions
67
67
  end
68
68
  end
69
69
 
70
+ if self[:ZDRF]
71
+ zdrf = self[:ZDRF]
72
+ zdrf = [zdrf] unless zdrf.is_a?Array
73
+ zdrf.each do |z|
74
+ providers << {hash: z.provider_hash("zdrfProvider","ZDRF"), segment: z}
75
+ end
76
+ end
77
+
70
78
  if self[:ZNP]
71
79
  znp = self[:ZNP]
72
80
  znp = [znp] unless znp.is_a?Array
@@ -122,7 +130,7 @@ module Extensions
122
130
  def pv2
123
131
  @pv2 ||= segments_for(:PV2).first
124
132
  end
125
-
133
+
126
134
  def pd1
127
135
  @pd1 ||= segments_for(:PD1).first
128
136
  end
@@ -138,7 +146,11 @@ module Extensions
138
146
  def mrg
139
147
  @mrg ||= segments_for(:MRG).first
140
148
  end
141
-
149
+
150
+ def drf
151
+ @drf ||= segments_for(:DRF).first
152
+ end
153
+
142
154
  def obr_list
143
155
  # a = hash["message"]["content"]["OBR"]["array"].collect {|obr| ::HL7::Message::Segment.from_hash("OBR", obr)}
144
156
  # a.to_enum(:each)
@@ -224,6 +236,8 @@ module Extensions
224
236
  @hash[:message][:content]["OBR"]["array"].last["OBX"]["array"].last["notes"] << segment.to_hash
225
237
  end
226
238
  end
239
+ elsif segment_name == "TQ1"
240
+
227
241
  else
228
242
  @hash[:message][:content][segment_name.to_sym] = segment.to_hash
229
243
  end
@@ -21,13 +21,21 @@ module Extensions
21
21
  nil
22
22
  end
23
23
  end
24
-
24
+
25
25
  def obx_list
26
- # a = @hash["OBX"]["array"].collect {|obr| ::HL7::Message::Segment.from_hash("OBX", obr)}
27
- # a.to_enum(:each)
28
- @hash["OBX"]["segment_array"].to_enum(:each)
26
+ obx_l = []
27
+ self.children.each do |c|
28
+ obx_l << c if c.segment_name == "OBX"
29
+ end
30
+ obx_l
29
31
  end
30
-
32
+
33
+ # def obx_list
34
+ # # a = @hash["OBX"]["array"].collect {|obr| ::HL7::Message::Segment.from_hash("OBX", obr)}
35
+ # # a.to_enum(:each)
36
+ # @hash["OBX"]["segment_array"].to_enum(:each)
37
+ # end
38
+
31
39
  def to_hash
32
40
  return @hash if @hash
33
41
 
@@ -14,14 +14,14 @@ require 'core_ext/segments/rol'
14
14
  require 'core_ext/segments/pd1'
15
15
  require 'segments/dg1'
16
16
  require 'segments/mrg'
17
+ require 'segments/zdrf'
17
18
  require 'segments/znp'
18
19
  require 'core_ext/segments/dg1'
19
20
  require 'core_ext/segments/in1'
20
21
  require 'core_ext/segments/mrg'
21
- require 'core_ext/segments/drf'
22
22
 
23
23
 
24
- segments = ["MSH","PID","ORC","OBR","OBX","NTE","NK1", "PV1", "PV2", "EVN", "SFT", "ERR", "PD1", "ROL", "DG1", "IN1", "MRG", "DRF"]
24
+ segments = ["MSH","PID","ORC","OBR","OBX","NTE","NK1", "PV1", "PV2", "EVN", "SFT", "ERR", "PD1", "ROL", "DG1", "IN1", "MRG"]
25
25
  segments.each do |segment_name|
26
26
 
27
27
  eval("class HL7::Message::Segment::#{segment_name} < HL7::Message::Segment
@@ -0,0 +1,47 @@
1
+ require 'ruby-hl7'
2
+
3
+ class HL7::Message::Segment::ZDRF < HL7::Message::Segment
4
+ add_field :custom_field_1
5
+ add_field :custom_field_2
6
+ add_field :custom_field_3
7
+ add_field :custom_field_4
8
+ add_field :custom_field_5
9
+ add_field :custom_field_6
10
+ add_field :custom_field_7
11
+ add_field :custom_field_8
12
+ add_field :custom_field_9
13
+ add_field :custom_field_10
14
+ add_field :custom_field_11
15
+ add_field :custom_field_12
16
+ add_field :custom_field_13
17
+ add_field :custom_field_14
18
+ add_field :custom_field_15
19
+ add_field :custom_field_16
20
+ add_field :custom_field_17
21
+ add_field :custom_field_18
22
+ add_field :custom_field_19
23
+ add_field :custom_field_20
24
+
25
+ def to_hash
26
+ return @hash if @hash
27
+
28
+ hash = super.to_hash
29
+ hash["id"] = hash["customField1"]
30
+ hash["npi"] = find_value(hash["customField2"])
31
+ hash["phone"] = find_value(hash["customField3"])
32
+ hash["email"] = find_value(hash["customField4"])
33
+ hash["fname"] = find_value(hash["customField5"])
34
+ hash["lname"] = find_value(hash["customField6"])
35
+ hash
36
+ end
37
+
38
+ def provider_hash(key,code)
39
+ to_hash.merge({"providerType"=>code})
40
+ end
41
+
42
+ private
43
+
44
+ def find_value(string="")
45
+ string.split("^").last
46
+ end
47
+ end
@@ -3,7 +3,7 @@
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "ruby-hl7-extensions"
6
- s.version = "0.3.4"
6
+ s.version = "0.4.3"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
@@ -23,7 +23,6 @@ Gem::Specification.new do |s|
23
23
  "lib/core_ext/message.rb",
24
24
  "lib/core_ext/segment.rb",
25
25
  "lib/core_ext/segments/dg1.rb",
26
- "lib/core_ext/segments/drf.rb",
27
26
  "lib/core_ext/segments/err.rb",
28
27
  "lib/core_ext/segments/evn.rb",
29
28
  "lib/core_ext/segments/in1.rb",
@@ -44,6 +43,7 @@ Gem::Specification.new do |s|
44
43
  "lib/ruby-hl7-extensions.rb",
45
44
  "lib/segments/dg1.rb",
46
45
  "lib/segments/mrg.rb",
46
+ "lib/segments/zdrf.rb",
47
47
  "lib/segments/znp.rb",
48
48
  "ruby-hl7-extensions.gemspec"]
49
49
  s.homepage = "http://github.com/nmlynl/ruby-hl7-extensions"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-hl7-extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Lega
@@ -57,7 +57,6 @@ files:
57
57
  - lib/core_ext/message.rb
58
58
  - lib/core_ext/segment.rb
59
59
  - lib/core_ext/segments/dg1.rb
60
- - lib/core_ext/segments/drf.rb
61
60
  - lib/core_ext/segments/err.rb
62
61
  - lib/core_ext/segments/evn.rb
63
62
  - lib/core_ext/segments/in1.rb
@@ -78,6 +77,7 @@ files:
78
77
  - lib/ruby-hl7-extensions.rb
79
78
  - lib/segments/dg1.rb
80
79
  - lib/segments/mrg.rb
80
+ - lib/segments/zdrf.rb
81
81
  - lib/segments/znp.rb
82
82
  - ruby-hl7-extensions.gemspec
83
83
  homepage: http://github.com/nmlynl/ruby-hl7-extensions
@@ -99,8 +99,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  - !ruby/object:Gem::Version
100
100
  version: '0'
101
101
  requirements: []
102
- rubyforge_project: ruby-hl7-extensions
103
- rubygems_version: 2.7.6
102
+ rubygems_version: 3.0.3
104
103
  signing_key:
105
104
  specification_version: 3
106
105
  summary: Ruby HL7 Library w/Extensions
@@ -1,45 +0,0 @@
1
- require 'ruby-hl7'
2
- class HL7::Message::Segment::DRF < HL7::Message::Segment
3
- weight 4
4
- add_field :field1 #suppress event message flag
5
- add_field :field2
6
- add_field :field3
7
- add_field :field4
8
- add_field :field5
9
- add_field :field6
10
- add_field :field7
11
- add_field :field8
12
- add_field :field9
13
- add_field :field10
14
- add_field :field11
15
- add_field :field12
16
- add_field :field13
17
- add_field :field14
18
- add_field :field15
19
- add_field :field16
20
- add_field :field17
21
- add_field :field18
22
- add_field :field19
23
- add_field :field20
24
- end
25
-
26
- module Extensions
27
- module HL7
28
- module Segments
29
- module DRF
30
-
31
- def self.included base
32
- base.send :include, InstanceMethods
33
- base.extend ClassMethods
34
- end
35
-
36
- module InstanceMethods
37
- end
38
-
39
- module ClassMethods
40
- end
41
-
42
- end
43
- end
44
- end
45
- end