Sha256: 299cb73289ad71ded65a2ae93892e67fa3e5377037f2b5ae83d4757d8b29dcac

Contents?: true

Size: 934 Bytes

Versions: 16

Compression:

Stored size: 934 Bytes

Contents

# frozen_string_literal: true

module Renalware
  module PD
    class MDMPatientsQuery
      include ModalityScopes
      include PatientPathologyScopes
      MODALITY_NAMES = "PD"
      DEFAULT_SEARCH_PREDICATE = "hgb_date desc"
      attr_reader :q, :relation

      def initialize(relation: PD::Patient.all, q:)
        @q = q || {}
        @q[:s] = DEFAULT_SEARCH_PREDICATE if @q[:s].blank?
        @relation = relation
      end

      def call
        search.result
      end

      def search
        @search ||= begin
          relation
            .extending(PatientTransplantScopes)
            .extending(ModalityScopes)
            .extending(PatientPathologyScopes)
            .with_current_modality_matching(MODALITY_NAMES)
            .with_current_pathology
            .with_registration_statuses
            .left_outer_joins(:current_observation_set)
            .search(q)
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
renalware-core-2.0.64 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.63 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.62 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.61 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.60 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.58 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.57 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.56 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.55 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.54 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.53 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.52 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.51 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.50 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.48 app/models/renalware/pd/mdm_patients_query.rb
renalware-core-2.0.47 app/models/renalware/pd/mdm_patients_query.rb