his_emr_api_lab 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 314873736cb992217b9c0bab3446d7aa62f94f4b08e7f10b749894573d74811f
4
- data.tar.gz: 163f43124d1952514ab77b7ef70b5d86b54c36d5daa8d41f4da0cdb7cf07ff38
3
+ metadata.gz: d8ec4677af7163c2d90687ca46d2ebdfa5e438abe0d705a621545d26d2889b7e
4
+ data.tar.gz: 8a071aaef1ce28cae2b57253e739f406f60fe0724a8379414c667d20e756efa6
5
5
  SHA512:
6
- metadata.gz: dc26c5a5edecdadd4a108adc213c65d184d25bf114c6096f353accfcd00fcce16289695a7320f5119172c31857cbbc173140915be0a10619582a1db819015616
7
- data.tar.gz: 131d6ee486442f33d5b0c87de7ecd2c190897aa9f423f5ad0bb98e73711d77b93a9464d0309313fb2945f452d6ce006c0f6b8d62124931a2a200f4b966ba3bf6
6
+ metadata.gz: cddefdce79e09c49a190fc3c31d92eb15d5394b1fe1a5187d2a54c614d48da06b75d7863e24cf5196c076adc2c3400119d8a108ffdb62a72bdc85cf3523c7b55
7
+ data.tar.gz: caf9c33fc7480884576e83f07335d768705255a2586508c2e616cca9f0667cc422cde28267e3234f9995deb99727f5b2d482db4019fdfba6d83fdd699536c6e4
@@ -82,7 +82,9 @@ module Lab
82
82
 
83
83
  protected
84
84
 
85
- def order_saved(order_dto); end
85
+ def order_saved(order_dto)
86
+ order_dto
87
+ end
86
88
 
87
89
  def order_rejected(order_dto, message); end
88
90
 
@@ -80,6 +80,15 @@ module Lab
80
80
  order_dto
81
81
  end
82
82
 
83
+ def void_order_in_lims(order_id)
84
+ order = Lab::LabOrder.joins(order_type: { name: 'Lab' })
85
+ .unscoped
86
+ .find(order_id)
87
+ order_dto = Lab::Lims::OrderSerializer.serialize_order(order)
88
+ Rails.logger.info("Deleting order ##{order_dto[:accession_number]} from LIMS")
89
+ lims_api.delete_order('', order_dto)
90
+ end
91
+
83
92
  private
84
93
 
85
94
  def orders_pending_sync(batch_size)
@@ -24,6 +24,10 @@ module Lab
24
24
  'indian ink' => 'India ink'
25
25
  }.freeze
26
26
 
27
+ TEST_INDICATOR_MAPPINGS = {
28
+ 'HCT' => 10_532
29
+ }.freeze
30
+
27
31
  def self.translate_test_name(test_name)
28
32
  TEST_NAME_MAPPINGS.fetch(test_name.downcase, test_name)
29
33
  end
@@ -79,9 +83,11 @@ module Lab
79
83
  end
80
84
 
81
85
  def self.find_concept_by_name(name)
86
+ concept_id = TEST_INDICATOR_MAPPINGS[name.upcase]
87
+ query_condition = concept_id.nil? ? { name: CGI.unescapeHTML(name) } : { concept_id: }
82
88
  ConceptName.joins(:concept)
83
- .merge(Concept.all) # Filter out voided
84
- .where(name: CGI.unescapeHTML(name))
89
+ .merge(Concept.all)
90
+ .where(query_condition)
85
91
  .first
86
92
  end
87
93
  end
data/lib/auto12epl.rb CHANGED
@@ -133,9 +133,9 @@ class Auto12Epl
133
133
 
134
134
  # combine EPL statements
135
135
  if stat.nil?
136
- "\nN\nR216,0\nZT\nS1\n#{name_element}\n#{pid_dob_age_gender_element}\n#{barcode_element}\n#{barcode_human_element}\n#{collector_element}\n#{tests_element}\nP3\n"
136
+ "\nN\nR216,0\nZT\nS1\n#{name_element}\n#{pid_dob_age_gender_element}\n#{barcode_element}\n#{barcode_human_element}\n#{collector_element}\n#{tests_element}\nP#{print_copies}\n"
137
137
  else
138
- "\nN\nR216,0\nZT\nS1\n#{name_element}\n#{pid_dob_age_gender_element}\n#{barcode_element}\n#{barcode_human_element}\n#{collector_element}\n#{tests_element}\n#{stat_element}\nP3\n"
138
+ "\nN\nR216,0\nZT\nS1\n#{name_element}\n#{pid_dob_age_gender_element}\n#{barcode_element}\n#{barcode_human_element}\n#{collector_element}\n#{tests_element}\n#{stat_element}\nP#{print_copies}\n"
139
139
  end
140
140
  end
141
141
 
@@ -176,6 +176,12 @@ class Auto12Epl
176
176
  schema_track = schema_track.gsub('-', '').strip
177
177
  "B#{x},#{y},#{BARCODE_ROTATION},#{BARCODE_TYPE},#{BARCODE_NARROW_WIDTH},#{BARCODE_WIDE_WIDTH},#{height},#{BARCODE_IS_HUMAN_READABLE},\"#{schema_track}\""
178
178
  end
179
+
180
+ def print_copies
181
+ property = ::GlobalProperty.find_by(property: 'max.lab.order.print.copies')
182
+ value = property&.property_value&.strip
183
+ value || 3
184
+ end
179
185
  end
180
186
 
181
187
  if __FILE__ == $PROGRAM_NAME
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.0.0'
4
+ VERSION = '2.0.1'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: his_emr_api_lab
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elizabeth Glaser Pediatric Foundation Malawi
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-02 00:00:00.000000000 Z
11
+ date: 2024-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: couchrest
@@ -321,7 +321,7 @@ licenses:
321
321
  metadata:
322
322
  source_code_uri: https://github.com/EGPAFMalawiHIS/his_emr_api_lab
323
323
  rubygems_mfa_required: 'true'
324
- post_install_message:
324
+ post_install_message:
325
325
  rdoc_options: []
326
326
  require_paths:
327
327
  - lib
@@ -336,8 +336,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
336
336
  - !ruby/object:Gem::Version
337
337
  version: '0'
338
338
  requirements: []
339
- rubygems_version: 3.4.15
340
- signing_key:
339
+ rubygems_version: 3.5.6
340
+ signing_key:
341
341
  specification_version: 4
342
342
  summary: Lab extension for the HIS-EMR-API
343
343
  test_files: []