forked from Trustie/forgeplus
更改:部分细节问题
This commit is contained in:
parent
a07da79e89
commit
c781ca0da1
|
@ -60,7 +60,7 @@ class Api::V1::Issues::MilestonesController < Api::V1::BaseController
|
|||
end
|
||||
|
||||
def query_params
|
||||
params.permit(:category, :author_id, :assigner_id, :sort_by, :sort_direction, :issue_tag_ids => [])
|
||||
params.permit(:category, :author_id, :assigner_id, :sort_by, :sort_direction, :issue_tag_ids)
|
||||
end
|
||||
|
||||
def load_milestone
|
||||
|
|
|
@ -91,7 +91,7 @@ class Api::V1::IssuesController < Api::V1::BaseController
|
|||
:milestone_id, :assigner_id,
|
||||
:status_id,
|
||||
:sort_by, :sort_direction,
|
||||
:issue_tag_ids => [])
|
||||
:issue_tag_ids)
|
||||
end
|
||||
|
||||
def issue_params
|
||||
|
|
|
@ -34,7 +34,7 @@ class IssueTag < ApplicationRecord
|
|||
["支持", "表示特定功能或特定需求", "#019549"],
|
||||
["任务", "表示需要分配的任务", "#01a30d"],
|
||||
["协助", "表示需要社区用户协助", "#2a0dc1"],
|
||||
["搁置", "表示此问题不会继续处理", "#892794"],
|
||||
["搁置", "表示此问题暂时不会继续处理", "#892794"],
|
||||
["文档", "表示文档材料补充", "#9ed600"],
|
||||
["测试", "表示需要测试的需求", "#2897b9"],
|
||||
["重复", "表示已存在类似的疑修", "#bb5332"]
|
||||
|
|
|
@ -17,7 +17,7 @@ class Api::V1::Issues::ListService < ApplicationService
|
|||
@participant_category = params[:participant_category] || 'all'
|
||||
@keyword = params[:keyword]
|
||||
@author_id = params[:author_id]
|
||||
@issue_tag_ids = params[:issue_tag_ids]
|
||||
@issue_tag_ids = params[:issue_tag_ids].split(",")
|
||||
@milestone_id = params[:milestone_id]
|
||||
@assigner_id = params[:assigner_id]
|
||||
@status_id = params[:status_id]
|
||||
|
@ -52,17 +52,6 @@ class Api::V1::Issues::ListService < ApplicationService
|
|||
issues = issues.joins(:participants, :issue_participants).where(issue_participants: {participant_type: 'atme'},users: {id: current_user&.id})
|
||||
end
|
||||
|
||||
@total_issues_count = issues.size
|
||||
@closed_issues_count = issues.closed.size
|
||||
@opened_issues_count = issues.opened.size
|
||||
|
||||
case category
|
||||
when 'closed'
|
||||
issues = issues.closed
|
||||
when 'opened'
|
||||
issues = issues.opened
|
||||
end
|
||||
|
||||
# author_id
|
||||
issues = issues.where(author_id: author_id) if author_id.present?
|
||||
|
||||
|
@ -79,9 +68,20 @@ class Api::V1::Issues::ListService < ApplicationService
|
|||
issues = issues.where(status_id: status_id) if status_id.present?
|
||||
|
||||
# keyword
|
||||
q = issues.ransack(subject_or_description_cont: keyword)
|
||||
issues = issues.ransack(subject_or_description_cont: keyword).result
|
||||
|
||||
scope = q.result.includes(:priority, :issue_status, :user, :assigners, :version, :issue_tags, :comment_journals)
|
||||
@total_issues_count = issues.size
|
||||
@closed_issues_count = issues.closed.size
|
||||
@opened_issues_count = issues.opened.size
|
||||
|
||||
case category
|
||||
when 'closed'
|
||||
issues = issues.closed
|
||||
when 'opened'
|
||||
issues = issues.opened
|
||||
end
|
||||
|
||||
scope = issues.includes(:priority, :issue_status, :user, :assigners, :version, :issue_tags, :comment_journals)
|
||||
|
||||
scope = scope.reorder("#{sort_by} #{sort_direction}").distinct
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ class Api::V1::Issues::Milestones::DetailIssuesService < ApplicationService
|
|||
attr_accessor :queried_issues
|
||||
|
||||
validates :category, inclusion: {in: %w(all opened closed), message: "请输入正确的Category"}
|
||||
validates :sort_by, inclusion: {in: Issue.column_names, message: '请输入正确的SortBy'}, allow_blank: true
|
||||
validates :sort_by, inclusion: {in: ['issues.created_on', 'issues.updated_on', 'issue_priorities.position'], message: '请输入正确的SortBy'}, allow_blank: true
|
||||
validates :sort_direction, inclusion: {in: %w(asc desc), message: '请输入正确的SortDirection'}, allow_blank: true
|
||||
validates :current_user, presence: true
|
||||
|
||||
|
@ -15,7 +15,7 @@ class Api::V1::Issues::Milestones::DetailIssuesService < ApplicationService
|
|||
@category = params[:category] || 'all'
|
||||
@author_id = params[:author_id]
|
||||
@assigner_id = params[:assigner_id]
|
||||
@issue_tag_ids = params[:issue_tag_ids]
|
||||
@issue_tag_ids = params[:issue_tag_ids].present? ? params[:issue_tag_ids].split(",") : []
|
||||
@sort_by = params[:sort_by].present? ? params[:sort_by] : 'updated_on'
|
||||
@sort_direction = (params[:sort_direction].present? ? params[:sort_direction] : 'desc').downcase
|
||||
@current_user = current_user
|
||||
|
@ -47,11 +47,13 @@ class Api::V1::Issues::Milestones::DetailIssuesService < ApplicationService
|
|||
issues = issues.where(author_id: author_id) if author_id.present?
|
||||
|
||||
# assigner_id
|
||||
issues = issues.joins(:assigners).where(users: {id: assigner_id}).or(issues.where(assigned_to_id: assigner_id)) if assigner_id.present?
|
||||
issues = issues.joins(:assigners).where(users: {id: assigner_id}).or(issues.joins(:assigners).where(assigned_to_id: assigner_id)) if assigner_id.present?
|
||||
|
||||
scope = issues.includes(:priority, :issue_status, :user, :assigners, :version, :issue_tags, :comment_journals)
|
||||
issues = issues.joins(:issue_tags).where(issue_tags: {id: issue_tag_ids}) if issue_tag_ids.present?
|
||||
|
||||
scope = scope.reorder("issues.#{sort_by} #{sort_direction}").distinct
|
||||
scope = issues.includes(:priority, :issue_status, :user, :assigners, :version, :issue_tags, :comment_journals).references(:assigners)
|
||||
|
||||
scope = scope.reorder("#{sort_by} #{sort_direction}").distinct
|
||||
|
||||
@queried_issues = scope
|
||||
end
|
||||
|
|
|
@ -10,6 +10,8 @@ json.user do
|
|||
end
|
||||
end
|
||||
if journal.is_journal_detail?
|
||||
detail = journal.journal_details.take
|
||||
json.operate_category detail.property == "attr" ? detail.prop_key : detail.property
|
||||
json.operate_content journal.is_journal_detail? ? journal.operate_content : nil
|
||||
else
|
||||
json.notes journal.notes
|
||||
|
|
Loading…
Reference in New Issue