| @@ -125,9 +125,15 @@ class IssuesController < ApplicationController | |||
| end | |||
| end | |||
| if params[:issue_tag_ids].present? | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create!(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| if params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size > 1 | |||
| return normal_status(-1, "最多只能创建一个标记。") | |||
| elsif params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size == 1 | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create!(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| else | |||
| return normal_status(-1, "请输入正确的标记。") | |||
| end | |||
| end | |||
| if params[:assigned_to_id].present? | |||
| Tiding.create!(user_id: params[:assigned_to_id], trigger_user_id: current_user.id, | |||
| @@ -146,7 +152,7 @@ class IssuesController < ApplicationController | |||
| Rails.logger.info "[ATME] maybe to at such users: #{@atme_receivers.pluck(:login)}" | |||
| AtmeService.call(current_user, @atme_receivers, @issue) if @atme_receivers.size > 0 | |||
| render json: {status: 0, message: "创建成", id: @issue.id} | |||
| render json: {status: 0, message: "创建成功", id: @issue.id} | |||
| else | |||
| normal_status(-1, "创建失败") | |||
| end | |||
| @@ -165,11 +171,17 @@ class IssuesController < ApplicationController | |||
| last_token = @issue.token | |||
| last_status_id = @issue.status_id | |||
| @issue&.issue_tags_relates&.destroy_all if params[:issue_tag_ids].blank? | |||
| if params[:issue_tag_ids].present? && !@issue&.issue_tags_relates.where(issue_tag_id: params[:issue_tag_ids]).exists? | |||
| @issue&.issue_tags_relates&.destroy_all | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| if params[:issue_tag_ids].present? | |||
| if params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size > 1 | |||
| return normal_status(-1, "最多只能创建一个标记。") | |||
| elsif params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size == 1 | |||
| @issue&.issue_tags_relates&.destroy_all | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create!(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| else | |||
| return normal_status(-1, "请输入正确的标记。") | |||
| end | |||
| end | |||
| issue_files = params[:attachment_ids] | |||
| @@ -91,10 +91,16 @@ class PullRequestsController < ApplicationController | |||
| @issue&.issue_tags_relates&.destroy_all if params[:issue_tag_ids].blank? | |||
| if params[:issue_tag_ids].present? && !@issue&.issue_tags_relates.where(issue_tag_id: params[:issue_tag_ids]).exists? | |||
| @issue&.issue_tags_relates&.destroy_all | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| if params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size > 1 | |||
| return normal_status(-1, "最多只能创建一个标记。") | |||
| elsif params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size == 1 | |||
| @issue&.issue_tags_relates&.destroy_all | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create!(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| else | |||
| return normal_status(-1, "请输入正确的标记。") | |||
| end | |||
| end | |||
| if @issue.update_attributes(@issue_params) | |||
| @@ -104,9 +110,16 @@ class PullRequestsController < ApplicationController | |||
| if gitea_pull[:status] === :success | |||
| if params[:issue_tag_ids].present? | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| if params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size > 1 | |||
| return normal_status(-1, "最多只能创建一个标记。") | |||
| elsif params[:issue_tag_ids].is_a?(Array) && params[:issue_tag_ids].size == 1 | |||
| @issue&.issue_tags_relates&.destroy_all | |||
| params[:issue_tag_ids].each do |tag| | |||
| IssueTagsRelate.create!(issue_id: @issue.id, issue_tag_id: tag) | |||
| end | |||
| else | |||
| return normal_status(-1, "请输入正确的标记。") | |||
| end | |||
| end | |||
| if params[:status_id].to_i == 5 | |||
| @issue.issue_times.update_all(end_time: Time.now) | |||
| @@ -58,8 +58,12 @@ class PullRequests::CreateService < ApplicationService | |||
| end | |||
| def save_issue_tags_relates! | |||
| issue_tag_ids.each do |tag| | |||
| IssueTagsRelate.create!(issue_id: pull_issue.id, issue_tag_id: tag) | |||
| if issue_tag_ids.size > 1 | |||
| raise "最多只能创建一个标记。" | |||
| else | |||
| issue_tag_ids.each do |tag| | |||
| IssueTagsRelate.create!(issue_id: pull_issue.id, issue_tag_id: tag) | |||
| end | |||
| end | |||
| end | |||
| @@ -1,5 +1,6 @@ | |||
| pr = issue.pull_request | |||
| json.pull_request_id pr.id | |||
| json.pull_request_number pr.gitea_number | |||
| json.pull_request_status pr.status | |||
| json.pull_request_head pr.head | |||
| json.pull_request_base pr.base | |||