summaryrefslogtreecommitdiff
path: root/app/models/analytics
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/analytics')
-rw-r--r--app/models/analytics/cycle_analytics/project_stage.rb3
-rw-r--r--app/models/analytics/cycle_analytics/project_value_stream.rb22
-rw-r--r--app/models/analytics/usage_trends/measurement.rb2
3 files changed, 26 insertions, 1 deletions
diff --git a/app/models/analytics/cycle_analytics/project_stage.rb b/app/models/analytics/cycle_analytics/project_stage.rb
index b2c16444a2a..e8b03fa066a 100644
--- a/app/models/analytics/cycle_analytics/project_stage.rb
+++ b/app/models/analytics/cycle_analytics/project_stage.rb
@@ -7,10 +7,13 @@ module Analytics
validates :project, presence: true
belongs_to :project
+ belongs_to :value_stream, class_name: 'Analytics::CycleAnalytics::ProjectValueStream', foreign_key: :project_value_stream_id
alias_attribute :parent, :project
alias_attribute :parent_id, :project_id
+ alias_attribute :value_stream_id, :project_value_stream_id
+
delegate :group, to: :project
validate :validate_project_group_for_label_events, if: -> { start_event_label_based? || end_event_label_based? }
diff --git a/app/models/analytics/cycle_analytics/project_value_stream.rb b/app/models/analytics/cycle_analytics/project_value_stream.rb
new file mode 100644
index 00000000000..3eba7e87b17
--- /dev/null
+++ b/app/models/analytics/cycle_analytics/project_value_stream.rb
@@ -0,0 +1,22 @@
+# frozen_string_literal: true
+
+class Analytics::CycleAnalytics::ProjectValueStream < ApplicationRecord
+ belongs_to :project
+
+ has_many :stages, class_name: 'Analytics::CycleAnalytics::ProjectStage'
+
+ validates :project, :name, presence: true
+ validates :name, length: { minimum: 3, maximum: 100, allow_nil: false }, uniqueness: { scope: :project_id }
+
+ def custom?
+ false
+ end
+
+ def stages
+ []
+ end
+
+ def self.build_default_value_stream(project)
+ new(name: Analytics::CycleAnalytics::Stages::BaseService::DEFAULT_VALUE_STREAM_NAME, project: project)
+ end
+end
diff --git a/app/models/analytics/usage_trends/measurement.rb b/app/models/analytics/usage_trends/measurement.rb
index ad0272699c2..46c5d56d210 100644
--- a/app/models/analytics/usage_trends/measurement.rb
+++ b/app/models/analytics/usage_trends/measurement.rb
@@ -58,4 +58,4 @@ module Analytics
end
end
-Analytics::UsageTrends::Measurement.prepend_if_ee('EE::Analytics::UsageTrends::Measurement')
+Analytics::UsageTrends::Measurement.prepend_mod_with('Analytics::UsageTrends::Measurement')