FIX merge pr's bug
This commit is contained in:
parent
04f98f1c10
commit
795e06f6c5
|
@ -181,6 +181,8 @@ class PullRequestsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def pr_merge
|
def pr_merge
|
||||||
|
return render_forbidden("你没有权限操作.") if @project.reporter?(current_user)
|
||||||
|
|
||||||
if params[:do].blank?
|
if params[:do].blank?
|
||||||
normal_status(-1, "请选择合并方式")
|
normal_status(-1, "请选择合并方式")
|
||||||
else
|
else
|
||||||
|
@ -191,7 +193,8 @@ class PullRequestsController < ApplicationController
|
||||||
MergeMessageField: params[:body],
|
MergeMessageField: params[:body],
|
||||||
MergeTitleField: params[:title]
|
MergeTitleField: params[:title]
|
||||||
}
|
}
|
||||||
merge_pr = Gitea::PullRequest::MergeService.new(current_user, @repository.try(:identifier), @pull_request.try(:gpid), requests_params).call
|
merge_pr = Gitea::PullRequest::MergeService.call(current_user.gitea_token, @repository.owner.login,
|
||||||
|
@repository.try(:identifier), @pull_request.try(:gpid), requests_params)
|
||||||
if @pull_request.update_attribute(:status, 1) && merge_pr[:status].to_i == 200
|
if @pull_request.update_attribute(:status, 1) && merge_pr[:status].to_i == 200
|
||||||
@pull_request&.project_trends&.update_all(action_type: "close")
|
@pull_request&.project_trends&.update_all(action_type: "close")
|
||||||
@issue&.custom_journal_detail("merge", "", "该合并请求已被合并", current_user&.id)
|
@issue&.custom_journal_detail("merge", "", "该合并请求已被合并", current_user&.id)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Merge a pull request
|
# Merge a pull request
|
||||||
class Gitea::PullRequest::MergeService < Gitea::ClientService
|
class Gitea::PullRequest::MergeService < Gitea::ClientService
|
||||||
attr_reader :user, :repo, :pull_request_id, :params
|
attr_reader :token, :owner, :repo, :pull_request_id, :params
|
||||||
|
|
||||||
# parameters:
|
# parameters:
|
||||||
# repo: name of the repo
|
# repo: name of the repo
|
||||||
|
@ -8,8 +8,10 @@ class Gitea::PullRequest::MergeService < Gitea::ClientService
|
||||||
# params:
|
# params:
|
||||||
# title: merge标题
|
# title: merge标题
|
||||||
# message: merge说明
|
# message: merge说明
|
||||||
def initialize(user, repo, pull_request_id, params={})
|
# eq: Gitea::PullRequest::MergeService.call(current_user.gitea_token, @repo.owner.lgoin, @repo.identifier, params)
|
||||||
@user = user
|
def initialize(token, owner, repo, pull_request_id, params={})
|
||||||
|
@token = token
|
||||||
|
@owner = owner
|
||||||
@repo = repo
|
@repo = repo
|
||||||
@params = params
|
@params = params
|
||||||
@pull_request_id = pull_request_id
|
@pull_request_id = pull_request_id
|
||||||
|
@ -21,11 +23,11 @@ class Gitea::PullRequest::MergeService < Gitea::ClientService
|
||||||
|
|
||||||
private
|
private
|
||||||
def url
|
def url
|
||||||
"/repos/#{user.login}/#{repo}/pulls/#{pull_request_id}/merge"
|
"/repos/#{owner}/#{repo}/pulls/#{pull_request_id}/merge"
|
||||||
end
|
end
|
||||||
|
|
||||||
def request_params
|
def request_params
|
||||||
Hash.new.merge(token: user.gitea_token, data: params)
|
Hash.new.merge(token: token, data: params)
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue