mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-02 19:30:48 +08:00
新增:父子关系判断以及可设置为父工作项的列表
This commit is contained in:
@@ -12,6 +12,10 @@ module Api::V1::Issues::Concerns::Checkable
|
||||
raise ApplicationService::Error, "Milestone不存在!" unless Version.find_by_id(milestone_id).present?
|
||||
end
|
||||
|
||||
def check_root_issue(issue, root_id)
|
||||
raise ApplicationService::Error, "父工作项与当前工作项已存在父子关系!" if Issue.full_children_issues(issue).map{|i| i.id}.include?(root_id)
|
||||
end
|
||||
|
||||
def check_issue_tags(issue_tag_ids)
|
||||
raise ApplicationService::Error, "请输入正确的标记ID数组!" unless issue_tag_ids.is_a?(Array)
|
||||
raise ApplicationService::Error, "最多可选择3个标记" if issue_tag_ids.size > 3
|
||||
|
||||
@@ -5,6 +5,7 @@ class Api::V1::Issues::UpdateService < ApplicationService
|
||||
|
||||
attr_reader :project, :issue, :current_user
|
||||
attr_reader :status_id, :priority_id, :milestone_id, :branch_name, :start_date, :due_date, :subject, :description, :blockchain_token_num
|
||||
attr_reader :target_pm_project_id, :pm_sprint_id, :pm_issue_type, :root_id, :time_scale
|
||||
attr_reader :issue_tag_ids, :assigner_ids, :attachment_ids, :receivers_login, :before_issue_tag_ids, :before_assigner_ids, :project_id
|
||||
attr_accessor :add_assigner_ids, :previous_issue_changes, :updated_issue, :atme_receivers
|
||||
|
||||
@@ -46,6 +47,7 @@ class Api::V1::Issues::UpdateService < ApplicationService
|
||||
check_issue_status(status_id) if status_id.present?
|
||||
check_issue_priority(priority_id) if priority_id.present?
|
||||
check_milestone(milestone_id) if milestone_id.present?
|
||||
check_root_issue(issue, root_id) if root_id.present?
|
||||
check_issue_tags(issue_tag_ids) unless issue_tag_ids.nil?
|
||||
check_assigners(assigner_ids) unless assigner_ids.nil?
|
||||
check_attachments(attachment_ids) unless attachment_ids.nil?
|
||||
|
||||
Reference in New Issue
Block a user