Sha256: 0af6136909046ad42a79de2a81d2c889284abbe027a1654e8a44a5e99604b0f5

Contents?: true

Size: 1006 Bytes

Versions: 13

Compression:

Stored size: 1006 Bytes

Contents

# frozen_string_literal: true
module ThinkFeelDoEngine
  module Reports
    # Scenario: a Participant completes a Task on the assigned day.
    class TaskCompletion
      def self.columns
        %w( participant_id title completed_on )
      end

      def self.all
        Participant.not_moderator.select(:id, :study_id)
                   .includes(:memberships).map do |participant|
          next unless participant.active_membership

          TaskStatus.where(membership_id: participant.active_membership.id)
                    .map do |task_status|
            next unless task_status.completed_at.try(:to_date) ==
                        participant.active_membership.start_date +
                        task_status.start_day - 1

            {
              participant_id: participant.study_id,
              title: task_status.task.title,
              completed_on: task_status.completed_at.to_date.iso8601
            }
          end
        end.flatten.compact
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
think_feel_do_engine-3.22.9 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.8 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.7 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.6 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.5 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.4 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.2 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.1 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.22.0 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.21.2 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.21.1 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.21.0 app/models/think_feel_do_engine/reports/task_completion.rb
think_feel_do_engine-3.20.1 app/models/think_feel_do_engine/reports/task_completion.rb