mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-21 20:25:45 +08:00
新增: 评论及审查相关接口文档
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
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_reader :project, :pull_request, :keyword, :review_id, :need_respond, :state, :parent_id, :sort_by, :sort_direction, :user
|
||||
attr_accessor :queried_journals
|
||||
|
||||
validates :sort_by, inclusion: {in: Journal.column_names, message: '请输入正确的SortBy'}
|
||||
@@ -16,6 +16,7 @@ class Api::V1::Projects::Pulls::Journals::ListService < ApplicationService
|
||||
@review_id = params[:review_id]
|
||||
@need_respond = ActiveModel::Type::Boolean.new.cast(params[:need_respond])
|
||||
@state = params[:state]
|
||||
@parent_id = params[:parent_id]
|
||||
@sort_by = params[:sort_by] || 'created_on'
|
||||
@sort_direction = params[:sort_direction] || 'asc'
|
||||
@user = user
|
||||
@@ -30,14 +31,19 @@ class Api::V1::Projects::Pulls::Journals::ListService < ApplicationService
|
||||
|
||||
private
|
||||
def journal_query_data
|
||||
journals = @pull_request.journals.parent_journals
|
||||
journals = @pull_request.journals
|
||||
if parent_id.present?
|
||||
journals = journals.where(parent_id: parent_id)
|
||||
else
|
||||
journals = journals.parent_journals
|
||||
end
|
||||
|
||||
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 = q.result.includes(:user, :resolveer, review: [:reviewer, pull_request: :issue])
|
||||
scope = scope.order("journals.#{sort_by} #{sort_direction}")
|
||||
|
||||
@queried_journals = scope
|
||||
|
||||
Reference in New Issue
Block a user