diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-04-15 06:14:24 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-04-15 06:14:24 +0300 |
commit | d482517583173924ba7961a2b0e9e07d1b51bb78 (patch) | |
tree | 01ef6769846a451c4e3539caa1e32f54dd001157 /app | |
parent | 9b0b4d9b9484aaeb82de5f24942460c679ae909e (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app')
-rw-r--r-- | app/models/issue.rb | 1 | ||||
-rw-r--r-- | app/models/merge_request.rb | 1 | ||||
-rw-r--r-- | app/models/resource_events/issue_assignment_event.rb | 14 | ||||
-rw-r--r-- | app/models/resource_events/merge_request_assignment_event.rb | 14 | ||||
-rw-r--r-- | app/models/user.rb | 2 |
5 files changed, 32 insertions, 0 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb index 77dcaf9336c..8ace5dfff57 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -118,6 +118,7 @@ class Issue < ApplicationRecord has_many :issue_customer_relations_contacts, class_name: 'CustomerRelations::IssueContact', inverse_of: :issue has_many :customer_relations_contacts, through: :issue_customer_relations_contacts, source: :contact, class_name: 'CustomerRelations::Contact', inverse_of: :issues has_many :incident_management_timeline_events, class_name: 'IncidentManagement::TimelineEvent', foreign_key: :issue_id, inverse_of: :incident + has_many :assignment_events, class_name: 'ResourceEvents::IssueAssignmentEvent', inverse_of: :issue alias_attribute :escalation_status, :incident_management_issuable_escalation_status diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index ab6c58498ad..1e7ff6e8f0e 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -122,6 +122,7 @@ class MergeRequest < ApplicationRecord has_many :reviews, inverse_of: :merge_request has_many :reviewed_by_users, -> { distinct }, through: :reviews, source: :author has_many :created_environments, class_name: 'Environment', foreign_key: :merge_request_id, inverse_of: :merge_request + has_many :assignment_events, class_name: 'ResourceEvents::MergeRequestAssignmentEvent', inverse_of: :merge_request KNOWN_MERGE_PARAMS = [ :auto_merge_strategy, diff --git a/app/models/resource_events/issue_assignment_event.rb b/app/models/resource_events/issue_assignment_event.rb new file mode 100644 index 00000000000..b24f181bc48 --- /dev/null +++ b/app/models/resource_events/issue_assignment_event.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +module ResourceEvents + class IssueAssignmentEvent < ApplicationRecord + self.table_name = :issue_assignment_events + + belongs_to :user, optional: true + belongs_to :issue + + validates :issue, presence: true + + enum action: { add: 1, remove: 2 } + end +end diff --git a/app/models/resource_events/merge_request_assignment_event.rb b/app/models/resource_events/merge_request_assignment_event.rb new file mode 100644 index 00000000000..898594b7008 --- /dev/null +++ b/app/models/resource_events/merge_request_assignment_event.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +module ResourceEvents + class MergeRequestAssignmentEvent < ApplicationRecord + self.table_name = :merge_request_assignment_events + + belongs_to :user, optional: true + belongs_to :merge_request + + validates :merge_request, presence: true + + enum action: { add: 1, remove: 2 } + end +end diff --git a/app/models/user.rb b/app/models/user.rb index 16b4e604a9e..52c80a7e579 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -266,6 +266,8 @@ class User < ApplicationRecord has_many :resource_label_events, dependent: :nullify # rubocop:disable Cop/ActiveRecordDependent has_many :resource_state_events, dependent: :nullify # rubocop:disable Cop/ActiveRecordDependent + has_many :issue_assignment_events, class_name: 'ResourceEvents::IssueAssignmentEvent', dependent: :nullify # rubocop:disable Cop/ActiveRecordDependent + has_many :merge_request_assignment_events, class_name: 'ResourceEvents::MergeRequestAssignmentEvent', dependent: :nullify # rubocop:disable Cop/ActiveRecordDependent has_many :authored_events, class_name: 'Event', dependent: :destroy, foreign_key: :author_id # rubocop:disable Cop/ActiveRecordDependent has_many :namespace_commit_emails, class_name: 'Users::NamespaceCommitEmail' has_many :user_achievements, class_name: 'Achievements::UserAchievement', inverse_of: :user |