From 4b05838498b361717e020f5a11d22ab90eda6416 Mon Sep 17 00:00:00 2001 From: yystopf Date: Tue, 9 Aug 2022 09:48:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E8=AF=B7=E6=B1=82=E8=AF=84=E8=AE=BA=E6=96=B0=E5=A2=9Epath?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E7=AD=9B=E9=80=89=E4=BB=A5=E5=8F=8A=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E5=88=86=E9=A1=B5=E6=9C=80=E5=A4=9A=E8=BF=94=E5=9B=9E?= =?UTF-8?q?200=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/v1/projects/pulls/journals_controller.rb | 2 +- app/docs/slate/source/includes/_pulls.md | 1 + .../api/v1/projects/pulls/journals/list_service.rb | 4 +++- .../api/v1/projects/pulls/journals/index.json.jbuilder | 2 +- public/docs/api.html | 7 +++++++ 5 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/controllers/api/v1/projects/pulls/journals_controller.rb b/app/controllers/api/v1/projects/pulls/journals_controller.rb index d32474973..4f46a916f 100644 --- a/app/controllers/api/v1/projects/pulls/journals_controller.rb +++ b/app/controllers/api/v1/projects/pulls/journals_controller.rb @@ -2,7 +2,7 @@ class Api::V1::Projects::Pulls::JournalsController < Api::V1::Projects::Pulls::B def index @journals = Api::V1::Projects::Pulls::Journals::ListService.call(@project, @pull_request, params, current_user) - @journals = kaminari_paginate(@journals) + @journals = @journals.limit(200) end def create diff --git a/app/docs/slate/source/includes/_pulls.md b/app/docs/slate/source/includes/_pulls.md index ecc9c285a..85b77e181 100644 --- a/app/docs/slate/source/includes/_pulls.md +++ b/app/docs/slate/source/includes/_pulls.md @@ -1248,6 +1248,7 @@ await octokit.request('GET /api/v1/yystopf/ceshi_commit/pulls/3/journals.json') |need_respond |否| |bool |是否需要回应| |state |否| |string |状态, opened: 开启的, resolved: 已解决的, disabled: 无效的| |parent_id |否| |integer|父评论ID| +|path |否| |string |评论文件路径| |sort_by |否|created_on|string |排序字段 created_on: 创建时间, updated_on: 更新时间| |sort_direction |否|asc |string |排序类型 desc: 倒序, asc: 正序| diff --git a/app/services/api/v1/projects/pulls/journals/list_service.rb b/app/services/api/v1/projects/pulls/journals/list_service.rb index 30b650f07..010fb3651 100644 --- a/app/services/api/v1/projects/pulls/journals/list_service.rb +++ b/app/services/api/v1/projects/pulls/journals/list_service.rb @@ -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, :parent_id, :sort_by, :sort_direction, :user + attr_reader :project, :pull_request, :keyword, :review_id, :need_respond, :state, :parent_id, :path, :sort_by, :sort_direction, :user attr_accessor :queried_journals validates :sort_by, inclusion: {in: Journal.column_names, message: '请输入正确的SortBy'} @@ -19,6 +19,7 @@ class Api::V1::Projects::Pulls::Journals::ListService < ApplicationService @parent_id = params[:parent_id] @sort_by = params[:sort_by] || 'created_on' @sort_direction = params[:sort_direction] || 'asc' + @path = params[:path] @user = user end @@ -41,6 +42,7 @@ class Api::V1::Projects::Pulls::Journals::ListService < ApplicationService 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? + journals = journals.where(path: path) if path.present? q = journals.ransack(notes_cont: keyword) scope = q.result.includes(:user, :resolveer, review: [:reviewer, pull_request: :issue]) diff --git a/app/views/api/v1/projects/pulls/journals/index.json.jbuilder b/app/views/api/v1/projects/pulls/journals/index.json.jbuilder index e71eb5f71..1cb9a4eb5 100644 --- a/app/views/api/v1/projects/pulls/journals/index.json.jbuilder +++ b/app/views/api/v1/projects/pulls/journals/index.json.jbuilder @@ -1,4 +1,4 @@ -json.total_count @journals.total_count +json.total_count @journals.count json.journals @journals.each do |journal| json.partial! 'api/v1/projects/pulls/journals/simple_detail', journal: journal end \ No newline at end of file diff --git a/public/docs/api.html b/public/docs/api.html index c2e6e4270..9689aabe0 100644 --- a/public/docs/api.html +++ b/public/docs/api.html @@ -14769,6 +14769,13 @@ http://localhost:3000/api/v1/yystopf/ceshi/pulls/1/reviews.json 父评论ID +path +否 + +string +评论文件路径 + + sort_by 否 created_on