Sha256: 99f54dde12013be7dd921b90c2e5a139b26ca98e40d35efb15a7982d5532532b

Contents?: true

Size: 749 Bytes

Versions: 3

Compression:

Stored size: 749 Bytes

Contents

module Roqua
  module Healthy
    module A19
      extend ::Roqua::Logging

      # Fetches a patient record given a `patient_id` and returns a hash containing
      # the interesting information that was returned from an upstream `ADR^A19`
      # response.
      #
      # @param  patient_id [String] the patient identifier
      # @return [Hash] the patient details.
      def self.fetch(patient_id)
        eventlog.lifecycle('roqua.hl7.a19', patient_id: patient_id) do
          message = Fetcher.new(patient_id).fetch
          patient = Transformer.new(message).to_patient
          patient
        end
      end
    end
  end
end

require_relative 'a19/fetcher'
require_relative 'a19/transformer'
require_relative 'a19/correct_patient_check'

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
roqua-healthy-1.0.2 lib/roqua/healthy/a19.rb
roqua-healthy-1.0.1 lib/roqua/healthy/a19.rb
roqua-healthy-1.0.0 lib/roqua/healthy/a19.rb