新增:列表返回是否置顶字段
This commit is contained in:
parent
d577f1691a
commit
21eb842766
|
@ -11,10 +11,10 @@ class Users::OrganizationsController < Users::BaseController
|
||||||
|
|
||||||
@organizations = @organizations.ransack(login_cont: params[:search]).result if params[:search].present?
|
@organizations = @organizations.ransack(login_cont: params[:search]).result if params[:search].present?
|
||||||
|
|
||||||
home_top_ids = @organizations.joins(:home_top_settings).where(home_top_settings: {user_id: observed_user.id}).order("home_top_settings.created_at asc").pluck(:id)
|
@home_top_ids = @organizations.joins(:home_top_settings).where(home_top_settings: {user_id: observed_user.id}).order("home_top_settings.created_at asc").pluck(:id)
|
||||||
|
|
||||||
if home_top_ids.present?
|
if @home_top_ids.present?
|
||||||
@organizations = @organizations.joins(:organization_extension).order("FIELD(users.id, #{home_top_ids.join(",")}) desc, organization_extensions.#{sort_by} #{sort_direction}")
|
@organizations = @organizations.joins(:organization_extension).order("FIELD(users.id, #{@home_top_ids.join(",")}) desc, organization_extensions.#{sort_by} #{sort_direction}")
|
||||||
else
|
else
|
||||||
@organizations = @organizations.joins(:organization_extension).order("organization_extensions.#{sort_by} #{sort_direction}")
|
@organizations = @organizations.joins(:organization_extension).order("organization_extensions.#{sort_by} #{sort_direction}")
|
||||||
end
|
end
|
||||||
|
|
|
@ -72,13 +72,13 @@ class Projects::ListMyQuery < ApplicationQuery
|
||||||
sort = Project.column_names.include?(params[:sort_by]) ? params[:sort_by] : "updated_on"
|
sort = Project.column_names.include?(params[:sort_by]) ? params[:sort_by] : "updated_on"
|
||||||
sort_direction = %w(desc asc).include?(params[:sort_direction]) ? params[:sort_direction] : "desc"
|
sort_direction = %w(desc asc).include?(params[:sort_direction]) ? params[:sort_direction] : "desc"
|
||||||
|
|
||||||
home_top_ids = scope.joins(:home_top_settings).where(home_top_settings: {user_id: user.id}).order("home_top_settings.created_at asc").pluck(:id)
|
@home_top_ids = scope.joins(:home_top_settings).where(home_top_settings: {user_id: user.id}).order("home_top_settings.created_at asc").pluck(:id)
|
||||||
|
|
||||||
if params[:choosed].present? && params[:choosed].is_a?(Array)
|
if params[:choosed].present? && params[:choosed].is_a?(Array)
|
||||||
scope.distinct.order("FIELD(id, #{params[:choosed].reverse.join(",")}) desc")
|
scope.distinct.order("FIELD(id, #{params[:choosed].reverse.join(",")}) desc")
|
||||||
else
|
else
|
||||||
if home_top_ids.present?
|
if @home_top_ids.present?
|
||||||
scope.distinct.order("FIELD(id, #{home_top_ids.join(",")}) desc, projects.#{sort} #{sort_direction}")
|
scope.distinct.order("FIELD(id, #{@home_top_ids.join(",")}) desc, projects.#{sort} #{sort_direction}")
|
||||||
else
|
else
|
||||||
scope.distinct.order("projects.#{sort} #{sort_direction}")
|
scope.distinct.order("projects.#{sort} #{sort_direction}")
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
json.total_count @organizations.total_count
|
json.total_count @organizations.total_count
|
||||||
json.organizations @organizations do |organization|
|
json.organizations @organizations do |organization|
|
||||||
json.partial! "/organizations/organizations/detail", organization: organization
|
json.partial! "/organizations/organizations/detail", organization: organization
|
||||||
|
json.is_home_top @home_top_ids.include?(organization.id)
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
json.count @total_count
|
json.count @total_count
|
||||||
json.projects do
|
json.projects @projects do |project|
|
||||||
json.partial! '/projects/project_detail', collection: @projects, as: :project
|
json.partial! '/projects/project_detail', project: project
|
||||||
|
json.is_home_top @home_top_ids.include?(project.id)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue