Browse Source

新增:最新提交加入clone地址

pull/347/head
yystopf 2 years ago
parent
commit
2d264bf52b
3 changed files with 13 additions and 3 deletions
  1. +4
    -1
      app/controllers/api/v1/projects/commits_controller.rb
  2. +7
    -2
      app/services/api/v1/projects/commits/recent_service.rb
  3. +2
    -0
      app/views/api/v1/projects/commits/recent.json.jbuilder

+ 4
- 1
app/controllers/api/v1/projects/commits_controller.rb View File

@@ -11,6 +11,9 @@ class Api::V1::Projects::CommitsController < Api::V1::BaseController
end

def recent
@result_object = Api::V1::Projects::Commits::RecentService.call(@project, {keyword: params[:keyword], page: page, limit: limit}, current_user&.gitea_token)
hash = Api::V1::Projects::Commits::RecentService.call(@project, {keyword: params[:keyword], page: page, limit: limit}, current_user&.gitea_token)
@result_object = hash[:result]
@object_detail = hash[:detail]
puts @object_detail
end
end

+ 7
- 2
app/services/api/v1/projects/commits/recent_service.rb View File

@@ -1,7 +1,7 @@
class Api::V1::Projects::Commits::RecentService < ApplicationService
attr_reader :project, :page, :limit, :keyword, :owner, :repo, :token
attr_accessor :gitea_data
attr_accessor :gitea_data, :gitea_repo_detail

def initialize(project, params, token=nil)
@project = project
@@ -15,8 +15,9 @@ class Api::V1::Projects::Commits::RecentService < ApplicationService

def call
load_gitea_data
load_gitea_repo_detail

gitea_data
{result: gitea_data, detail:gitea_repo_detail}
end

private
@@ -36,4 +37,8 @@ class Api::V1::Projects::Commits::RecentService < ApplicationService
raise Error, "获取最近提交列表失败" unless @gitea_data.is_a?(Hash)
end

def load_gitea_repo_detail
@gitea_repo_detail = $gitea_client.get_repos_by_owner_repo(owner, repo, {query: {access_token: token}})
raise Error, "获取项目详情失败" unless @gitea_repo_detail.is_a?(Hash)
end
end

+ 2
- 0
app/views/api/v1/projects/commits/recent.json.jbuilder View File

@@ -1,4 +1,6 @@
json.total_count @result_object[:total_data].to_i
json.ssh_url @object_detail['ssh_url']
json.clone_url @object_detail['clone_url']
json.commits @result_object[:data].each do |commit|
json.sha commit['sha']
json.author do


Loading…
Cancel
Save