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.0.147 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.146 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.145 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.144 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.143 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.142 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.141 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.140 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.139 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.138 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.137 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.136 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.135 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.134 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.133 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.132 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.131 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.130 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.129 app/models/renalware/pathology/observation_for_patient_request_description_query.rb
renalware-core-2.0.128 app/models/renalware/pathology/observation_for_patient_request_description_query.rb