FIX 里程碑搜索功能

This commit is contained in:
jasder duan 2024-08-08 09:49:16 +08:00
parent 5f0bb3f325
commit 5175e27d7c
2 changed files with 9 additions and 9 deletions

View File

@ -13,9 +13,8 @@ class VersionsController < ApplicationController
@open_versions_size = versions.where(status: "open")&.size
@closed_versions_size = versions.where(status: "closed")&.size
if status.present?
versions = versions.where(status: status.to_s.strip)
end
versions = versions.where(status: status.to_s.strip) if status.present?
versions = versions.search(params[:keyword])
versions = versions.reorder("#{order_name} #{order_type}")
@ -32,7 +31,7 @@ class VersionsController < ApplicationController
# @close_issues_size = version_issues.where(status_id: 5).size
# @open_issues_size = version_issues.size - @close_issues_size
version_issues = version_issues.where(author_id: params[:author_id]) if params[:author_id].present? && params[:author_id].to_s != "all"
version_issues = version_issues.where(assigned_to_id: params[:assigned_to_id]) if params[:assigned_to_id].present? && params[:assigned_to_id].to_s != "all"
version_issues = version_issues.where(tracker_id: params[:tracker_id]) if params[:tracker_id].present? && params[:tracker_id].to_s != "all"
@ -47,11 +46,11 @@ class VersionsController < ApplicationController
has_filter_params = (params[:author_id].present? && params[:author_id].to_s != "all") ||
(params[:assigned_to_id].present? && params[:assigned_to_id].to_s != "all") ||
(params[:tracker_id].present? && params[:tracker_id].to_s != "all") ||
(params[:status_id].present? && params[:status_id].to_s != "all") ||
(params[:priority_id].present? && params[:priority_id].to_s != "all") ||
(params[:fixed_version_id].present? && params[:fixed_version_id].to_s != "all") ||
(params[:done_ratio].present? && params[:done_ratio].to_s != "all") ||
(params[:issue_type].present? && params[:issue_type].to_s != "all") ||
(params[:status_id].present? && params[:status_id].to_s != "all") ||
(params[:priority_id].present? && params[:priority_id].to_s != "all") ||
(params[:fixed_version_id].present? && params[:fixed_version_id].to_s != "all") ||
(params[:done_ratio].present? && params[:done_ratio].to_s != "all") ||
(params[:issue_type].present? && params[:issue_type].to_s != "all") ||
(params[:issue_tag_id].present? && params[:issue_tag_id].to_s != "all")
@version_close_issues_size = has_filter_params ? version_issues.closed.size : @version.issues.issue_issue.issue_includes.closed.size
@version_issues_size = has_filter_params ? version_issues.size : @version.issues.issue_issue.issue_includes.size

View File

@ -35,6 +35,7 @@ class Version < ApplicationRecord
scope :version_includes, ->{includes(:issues, :user)}
scope :closed, ->{where(status: 'closed')}
scope :opening, ->{where(status: 'open')}
scope :search, -> (keyword) { where("name like ? or description like ? ", "%#{keyword}%", "%#{keyword}%") unless keyword.blank? }
# def open_issues_count
# issues.select(:id,:status_id).where(status_id: [1,2,3,4,6]).size