Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/quick_actions/target_service.rb')
-rw-r--r--app/services/quick_actions/target_service.rb32
1 files changed, 20 insertions, 12 deletions
diff --git a/app/services/quick_actions/target_service.rb b/app/services/quick_actions/target_service.rb
index 6eda3c89e6c..04ae5287302 100644
--- a/app/services/quick_actions/target_service.rb
+++ b/app/services/quick_actions/target_service.rb
@@ -2,37 +2,45 @@
module QuickActions
class TargetService < BaseService
- def execute(type, type_id)
+ def execute(type, type_iid)
case type&.downcase
+ when 'workitem'
+ work_item(type_iid)
when 'issue'
- issue(type_id)
+ issue(type_iid)
when 'mergerequest'
- merge_request(type_id)
+ merge_request(type_iid)
when 'commit'
- commit(type_id)
+ commit(type_iid)
end
end
private
# rubocop: disable CodeReuse/ActiveRecord
- def issue(type_id)
- return project.issues.build if type_id.nil?
+ def work_item(type_iid)
+ WorkItems::WorkItemsFinder.new(current_user, project_id: project.id).find_by(iid: type_iid)
+ end
+ # rubocop: enable CodeReuse/ActiveRecord
+
+ # rubocop: disable CodeReuse/ActiveRecord
+ def issue(type_iid)
+ return project.issues.build if type_iid.nil?
- IssuesFinder.new(current_user, project_id: project.id).find_by(iid: type_id) || project.issues.build
+ IssuesFinder.new(current_user, project_id: project.id).find_by(iid: type_iid) || project.issues.build
end
# rubocop: enable CodeReuse/ActiveRecord
# rubocop: disable CodeReuse/ActiveRecord
- def merge_request(type_id)
- return project.merge_requests.build if type_id.nil?
+ def merge_request(type_iid)
+ return project.merge_requests.build if type_iid.nil?
- MergeRequestsFinder.new(current_user, project_id: project.id).find_by(iid: type_id) || project.merge_requests.build
+ MergeRequestsFinder.new(current_user, project_id: project.id).find_by(iid: type_iid) || project.merge_requests.build
end
# rubocop: enable CodeReuse/ActiveRecord
- def commit(type_id)
- project.commit(type_id)
+ def commit(type_iid)
+ project.commit(type_iid)
end
end
end