Sha256: 436936a829c608e93e4c4b6193eaa5cd6b4e622545454e3c476cadf64453a795

Contents?: true

Size: 674 Bytes

Versions: 8

Compression:

Stored size: 674 Bytes

Contents

require_dependency "renalware/pathology/requests"

module Renalware
  module Pathology
    module Requests
      class RequestQuery
        attr_reader :requests, :query

        def initialize(q = {})
          @q = q
          @q[:s] = "created_at DESC" unless @q[:s].present?
        end

        def call
          search.result.includes(:patient, :clinic, :consultant)
        end

        def search
          @search ||= QueryableRequest.ransack(@q)
        end

        class QueryableRequest < ActiveType::Record[Request]
          ransacker :created_on, type: :date do
            Arel.sql("DATE(created_at)")
          end
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
renalware-core-2.0.0.pre.beta11 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta10 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta9 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta8 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta7 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta6 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta5 app/models/renalware/pathology/requests/request_query.rb
renalware-core-2.0.0.pre.beta4 app/models/renalware/pathology/requests/request_query.rb