Sha256: 4aa7eece499a90451a7672d2ef4e81e70071592f9b4f5effd0f53752412ec2f5

Contents?: true

Size: 842 Bytes

Versions: 98

Compression:

Stored size: 842 Bytes

Contents

# frozen_string_literal: true

module Renalware
  module Medications
    class PrescriptionsByDrugTypeQuery
      attr_reader :drug_type_name, :search_params

      def initialize(drug_type_name:, search_params: nil)
        @drug_type_name = drug_type_name.downcase
        @search_params = search_params || {}
        @search_params.reverse_merge!(s: Prescription.default_search_order)
      end

      def call
        search.result
      end

      def search
        @search ||= begin
          Prescription
            .current
            .includes(:medication_route, :drug)
            .includes(patient: { current_modality: :description })
            .eager_load(drug: [:drug_types])
            .where("lower(drug_types.name) = lower(?)", drug_type_name)
            .ransack(search_params)
        end
      end
    end
  end
end

Version data entries

98 entries across 98 versions & 1 rubygems

Version Path
renalware-core-2.0.84 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.83 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.82 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.81 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.80 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.79 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.78 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.77 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.76 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.75 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.74 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.73 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.72 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.71 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.70 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.69 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.68 app/models/renalware/medications/prescriptions_by_drug_type_query.rb
renalware-core-2.0.67 app/models/renalware/medications/prescriptions_by_drug_type_query.rb