blob: 43e6955c2a3e2eb2e83b320fe565c92b77e23005 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# frozen_string_literal: true
module Types
module TimeTracking
# rubocop: disable Graphql/AuthorizeTypes
class TimelogConnectionType < CountableConnectionType
field :total_spent_time,
GraphQL::Types::Int,
null: false,
description: 'Total time spent in seconds.'
def total_spent_time
# rubocop: disable CodeReuse/ActiveRecord
relation = object.items
# sometimes relation is an Array
relation = relation.reorder(nil) if relation.respond_to?(:reorder)
# rubocop: enable CodeReuse/ActiveRecord
relation.sum(:time_spent)
end
end
# rubocop: enable Graphql/AuthorizeTypes
end
end
|