ruby_astm 1.2.9 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ruby_astm/lab_interface.rb +28 -10
- data/lib/ruby_astm/query.rb +2 -0
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a276eabf353e3d09a9b132f167cca51b1d0bb0c85da34b5cf4474ae70b3412ae
|
4
|
+
data.tar.gz: 6ba7b3e47712630c7276ec3d25bf66bc2b40cbc8a7c512bd015aa8ea9d2c39f3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cece9db47a72baf428e6e3db8c47c7f253f4a4428e1ce9671cc1012f80b59166a50c4388192a85e9a9b4aecc61ac559105cdb46c164bc077ef840d81a1f3b572
|
7
|
+
data.tar.gz: 90afe5cdfbea386175f45044e17b7455cf11fd628d961054327781813e48280325fcedcfc40cf77d609b0c4e1d4417867545e6fdc8a40d5604c704bc99b4bf79
|
@@ -303,10 +303,12 @@ module LabInterface
|
|
303
303
|
self.headers ||= []
|
304
304
|
self.headers << hl7_header
|
305
305
|
when "Hl7_Observation"
|
306
|
-
unless self.headers
|
307
|
-
unless self.headers[-1].patients
|
308
|
-
|
309
|
-
|
306
|
+
unless self.headers.blank?
|
307
|
+
unless self.headers[-1].patients.blank?
|
308
|
+
unless self.headers[-1].patients[-1].orders[-1].blank?
|
309
|
+
hl7_observation = Hl7Observation.new({:line => line})
|
310
|
+
self.headers[-1].patients[-1].orders[-1].results[hl7_observation.name] ||= hl7_observation
|
311
|
+
end
|
310
312
|
end
|
311
313
|
end
|
312
314
|
when "Hl7_Patient"
|
@@ -325,21 +327,37 @@ module LabInterface
|
|
325
327
|
when "Query"
|
326
328
|
puts "got query"
|
327
329
|
query = Query.new({:line => line})
|
328
|
-
self.headers
|
330
|
+
unless self.headers.blank?
|
331
|
+
self.headers[-1].queries << query
|
332
|
+
end
|
329
333
|
when "Patient"
|
330
334
|
puts "got patient."
|
331
335
|
patient = Patient.new({:line => line})
|
332
|
-
self.headers
|
336
|
+
unless self.headers.blank?
|
337
|
+
self.headers[-1].patients << patient
|
338
|
+
end
|
333
339
|
when "Order"
|
334
340
|
order = Order.new({:line => line})
|
335
|
-
self.headers
|
341
|
+
unless self.headers.blank?
|
342
|
+
unless self.headers[-1].patients.blank?
|
343
|
+
self.headers[-1].patients[-1].orders << order
|
344
|
+
end
|
345
|
+
end
|
336
346
|
when "Result"
|
337
347
|
result = Result.new({:line => line})
|
338
|
-
self.headers
|
348
|
+
unless self.headers.blank?
|
349
|
+
unless self.headers[-1].patients.blank?
|
350
|
+
unless self.headers[-1].patients[-1].orders[-1].blank?
|
351
|
+
self.headers[-1].patients[-1].orders[-1].results[result.name] ||= result
|
352
|
+
end
|
353
|
+
end
|
354
|
+
end
|
339
355
|
when "Terminator"
|
340
356
|
## it didn't terminate so there was no commit being called.
|
341
|
-
|
342
|
-
|
357
|
+
unless self.headers.blank?
|
358
|
+
puts "got terminator."
|
359
|
+
self.headers[-1].commit
|
360
|
+
end
|
343
361
|
end
|
344
362
|
end
|
345
363
|
|
data/lib/ruby_astm/query.rb
CHANGED