diff --git a/app/controllers/pull_requests_controller.rb b/app/controllers/pull_requests_controller.rb index 2e8855026..b4bda5c8a 100644 --- a/app/controllers/pull_requests_controller.rb +++ b/app/controllers/pull_requests_controller.rb @@ -186,9 +186,14 @@ class PullRequestsController < ApplicationController fixed_version_id: params[:fixed_version_id], issue_tags_value: params[:issue_tag_ids].present? ? params[:issue_tag_ids].join(",") : "", } + if params[:issue_tag_ids].present? && !@issue&.issue_tags_relates.where(issue_tag_id: params[:issue_tag_ids]).exists? - @issue&.issue_tags_relates&.delete_all + @issue&.issue_tags_relates&.destroy_all + params[:issue_tag_ids].each do |tag| + IssueTagsRelate.create(issue_id: @issue.id, issue_tag_id: tag) + end end + if @issue.update_attributes(issue_params) if @pull_request.update_attributes(local_params) gitea_request = Gitea::PullRequest::UpdateService.new(current_user, @repository.try(:identifier), requests_params, @pull_request.try(:gpid)).call