解决pull创建和更新操作的bug

This commit is contained in:
jasder 2021-03-02 10:07:13 +08:00
commit 41118f6d12
2 changed files with 17 additions and 11 deletions

View File

@ -228,7 +228,8 @@ class PullRequestsController < ApplicationController
} }
@requests_params = @local_params.merge({ @requests_params = @local_params.merge({
assignee: current_user.try(:login), assignee: current_user.try(:login),
assignees: ["#{params[:assigned_login].to_s}"], # assignees: ["#{params[:assigned_login].to_s}"],
assignees: ["#{current_user.try(:login).to_s}"],
labels: params[:issue_tag_ids], labels: params[:issue_tag_ids],
due_date: Time.now due_date: Time.now
}) })

View File

@ -1,6 +1,7 @@
class PullRequests::CreateService < ApplicationService class PullRequests::CreateService < ApplicationService
attr_reader :current_user, :owner, :project, :params attr_reader :current_user, :owner, :project, :params
attr_accessor :pull_issue, :pull_request
def initialize(current_user, owner, project, params) def initialize(current_user, owner, project, params)
@owner = owner @owner = owner
@ -10,6 +11,7 @@ class PullRequests::CreateService < ApplicationService
end end
def call def call
ActiveRecord::Base.transaction do
validate! validate!
save_pull_issue! save_pull_issue!
save_pull_request! save_pull_request!
@ -17,6 +19,7 @@ class PullRequests::CreateService < ApplicationService
save_tiding! save_tiding!
save_project_trend! save_project_trend!
save_custom_journal_detail! save_custom_journal_detail!
end
[pull_request, gitea_pull_request] [pull_request, gitea_pull_request]
end end
@ -43,7 +46,7 @@ class PullRequests::CreateService < ApplicationService
end end
def save_pull_issue! def save_pull_issue!
pull_issue.save pull_issue.save!
end end
def pull_request def pull_request
@ -51,7 +54,7 @@ class PullRequests::CreateService < ApplicationService
end end
def save_pull_request! def save_pull_request!
pull_request.save pull_request.save!
end end
def save_issue_tags_relates! def save_issue_tags_relates!
@ -76,7 +79,7 @@ class PullRequests::CreateService < ApplicationService
end end
def save_project_trend! def save_project_trend!
project_trend.save project_trend.save!
end end
def project_trend def project_trend
@ -142,5 +145,7 @@ class PullRequests::CreateService < ApplicationService
raise "title参数不能为空" if @params[:title].blank? raise "title参数不能为空" if @params[:title].blank?
raise "head参数不能为空" if @params[:head].blank? raise "head参数不能为空" if @params[:head].blank?
raise "base参数不能为空" if @params[:base].blank? raise "base参数不能为空" if @params[:base].blank?
raise @pull_issue.errors.full_messages.join(", ") unless pull_issue.valid?
raise @pull_request.errors.full_messages.join(", ") unless pull_request.valid?
end end
end end