Sha256: 236218af4822e5f4426a67a286428ab6500133cdb338d9663a4cff4608b2456f

Contents?: true

Size: 915 Bytes

Versions: 156

Compression:

Stored size: 915 Bytes

Contents

# frozen_string_literal: true

require_dependency "renalware/events"

module Renalware
  module Events
    class EventsPresenter < SimpleDelegator
      attr_reader :patient

      def initialize(patient, events)
        @patient = patient
        super(events)
      end

      def users_for_filtering
        User.where(id: ids_of_users_having_created_events_for_this_patient)
            .distinct
            .order(family_name: :asc)
      end

      def event_types_for_filtering
        Events::Type
          .where(id: all_event_type_ids_in_use_for_this_patient)
          .distinct
          .order(name: :asc)
      end

      private

      def ids_of_users_having_created_events_for_this_patient
        Event.for_patient(patient).pluck(:created_by_id)
      end

      def all_event_type_ids_in_use_for_this_patient
        Event.for_patient(patient).pluck(:event_type_id)
      end
    end
  end
end

Version data entries

156 entries across 156 versions & 1 rubygems

Version Path
renalware-core-2.0.167 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.166 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.165 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.164 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.163 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.162 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.161 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.160 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.159 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.158 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.157 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.156 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.155 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.153 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.152 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.151 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.149 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.148 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.147 app/presenters/renalware/events/events_presenter.rb
renalware-core-2.0.146 app/presenters/renalware/events/events_presenter.rb