Sha256: 8ec2d6d579e69238cb938d5dba61c03fed9b76c91b4e01331fb331ef3fd43617

Contents?: true

Size: 1.05 KB

Versions: 43

Compression:

Stored size: 1.05 KB

Contents

# frozen_string_literal: true

require_dependency "renalware/pathology"

module Renalware
  module Pathology
    class ObservationForPatientRequestDescriptionQuery
      def initialize(patient, request_description)
        @patient = patient
        @observation_description = request_description.required_observation_description
      end

      # I tried to switch over here to pulling the results from current_observation_set but]
      # the dates seemed to be one year ahead in the test suite
      def call
        return if @observation_description.nil?

        return if @patient.current_observation_set.nil?

        result = @patient.current_observation_set.values[@observation_description.code]
        if result
          OpenStruct.new(
            observed_on: Time.zone.parse(result["observed_at"]).to_date,
            result: result["result"].to_f
          )
        end

        # @patient
        #   .observations
        #   .where(description: @observation_description)
        #   .order(observed_at: :desc)
        #   .first
      end
    end
  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
renalware-core-2.1.1 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.1.0 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.167 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.166 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.165 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.164 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.163 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.162 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.161 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.160 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.159 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.158 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.157 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.156 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.155 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.153 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.152 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.151 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.149 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.148 app/models/renalware/pathology/observation_for_patient_request_description_query.rb