forked from Gitlink/forgeplus
新增: 评论相关api根据需求重写
This commit is contained in:
parent
a35db9fe80
commit
d6b5dc326a
|
@ -1,2 +0,0 @@
|
|||
class Api::V1::Projects::Pulls::CommentsController < Api::V1::Projects::Pulls::BaseController
|
||||
end
|
|
@ -0,0 +1,39 @@
|
|||
class Api::V1::Projects::Pulls::JournalsController < Api::V1::Projects::Pulls::BaseController
|
||||
|
||||
def index
|
||||
@journals = Api::V1::Projects::Pulls::Journals::ListService.call(@project, @pull_request, params, current_user)
|
||||
@journals = kaminari_paginate(@journals)
|
||||
end
|
||||
|
||||
def create
|
||||
@journal = Api::V1::Projects::Pulls::Journals::CreateService.call(@project, @pull_request, create_params, current_user)
|
||||
end
|
||||
|
||||
before_action :find_journal, only: [:update, :destroy]
|
||||
|
||||
def update
|
||||
@journal = Api::V1::Projects::Pulls::Journals::UpdateService.call(@project, @pull_request, @journal, update_params, current_user)
|
||||
end
|
||||
|
||||
def destroy
|
||||
if @journal.destroy
|
||||
render_ok
|
||||
else
|
||||
render_error("删除评论失败!")
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def create_params
|
||||
params.permit(:parent_id, :line_code, :note, :commit_id, :path, :type, :review_id, :diff => {})
|
||||
end
|
||||
|
||||
def update_params
|
||||
params.permit(:note, :commit_id, :state)
|
||||
end
|
||||
|
||||
def find_journal
|
||||
@journal = Journal.find_by_id(params[:id])
|
||||
end
|
||||
|
||||
end
|
|
@ -8,7 +8,7 @@ class Api::V1::Projects::Pulls::ReviewsController < Api::V1::Projects::Pulls::Ba
|
|||
before_action :require_reviewer, only: [:create]
|
||||
|
||||
def create
|
||||
@journal, @review = Api::V1::Projects::Pulls::Reviews::CreateService.call(@project, @pull_request, review_params, current_user)
|
||||
@review = Api::V1::Projects::Pulls::Reviews::CreateService.call(@project, @pull_request, review_params, current_user)
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -5,7 +5,7 @@ class ReviewsController < ApplicationController
|
|||
|
||||
def create
|
||||
return render_forbidden('您不是审查人员,无法进行审查!') if current_user&.id != @pull_request.issue.assigned_to_id
|
||||
@journal, @review = Api::V1::Projects::Pulls::Reviews::CreateService.call(@project, @pull_request, review_params, current_user)
|
||||
@review = Api::V1::Projects::Pulls::Reviews::CreateService.call(@project, @pull_request, review_params, current_user)
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -13,6 +13,15 @@
|
|||
# comments_count :integer default("0")
|
||||
# reply_id :integer
|
||||
# review_id :integer
|
||||
# commit_id :string(255)
|
||||
# diff :text(4294967295)
|
||||
# line_code :string(255)
|
||||
# path :string(255)
|
||||
# state :integer default("0")
|
||||
# resolve_at :datetime
|
||||
# resolveer_id :integer
|
||||
# need_respond :boolean default("0")
|
||||
# updated_on :datetime
|
||||
#
|
||||
# Indexes
|
||||
#
|
||||
|
@ -24,9 +33,12 @@
|
|||
#
|
||||
|
||||
class Journal < ApplicationRecord
|
||||
serialize :diff, JSON
|
||||
belongs_to :user
|
||||
belongs_to :issue, foreign_key: :journalized_id, :touch => true, optional: true
|
||||
belongs_to :journalized, polymorphic: true
|
||||
belongs_to :review, optional: true
|
||||
belongs_to :resolveer, class_name: 'User', foreign_key: :resolveer_id, optional: true
|
||||
has_many :journal_details, :dependent => :delete_all
|
||||
has_many :attachments, as: :container, dependent: :destroy
|
||||
|
||||
|
@ -34,6 +46,7 @@ class Journal < ApplicationRecord
|
|||
scope :parent_journals, ->{where(parent_id: nil)}
|
||||
scope :children_journals, lambda{|journal_id| where(parent_id: journal_id)}
|
||||
|
||||
enum state: {opened: 0, resolved: 1, disabled: 2}
|
||||
|
||||
def is_journal_detail?
|
||||
self.notes.blank? && self.journal_details.present?
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
class Api::V1::Projects::Pulls::Journals::CreateService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :project, :pull_request, :issue, :parent_id, :line_code, :note, :commit_id, :path, :type, :diff, :review_id, :user
|
||||
attr_accessor :journal
|
||||
|
||||
validates :type, inclusion: {in: %w(comment problem), message: '请输入正确的Type'}
|
||||
|
||||
def initialize(project, pull_request, params, user)
|
||||
@project = project
|
||||
@pull_request = pull_request
|
||||
@issue = pull_request&.issue
|
||||
@parent_id = params[:parent_id]
|
||||
@line_code = params[:line_code]
|
||||
@note = params[:note]
|
||||
@commit_id = params[:commit_id]
|
||||
@path = params[:path]
|
||||
@type = params[:type]
|
||||
@diff = params[:diff]
|
||||
@review_id = params[:review_id]
|
||||
@user = user
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(", ") unless valid?
|
||||
check_review_is_exists
|
||||
if type == 'problem'
|
||||
create_problem_journal
|
||||
else
|
||||
create_comment_journal
|
||||
end
|
||||
|
||||
journal
|
||||
end
|
||||
|
||||
private
|
||||
def create_comment_journal
|
||||
@journal = pull_request.journals.create!(user_id: user&.id, notes: note, parent_id: parent_id, review_id: review_id, commit_id: commit_id, diff: diff, line_code: line_code, path: path)
|
||||
end
|
||||
|
||||
def check_review_is_exists
|
||||
raise Error, '合并请求审查不存在!' unless @pull_request.reviews.exists?(review_id)
|
||||
end
|
||||
|
||||
def create_problem_journal
|
||||
@journal = pull_request.journals.create!(user_id: user&.id, notes: note, parent_id: parent_id, review_id: review_id, commit_id: commit_id, diff: diff, line_code: line_code, path: path, need_respond: true)
|
||||
end
|
||||
end
|
|
@ -0,0 +1,45 @@
|
|||
class Api::V1::Projects::Pulls::Journals::ListService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :project, :pull_request, :keyword, :review_id, :need_respond, :state, :sort_by, :sort_direction, :user
|
||||
attr_accessor :queried_journals
|
||||
|
||||
validates :sort_by, inclusion: {in: Journal.column_names, message: '请输入正确的SortBy'}
|
||||
validates :sort_direction, inclusion: {in: %w(asc desc), message: '请输入正确的SortDirection'}
|
||||
validates :need_respond, inclusion: {in: [true, false], message: '请输入正确的NeedRespond'}, allow_nil: true
|
||||
validates :state, inclusion: {in: %w(opened resolved disabled)}, allow_nil: true
|
||||
|
||||
def initialize(project, pull_request, params, user)
|
||||
@project = project
|
||||
@pull_request = pull_request
|
||||
@keyword = params[:keyword]
|
||||
@review_id = params[:review_id]
|
||||
@need_respond = ActiveModel::Type::Boolean.new.cast(params[:need_respond])
|
||||
@state = params[:state]
|
||||
@sort_by = params[:sort_by] || 'created_on'
|
||||
@sort_direction = params[:sort_direction] || 'asc'
|
||||
@user = user
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(",") unless valid?
|
||||
journal_query_data
|
||||
|
||||
queried_journals
|
||||
end
|
||||
|
||||
private
|
||||
def journal_query_data
|
||||
journals = @pull_request.journals.parent_journals
|
||||
|
||||
journals = journals.where(review_id: review_id) if review_id.present?
|
||||
journals = journals.where(need_respond: need_respond) if need_respond.present?
|
||||
journals = journals.where(state: state) if state.present?
|
||||
|
||||
q = journals.ransack(notes_cont: keyword)
|
||||
scope = q.result.includes(:review)
|
||||
scope = scope.order("journals.#{sort_by} #{sort_direction}")
|
||||
|
||||
@queried_journals = scope
|
||||
end
|
||||
end
|
|
@ -0,0 +1,38 @@
|
|||
class Api::V1::Projects::Pulls::Journals::UpdateService < ApplicationService
|
||||
include ActiveModel::Model
|
||||
|
||||
attr_reader :project, :pull_request, :journal, :note, :commit_id, :state, :user
|
||||
attr_accessor :updated_journal
|
||||
|
||||
validates :state, inclusion: {in: %w(opened resolved disabled)}
|
||||
|
||||
def initialize(project, pull_request, journal, params, user)
|
||||
@project = project
|
||||
@pull_request = pull_request
|
||||
@journal = journal
|
||||
@note = params[:note]
|
||||
@commit_id = params[:commit_id]
|
||||
@state = params[:state]
|
||||
@user = user
|
||||
end
|
||||
|
||||
def call
|
||||
raise Error, errors.full_messages.join(", ") unless valid?
|
||||
|
||||
update_journal
|
||||
|
||||
updated_journal
|
||||
end
|
||||
|
||||
private
|
||||
def update_journal
|
||||
journal.attributes = {notes: note, commit_id: commit_id, state: state}
|
||||
if state == 'resolved'
|
||||
journal.resolve_at = Time.now
|
||||
journal.resolveer_id = user.id
|
||||
end
|
||||
return Error, '保存评论失败!' unless journal.save
|
||||
|
||||
@updated_journal = journal.reload
|
||||
end
|
||||
end
|
|
@ -20,10 +20,10 @@ class Api::V1::Projects::Pulls::Reviews::CreateService < ApplicationService
|
|||
raise Error, errors.full_messages.join(", ") unless valid?
|
||||
ActiveRecord::Base.transaction do
|
||||
create_review
|
||||
create_journal
|
||||
# create_journal
|
||||
end
|
||||
|
||||
return @journal, @review
|
||||
@review
|
||||
# rescue
|
||||
# raise Error, '服务器错误,请联系系统管理员!'
|
||||
end
|
||||
|
@ -33,8 +33,5 @@ class Api::V1::Projects::Pulls::Reviews::CreateService < ApplicationService
|
|||
@review = pull_request.reviews.create!(status: status, content: content, commit_id: commit_id, reviewer_id: @current_user.id)
|
||||
end
|
||||
|
||||
def create_journal
|
||||
@journal = pull_request.journals.create!(notes: content, user_id: @current_user.id, review_id: @review.id)
|
||||
end
|
||||
|
||||
end
|
|
@ -13,7 +13,7 @@ class Api::V1::Users::Projects::ListService < ApplicationService
|
|||
def initialize(observe_user, params, current_user=nil)
|
||||
@observe_user = observe_user
|
||||
@category = params[:category] || 'all'
|
||||
@is_public = params[:is_public]
|
||||
@is_public = ActiveModel::Type::Boolean.new.cast(params[:is_public])
|
||||
@project_type = params[:project_type]
|
||||
@sort_by = params[:sort_by] || 'updated_on'
|
||||
@sort_direction = params[:sort_direction] || 'desc'
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
json.(journal, :id, :notes, :commit_id, :line_code, :path, :diff, :need_respond, :state)
|
||||
json.user do
|
||||
json.partial! 'api/v1/users/simple_user', user: journal.user
|
||||
end
|
||||
json.review do
|
||||
if journal.review.present?
|
||||
json.partial! 'api/v1/projects/pulls/reviews/simple_detail', review: journal.review
|
||||
else
|
||||
json.nil!
|
||||
end
|
||||
end
|
||||
json.resolveer do
|
||||
if journal.resolveer.present?
|
||||
json.partial! 'api/v1/users/simple_user', user: journal.resolveer
|
||||
else
|
||||
json.nil!
|
||||
end
|
||||
end
|
||||
json.resolve_at format_time(journal.resolve_at)
|
||||
json.created_at format_time(journal.created_on)
|
||||
json.updated_at format_time(journal.updated_on)
|
|
@ -0,0 +1 @@
|
|||
json.partial! 'api/v1/projects/pulls/journals/simple_detail', journal: @journal
|
|
@ -0,0 +1,4 @@
|
|||
json.total_count @journals.total_count
|
||||
json.journals @journals.each do |journal|
|
||||
json.partial! 'api/v1/projects/pulls/journals/simple_detail', journal: journal
|
||||
end
|
|
@ -0,0 +1 @@
|
|||
json.partial! 'api/v1/projects/pulls/journals/simple_detail', journal: @journal
|
|
@ -0,0 +1,8 @@
|
|||
json.reviewer do
|
||||
json.partial! "api/v1/users/simple_user", user: review.reviewer
|
||||
end
|
||||
json.pull_request do
|
||||
json.partial! "api/v1/projects/pulls/simple_detail", pull: review.pull_request
|
||||
end
|
||||
json.(review, :id, :commit_id, :content, :status)
|
||||
json.created_at format_time(review.created_at)
|
|
@ -25,6 +25,7 @@ defaults format: :json do
|
|||
get :diff
|
||||
end
|
||||
end
|
||||
resources :journals, except: [:show, :edit]
|
||||
resources :reviews, only: [:index, :create]
|
||||
end
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
class AddLineCodeToJournals < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
add_column :journals, :commit_id, :string
|
||||
add_column :journals, :diff, :text, :limit => 4294967295
|
||||
add_column :journals, :line_code, :string
|
||||
add_column :journals, :path, :string
|
||||
add_column :journals, :state, :integer, default: 0
|
||||
add_column :journals, :resolve_at, :datetime
|
||||
add_column :journals, :resolveer_id, :integer, index: true
|
||||
add_column :journals, :need_respond, :bool, default: false
|
||||
add_column :journals, :updated_on, :datetime, index: true
|
||||
end
|
||||
end
|
|
@ -609,6 +609,9 @@
|
|||
<li>
|
||||
<a href="#6a019ede04" class="toc-h2 toc-link" data-title="获取合并请求列表">获取合并请求列表</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#035779233c" class="toc-h2 toc-link" data-title="创建一个合并请求">创建一个合并请求</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#12fc53a2d2" class="toc-h2 toc-link" data-title="获取合并请求版本列表">获取合并请求版本列表</a>
|
||||
</li>
|
||||
|
@ -12229,6 +12232,11 @@ http://localhost:3000/api/v1/yystopf/ceshi/webhooks/3/tests.json
|
|||
<td>审查创建人</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>reviewers</td>
|
||||
<td>array</td>
|
||||
<td>指定审查用户标识数组</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>conflict_files</td>
|
||||
<td>array</td>
|
||||
<td>有冲突的文件</td>
|
||||
|
@ -12291,6 +12299,9 @@ http://localhost:3000/api/v1/yystopf/ceshi/webhooks/3/tests.json
|
|||
</span><span class="nl">"image_url"</span><span class="p">:</span><span class="w"> </span><span class="s2">"system/lets/letter_avatars/2/H/188_239_142/120.png"</span><span class="w">
|
||||
</span><span class="p">}</span><span class="w">
|
||||
</span><span class="p">},</span><span class="w">
|
||||
</span><span class="nl">"reviewers"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||||
</span><span class="s2">"yystopf"</span><span class="w">
|
||||
</span><span class="p">],</span><span class="w">
|
||||
</span><span class="nl">"conflict_files"</span><span class="p">:</span><span class="w"> </span><span class="p">[]</span><span class="w">
|
||||
</span><span class="p">}</span><span class="w">
|
||||
</span></code></pre></div><h2 id='dd8282460a'>获取合并请求文件列表</h2>
|
||||
|
@ -13271,7 +13282,184 @@ http://localhost:3000/api/Jason/test-txt/compare/master...Jason/test-txt:develop
|
|||
</span><span class="p">}</span><span class="w">
|
||||
</span><span class="p">]</span><span class="w">
|
||||
</span><span class="p">}</span><span class="w">
|
||||
</span></code></pre></div><h2 id='12fc53a2d2'>获取合并请求版本列表</h2>
|
||||
</span></code></pre></div><h2 id='035779233c'>创建一个合并请求</h2>
|
||||
<p>为仓库创建一个合并请求</p>
|
||||
|
||||
<blockquote>
|
||||
<p>示例:</p>
|
||||
</blockquote>
|
||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> POST <span class="se">\</span>
|
||||
http://localhost:3000/api/yystopf/ceshi/pulls.json
|
||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">POST /api/yystopf/ceshi/pulls.json</span><span class="dl">'</span><span class="p">)</span>
|
||||
</code></pre></div><h3 id='http-6'>HTTP 请求</h3>
|
||||
<p><code>POST /api/:owner/:repo/pulls.json</code></p>
|
||||
<h3 id='2eb6f47757-6'>请求参数:</h3>
|
||||
<table><thead>
|
||||
<tr>
|
||||
<th>参数</th>
|
||||
<th>必选</th>
|
||||
<th>默认</th>
|
||||
<th>类型</th>
|
||||
<th>字段说明</th>
|
||||
</tr>
|
||||
</thead><tbody>
|
||||
<tr>
|
||||
<td>owner</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>用户登录名</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>repo</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>项目标识identifier</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>title</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>合并请求标题</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>body</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>合并请求内容</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>base</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>目标分支</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>head</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>string</td>
|
||||
<td>源分支</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>is_original</td>
|
||||
<td>是</td>
|
||||
<td></td>
|
||||
<td>bool</td>
|
||||
<td>是否为fork仓库发来的合并请求</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>fork_project_id</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>integer</td>
|
||||
<td>fork仓库ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>reviewer_ids</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>array</td>
|
||||
<td>审查人员id数组</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>assigned_to_id</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>integer</td>
|
||||
<td>指派人员ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>fixed_version_id</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>integer</td>
|
||||
<td>里程碑ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>issue_tag_ids</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>array</td>
|
||||
<td>标记ID数组</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>priority_id</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>integer</td>
|
||||
<td>优先级ID</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>receivers_login</td>
|
||||
<td>否</td>
|
||||
<td></td>
|
||||
<td>array</td>
|
||||
<td>@人员的login</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
|
||||
<blockquote>
|
||||
<p>请求的JSON示例:</p>
|
||||
</blockquote>
|
||||
<div class="highlight"><pre class="highlight json tab-json"><code><span class="p">{</span><span class="w">
|
||||
</span><span class="nl">"title"</span><span class="p">:</span><span class="w"> </span><span class="s2">"324"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"assigned_to_id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"fixed_version_id"</span><span class="p">:</span><span class="w"> </span><span class="s2">""</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"issue_tag_ids"</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span><span class="w">
|
||||
</span><span class="nl">"priority_id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"2"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"body"</span><span class="p">:</span><span class="w"> </span><span class="s2">"312"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"head"</span><span class="p">:</span><span class="w"> </span><span class="s2">"new_branch_1"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"base"</span><span class="p">:</span><span class="w"> </span><span class="s2">"master"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"is_original"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"fork_project_id"</span><span class="p">:</span><span class="w"> </span><span class="s2">""</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"files_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"commits_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"reviewer_ids"</span><span class="p">:</span><span class="w"> </span><span class="p">[],</span><span class="w">
|
||||
</span><span class="nl">"receivers_login"</span><span class="p">:</span><span class="w"> </span><span class="p">[]</span><span class="w">
|
||||
</span><span class="p">}</span><span class="w">
|
||||
</span></code></pre></div>
|
||||
<blockquote>
|
||||
<p>返回的JSON示例:</p>
|
||||
</blockquote>
|
||||
<div class="highlight"><pre class="highlight json tab-json"><code><span class="p">{</span><span class="w">
|
||||
</span><span class="nl">"status"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"message"</span><span class="p">:</span><span class="w"> </span><span class="s2">"响应成功"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_id"</span><span class="p">:</span><span class="w"> </span><span class="mi">169</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_number"</span><span class="p">:</span><span class="w"> </span><span class="mi">6</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_status"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_head"</span><span class="p">:</span><span class="w"> </span><span class="s2">"new_branch_1"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_base"</span><span class="p">:</span><span class="w"> </span><span class="s2">"master"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pull_request_staus"</span><span class="p">:</span><span class="w"> </span><span class="s2">"open"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"is_original"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"fork_project_id"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"fork_project_identifier"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"fork_project_user"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"reviewers"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
|
||||
</span><span class="s2">"yystopf"</span><span class="w">
|
||||
</span><span class="p">],</span><span class="w">
|
||||
</span><span class="nl">"id"</span><span class="p">:</span><span class="w"> </span><span class="mi">266</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"324"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"pr_time"</span><span class="p">:</span><span class="w"> </span><span class="s2">"1分钟前"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"assign_user_name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"heh"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"assign_user_login"</span><span class="p">:</span><span class="w"> </span><span class="s2">"yystopf"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"author_name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"heh"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"author_login"</span><span class="p">:</span><span class="w"> </span><span class="s2">"yystopf"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"avatar_url"</span><span class="p">:</span><span class="w"> </span><span class="s2">"system/lets/letter_avatars/2/H/188_239_142/120.png"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"priority"</span><span class="p">:</span><span class="w"> </span><span class="s2">"正常"</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"version"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"journals_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
|
||||
</span><span class="nl">"issue_tags"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="w">
|
||||
</span><span class="p">}</span><span class="w">
|
||||
</span></code></pre></div>
|
||||
<aside class="success">
|
||||
Success Data.
|
||||
</aside>
|
||||
<h2 id='12fc53a2d2'>获取合并请求版本列表</h2>
|
||||
<p>获取合并请求版本列表</p>
|
||||
|
||||
<blockquote>
|
||||
|
@ -13279,9 +13467,9 @@ http://localhost:3000/api/Jason/test-txt/compare/master...Jason/test-txt:develop
|
|||
</blockquote>
|
||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> GET http://localhost:3000/api/v1/yystopf/ceshi_commit/pulls/3/versions.json
|
||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/v1/yystopf/ceshi_commit/pulls/3/versions.json</span><span class="dl">'</span><span class="p">)</span>
|
||||
</code></pre></div><h3 id='http-6'>HTTP 请求</h3>
|
||||
</code></pre></div><h3 id='http-7'>HTTP 请求</h3>
|
||||
<p><code>GET /api/v1/:owner/:repo/pulls/:index/versions.json</code></p>
|
||||
<h3 id='2eb6f47757-6'>请求参数:</h3>
|
||||
<h3 id='2eb6f47757-7'>请求参数:</h3>
|
||||
<table><thead>
|
||||
<tr>
|
||||
<th>参数</th>
|
||||
|
@ -13408,9 +13596,9 @@ http://localhost:3000/api/Jason/test-txt/compare/master...Jason/test-txt:develop
|
|||
<span class="nt">-d</span> <span class="s2">"filepath=ceshi_dir_1/new_file_1"</span> <span class="se">\</span>
|
||||
http://localhost:3000/api/v1/yystopf/ceshi_commit/pulls/3/versions/33/diff.json
|
||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/v1/yystopf/ceshi_commit/pulls/3/versions/33/diff.json</span><span class="dl">'</span><span class="p">)</span>
|
||||
</code></pre></div><h3 id='http-7'>HTTP 请求</h3>
|
||||
</code></pre></div><h3 id='http-8'>HTTP 请求</h3>
|
||||
<p><code>GET /api/v1/:owner/:repo/pulls/:index/versions/:version_id/diff.json</code></p>
|
||||
<h3 id='2eb6f47757-7'>请求参数:</h3>
|
||||
<h3 id='2eb6f47757-8'>请求参数:</h3>
|
||||
<table><thead>
|
||||
<tr>
|
||||
<th>参数</th>
|
||||
|
@ -13944,9 +14132,9 @@ http://localhost:3000/api/v1/yystopf/ceshi_commit/pulls/3/versions/33/diff.json
|
|||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> POST <span class="se">\</span>
|
||||
http://localhost:3000/api/v1/yystopf/ceshi/pulls/1/reviews.json
|
||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">POST /api/v1/yystopf/ceshi/pulls/1/reviews.json</span><span class="dl">'</span><span class="p">)</span>
|
||||
</code></pre></div><h3 id='http-8'>HTTP 请求</h3>
|
||||
</code></pre></div><h3 id='http-9'>HTTP 请求</h3>
|
||||
<p><code>POST /api/v1/:owner/:repo/pulls/:index/reviews.json</code></p>
|
||||
<h3 id='2eb6f47757-8'>请求参数:</h3>
|
||||
<h3 id='2eb6f47757-9'>请求参数:</h3>
|
||||
<table><thead>
|
||||
<tr>
|
||||
<th>参数</th>
|
||||
|
|
Loading…
Reference in New Issue