Class: Tasker::Queries::TasksByStatus

Inherits:
BaseQuery
  • Object
show all
Includes:
Helpers
Defined in:
app/graphql/tasker/queries/tasks_by_status.rb

Instance Method Summary collapse

Methods included from Helpers

#page_sort_params

Instance Method Details

#resolve(limit:, offset:, sort_by:, sort_order:, status:) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'app/graphql/tasker/queries/tasks_by_status.rb', line 17

def resolve(limit:, offset:, sort_by:, sort_order:, status:)
  sorts = page_sort_params(model: Tasker::Task, limit: limit, offset: offset, sort_by: sort_by,
                           sort_order: sort_order)

  # Use the ActiveRecord scope to query tasks by current state
  Tasker::Task.with_all_associated
              .by_current_state(status)
              .limit(sorts[:limit])
              .offset(sorts[:offset])
              .order(sorts[:order])
end