his_emr_api_lab 2.1.7.pre.alpha → 2.1.7.pre.beta.0

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: 8f9b24a7f0fab2de0e47f886cd6debbdfa4b8e8ee07abd2e2d9403c45ff9343b
4
- data.tar.gz: e57bc3a15d6ae8ff85bff447c0e7e95a3d6ce35c1d9b99d1a237dc22e2c717aa
3
+ metadata.gz: b15bb82b3ff39714e8f48a1a8102bc9c0347d5498f2e8fae7d8e5c446d0d15f5
4
+ data.tar.gz: 159e9321795329ae186bf7d4a88aa492f63634ed5b5a236fb6a634da0dbd8342
5
5
  SHA512:
6
- metadata.gz: 41a0a57a88d0d6b2a4826ada390a62f244118f024a5d49b9e9dfa17940165cb4a450076fa209c413d6f06d209050b89a3ee25ec513e4706400380f10d1bcbd8b
7
- data.tar.gz: b0894a58a2fdd2467d5f1ffe9f36d041cc9b00680369453d6dd2f0f2016743336d9466eea954fbab15c4f74b9f0e208031772bd84854a1e5780b634f433bee9f
6
+ metadata.gz: e2632b305212c9f09bc2347f6d2a14d873b781e02311c1f52309f52db418ea194124fcc2065f7258865204bd918a56888e29c4d40656f08cf99b8d6184b75b0a
7
+ data.tar.gz: 6e4f055b0412a7300c11abcb955c732302b5429db0aec611a888df507c5f547328715a7831f9411a181695549f698cb04430b5a4f564f3f9e42d23b25af2034e
@@ -102,14 +102,16 @@ module Lab
102
102
 
103
103
  if reason_for_test
104
104
  Rails.logger.debug("Updating reason for test on order ##{order.order_id}")
105
- update_reason_for_test(order, Concept.find(reason_for_test)&.id, force_update: params.fetch('force_update', false))
105
+ update_reason_for_test(order, Concept.find(reason_for_test)&.id,
106
+ force_update: params.fetch('force_update', false))
106
107
  end
107
108
 
108
109
  Lab::LabOrderSerializer.serialize_order(order)
109
110
  end
110
111
 
111
112
  def void_order(order_id, reason)
112
- order = Lab::LabOrder.includes(%i[requesting_clinician reason_for_test target_lab comment_to_fulfiller], tests: [:result])
113
+ order = Lab::LabOrder.includes(%i[requesting_clinician reason_for_test target_lab comment_to_fulfiller],
114
+ tests: [:result])
113
115
  .find(order_id)
114
116
 
115
117
  order.requesting_clinician&.void(reason)
@@ -160,13 +162,15 @@ module Lab
160
162
  last_order_date: Lab::LabOrder.last&.start_date&.to_date,
161
163
  lab_orders: []
162
164
  }
163
- data[:lab_orders] = orders.map do |order|
164
- Lab::LabOrderSerializer.serialize_order(
165
- order, requesting_clinician: order.requesting_clinician,
166
- reason_for_test: order.reason_for_test,
167
- target_lab: order.target_lab
168
- )
169
- end if include_data
165
+ if include_data
166
+ data[:lab_orders] = orders.map do |order|
167
+ Lab::LabOrderSerializer.serialize_order(
168
+ order, requesting_clinician: order.requesting_clinician,
169
+ reason_for_test: order.reason_for_test,
170
+ target_lab: order.target_lab
171
+ )
172
+ end
173
+ end
170
174
  data
171
175
  end
172
176
 
@@ -174,14 +178,14 @@ module Lab
174
178
 
175
179
  def create_rejection_notification(order_params)
176
180
  order = find_order order_params['tracking_number']
177
- data = { 'type': 'LIMS',
178
- 'specimen': ConceptName.find_by(concept_id: order.concept_id)&.name,
179
- 'accession_number': order&.accession_number,
180
- 'order_date': order&.start_date,
181
- 'arv_number': find_arv_number(order.patient_id),
182
- 'patient_id': result.person_id,
183
- 'ordered_by': order&.provider&.person&.name,
184
- 'rejection_reason': order_params['comments'] }.as_json
181
+ data = { type: 'LIMS',
182
+ specimen: ConceptName.find_by(concept_id: order.concept_id)&.name,
183
+ accession_number: order&.accession_number,
184
+ order_date: order&.start_date,
185
+ arv_number: find_arv_number(order.patient_id),
186
+ patient_id: result.person_id,
187
+ ordered_by: order&.provider&.person&.name,
188
+ rejection_reason: order_params['comments'] }.as_json
185
189
  NotificationService.new.create_notification('LIMS', data)
186
190
  end
187
191
 
@@ -235,7 +239,9 @@ module Lab
235
239
  encounter.encounter_datetime = order_params[:date] || Date.today
236
240
  encounter.visit = Visit.find_by_uuid(visit) if Encounter.column_names.include?('visit_id')
237
241
  encounter.provider_id = User.current&.person&.id if Encounter.column_names.include?('provider_id')
238
- encounter.program_id = order_params[:program_id] if Encounter.column_names.include?('program_id') && order_params[:program_id].present?
242
+ if Encounter.column_names.include?('program_id') && order_params[:program_id].present?
243
+ encounter.program_id = order_params[:program_id]
244
+ end
239
245
  encounter.save!
240
246
  encounter.reload
241
247
  end
@@ -259,7 +265,8 @@ module Lab
259
265
  order.date_created = params[:date]&.to_date || Date.today if order.respond_to?(:date_created)
260
266
  order.start_date = params[:date]&.to_date || Date.today if order.respond_to?(:start_date)
261
267
  order.auto_expire_date = params[:end_date]
262
- order.comment_to_fulfiller = params[:comment_to_fulfiller] if params[:comment_to_fulfiller]
268
+ # NOTE: comment_to_fulfiller is a has_one association, not a field
269
+ # It will be created via add_comment_to_fulfiller method
263
270
  order.accession_number = access_number
264
271
  order.orderer = User.current&.user_id
265
272
 
@@ -355,7 +362,10 @@ module Lab
355
362
 
356
363
  return if order.reason_for_test&.value_coded == concept_id
357
364
 
358
- raise InvalidParameterError, "Can't change reason for test once set" if order.reason_for_test&.value_coded && !force_update
365
+ if order.reason_for_test&.value_coded && !force_update
366
+ raise InvalidParameterError,
367
+ "Can't change reason for test once set"
368
+ end
359
369
 
360
370
  order.reason_for_test&.delete
361
371
  date = order.start_date if order.respond_to?(:start_date)
data/lib/lab/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lab
4
- VERSION = '2.1.7-alpha'
4
+ VERSION = '2.1.7-beta.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: his_emr_api_lab
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.7.pre.alpha
4
+ version: 2.1.7.pre.beta.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elizabeth Glaser Pediatric Foundation Malawi