FIX [api] get pull bug

This commit is contained in:
Jasder
2021-01-12 17:34:07 +08:00
parent f084b72e3a
commit fa01194d3c
2 changed files with 19 additions and 2 deletions

View File

@@ -6,10 +6,26 @@ class CompareController < ApplicationController
end
def show
compare
end
private
def compare
base, head = compare_params
# TODO: 处理fork的项目向源项目发送PR的base、head参数问题
@compare_result ||=
head.include?(":") ? gitea_compare(base, head) : gitea_compare(head, base)
end
def compare_params
base = Addressable::URI.unescape(params[:base])
head = params[:head].include?('json') ? params[:head]&.split('.json')[0] : params[:head]
@compare_result = Gitea::Repository::Commits::CompareService.call(@owner.login, @project.identifier, head, base)
# render json: @compare_result
[base, head]
end
def gitea_compare(base, head)
Gitea::Repository::Commits::CompareService.call(@owner.login, @project.identifier, base, head)
end
end