Class: Tasker::Queries::TasksByAnnotation

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

Instance Method Summary collapse

Methods included from Helpers

#page_sort_params

Instance Method Details

#resolve(limit:, offset:, sort_by:, sort_order:, annotation_type:, annotation_key:, annotation_value:) ⇒ Object



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

def resolve(limit:, offset:, sort_by:, sort_order:, annotation_type:, annotation_key:, annotation_value:)
  sorts = page_sort_params(model: Tasker::Task, limit: limit, offset: offset, sort_by: sort_by,
                           sort_order: sort_order)
  Tasker::Task
    .with_all_associated
    .by_annotation(annotation_type, annotation_key, annotation_value)
    .limit(sorts[:limit])
    .offset(sorts[:offset])
    .order(sorts[:order])
end