add operation for pull request create/merge/refuse
This commit is contained in:
parent
cbb666052c
commit
c5b24a3447
|
@ -54,7 +54,17 @@ class PullRequestsController < ApplicationController
|
||||||
@pull_request, @gitea_pull_request = PullRequests::CreateService.call(current_user, @owner, @project, params)
|
@pull_request, @gitea_pull_request = PullRequests::CreateService.call(current_user, @owner, @project, params)
|
||||||
if @gitea_pull_request[:status] == :success
|
if @gitea_pull_request[:status] == :success
|
||||||
@pull_request.bind_gitea_pull_request!(@gitea_pull_request[:body]["number"])
|
@pull_request.bind_gitea_pull_request!(@gitea_pull_request[:body]["number"])
|
||||||
|
|
||||||
|
# author: zxh
|
||||||
|
# 调用上链API
|
||||||
|
success_blockchain = push_activity_2_blockchain("pull_request_create", @pull_request)
|
||||||
|
if success_blockchain == false
|
||||||
|
render_error("create pull request error: cannot save to blockchain")
|
||||||
|
raise ActiveRecord::Rollback
|
||||||
|
else
|
||||||
render_ok
|
render_ok
|
||||||
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
render_error("create pull request error: #{@gitea_pull_request[:status]}")
|
render_error("create pull request error: #{@gitea_pull_request[:status]}")
|
||||||
raise ActiveRecord::Rollback
|
raise ActiveRecord::Rollback
|
||||||
|
@ -119,7 +129,17 @@ class PullRequestsController < ApplicationController
|
||||||
begin
|
begin
|
||||||
@pull_request.update(status: 2)
|
@pull_request.update(status: 2)
|
||||||
@pull_request.issue.update(status_id: 5)
|
@pull_request.issue.update(status_id: 5)
|
||||||
|
|
||||||
|
# author: zxh
|
||||||
|
# 调用上链API
|
||||||
|
success_blockchain = push_activity_2_blockchain("pull_request_refuse", @pull_request)
|
||||||
|
if success_blockchain == false
|
||||||
|
normal_status(-1, "拒绝失败")
|
||||||
|
raise ActiveRecord::Rollback
|
||||||
|
else
|
||||||
normal_status(1, "已拒绝")
|
normal_status(1, "已拒绝")
|
||||||
|
end
|
||||||
|
|
||||||
rescue => e
|
rescue => e
|
||||||
normal_status(-1, e.message)
|
normal_status(-1, e.message)
|
||||||
raise ActiveRecord::Rollback
|
raise ActiveRecord::Rollback
|
||||||
|
@ -152,10 +172,20 @@ class PullRequestsController < ApplicationController
|
||||||
}
|
}
|
||||||
merge_pr = Gitea::PullRequest::MergeService.call(current_user.gitea_token, @project.owner.login,
|
merge_pr = Gitea::PullRequest::MergeService.call(current_user.gitea_token, @project.owner.login,
|
||||||
@repository.try(:identifier), @pull_request.try(:gpid), requests_params)
|
@repository.try(:identifier), @pull_request.try(:gpid), requests_params)
|
||||||
if @pull_request.update_attribute(:status, 1) && merge_pr[:status].to_i == 200
|
if merge_pr.status.to_i == 200 && @pull_request.update_attribute(:status, 1)
|
||||||
@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)
|
||||||
|
|
||||||
|
# author: zxh
|
||||||
|
# 调用上链API
|
||||||
|
success_blockchain = push_activity_2_blockchain("pull_request_merge", @pull_request)
|
||||||
|
if success_blockchain == false
|
||||||
|
normal_status(-1, "合并失败")
|
||||||
|
raise ActiveRecord::Rollback
|
||||||
|
else
|
||||||
normal_status(1, "合并成功")
|
normal_status(1, "合并成功")
|
||||||
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
normal_status(-1, "合并失败")
|
normal_status(-1, "合并失败")
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue