summaryrefslogtreecommitdiff
path: root/lib/gitlab/cycle_analytics/summary/issue.rb
blob: ce7788590b9677cea7b93ab85b0580382030037d (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
26
27
28
29
30
31
32
33
# frozen_string_literal: true

module Gitlab
  module CycleAnalytics
    module Summary
      class Issue < Base
        def initialize(project:, from:, to: nil, current_user:)
          @project = project
          @from = from
          @to = to
          @current_user = current_user
        end

        def title
          n_('New Issue', 'New Issues', value)
        end

        def value
          @value ||= Value::PrettyNumeric.new(issues_count)
        end

        private

        def issues_count
          IssuesFinder
            .new(@current_user, project_id: @project.id, created_after: @from, created_before: @to)
            .execute
            .count
        end
      end
    end
  end
end