his_emr_api_lab 2.1.8.5 → 2.1.8.7
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:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 666ee2ba3fbc370e272c06156d5f90fa2b8a8bedba647dcc1bbfbfbec347a42b
|
|
4
|
+
data.tar.gz: ceedca5090c613d217af7f85b3d52cb5a519cb8dfea24a5452e321d50efa2a3d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f10ed2e39e3fabcdb6219a13b553dd4a1acc29318256f6977ffa05230917265afd90ba4487bb350508ffb5d323cb0783ffc04cc0a3dcdb591692e18cdd78ed4b
|
|
7
|
+
data.tar.gz: 46a28575116934b1a8bdce291dd5661b965f5d8ec428a00edbe2530626a7be5bc22b2e96c4e7a09989ba000048d5c252d4aa1303f4d943c044f4415ead92ca54
|
|
@@ -66,7 +66,8 @@ module Lab
|
|
|
66
66
|
def self.concept_name(concept_id)
|
|
67
67
|
return concept_id unless concept_id
|
|
68
68
|
|
|
69
|
-
::ConceptAttribute.find_by(concept_id:, attribute_type: ConceptAttributeType.test_catalogue_name)&.value_reference
|
|
69
|
+
c_name = ::ConceptAttribute.find_by(concept_id:, attribute_type: ConceptAttributeType.test_catalogue_name)&.value_reference
|
|
70
|
+
c_name || ConceptName.find_by_concept_id(concept_id)&.name
|
|
70
71
|
end
|
|
71
72
|
|
|
72
73
|
def self.voided_tests(order)
|
|
@@ -524,9 +524,10 @@ module Lab
|
|
|
524
524
|
def orders_without_specimen(patient_id = nil, start_date: nil)
|
|
525
525
|
Rails.logger.debug('Looking for orders without a specimen')
|
|
526
526
|
unknown_specimen = ConceptName.where(name: Lab::Metadata::UNKNOWN_SPECIMEN)
|
|
527
|
-
.
|
|
527
|
+
.pluck(:concept_id)
|
|
528
528
|
orders = Lab::LabOrder.where(concept_id: unknown_specimen)
|
|
529
|
-
.
|
|
529
|
+
.joins('LEFT JOIN lab_lims_order_mappings ON lab_lims_order_mappings.lims_id = orders.accession_number')
|
|
530
|
+
.where('lab_lims_order_mappings.lims_id IS NULL')
|
|
530
531
|
orders = orders.where(patient_id:) if patient_id
|
|
531
532
|
orders = orders.where('orders.date_created >= ?', start_date) if start_date
|
|
532
533
|
|
|
@@ -538,7 +539,7 @@ module Lab
|
|
|
538
539
|
# Lab::OrdersSearchService.find_orders_without_results(patient_id: patient_id)
|
|
539
540
|
# .where.not(accession_number: Lab::LimsOrderMapping.select(:lims_id).where("pulled_at IS NULL"))
|
|
540
541
|
orders = Lab::OrdersSearchService.find_orders_without_results(patient_id:)
|
|
541
|
-
.
|
|
542
|
+
.joins('INNER JOIN lab_lims_order_mappings ON lab_lims_order_mappings.order_id = orders.order_id')
|
|
542
543
|
orders = orders.where('orders.date_created >= ?', start_date) if start_date
|
|
543
544
|
orders
|
|
544
545
|
end
|
|
@@ -548,7 +549,8 @@ module Lab
|
|
|
548
549
|
orders = Lab::LabOrder.joins(:reason_for_test)
|
|
549
550
|
.merge(Observation.where(value_coded: nil, value_text: nil))
|
|
550
551
|
.limit(1000)
|
|
551
|
-
.
|
|
552
|
+
.joins('LEFT JOIN lab_lims_order_mappings ON lab_lims_order_mappings.lims_id = orders.accession_number')
|
|
553
|
+
.where('lab_lims_order_mappings.lims_id IS NULL')
|
|
552
554
|
orders = orders.where(patient_id:) if patient_id
|
|
553
555
|
orders = orders.where('orders.date_created >= ?', start_date) if start_date
|
|
554
556
|
|
|
@@ -101,7 +101,8 @@ module Lab
|
|
|
101
101
|
|
|
102
102
|
def new_orders
|
|
103
103
|
Rails.logger.debug('Looking for new orders that need to be created in LIMS...')
|
|
104
|
-
query = Lab::LabOrder.
|
|
104
|
+
query = Lab::LabOrder.joins('LEFT JOIN lab_lims_order_mappings ON lab_lims_order_mappings.order_id = orders.order_id')
|
|
105
|
+
.where('lab_lims_order_mappings.order_id IS NULL')
|
|
105
106
|
.where("accession_number IS NOT NULL AND accession_number !=''")
|
|
106
107
|
|
|
107
108
|
query = if start_date
|
|
@@ -133,9 +134,9 @@ module Lab
|
|
|
133
134
|
# add date filter to avoid pushing voided orders that were created a long time ago
|
|
134
135
|
Rails.logger.debug('Looking for voided orders that are being tracked by LIMS...')
|
|
135
136
|
orders = Lab::LabOrder.unscoped
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
137
|
+
.joins('INNER JOIN lab_lims_order_mappings ON lab_lims_order_mappings.order_id = orders.order_id')
|
|
138
|
+
.where(order_type: OrderType.where(name: Lab::Metadata::ORDER_TYPE_NAME),
|
|
139
|
+
voided: 1)
|
|
139
140
|
orders = orders.where('orders.date_created >= ?', start_date) if start_date
|
|
140
141
|
orders.order(date_voided: :desc)
|
|
141
142
|
end
|
data/lib/lab/version.rb
CHANGED