Merge branch 'develop' of https://gitlink.org.cn/Trustie/forgeplus into develop
This commit is contained in:
commit
7817487ab7
|
@ -39,8 +39,9 @@ class ProjectsController < ApplicationController
|
||||||
category_id = params[:category_id]
|
category_id = params[:category_id]
|
||||||
@total_count =
|
@total_count =
|
||||||
if category_id.blank?
|
if category_id.blank?
|
||||||
ps = ProjectStatistic.first
|
# ps = ProjectStatistic.first
|
||||||
ps.common_projects_count + ps.mirror_projects_count unless ps.blank?
|
# ps.common_projects_count + ps.mirror_projects_count unless ps.blank?
|
||||||
|
@projects.total_count
|
||||||
else
|
else
|
||||||
cate = ProjectCategory.find_by(id: category_id)
|
cate = ProjectCategory.find_by(id: category_id)
|
||||||
cate&.projects_count || 0
|
cate&.projects_count || 0
|
||||||
|
|
|
@ -17,6 +17,7 @@ class Projects::ListQuery < ApplicationQuery
|
||||||
sort = params[:sort_by] || "updated_on"
|
sort = params[:sort_by] || "updated_on"
|
||||||
sort_direction = params[:sort_direction] || "desc"
|
sort_direction = params[:sort_direction] || "desc"
|
||||||
|
|
||||||
|
# collection = optimize_sorting(collection, sort) if params[:category_id].present?
|
||||||
custom_sort(collection, sort, sort_direction)
|
custom_sort(collection, sort, sort_direction)
|
||||||
|
|
||||||
# scope = scope.reorder("projects.#{sort} #{sort_direction}")
|
# scope = scope.reorder("projects.#{sort} #{sort_direction}")
|
||||||
|
@ -52,4 +53,19 @@ class Projects::ListQuery < ApplicationQuery
|
||||||
(params[:pinned].present? && params[:category_id].present?) ? items.pinned : items
|
(params[:pinned].present? && params[:category_id].present?) ? items.pinned : items
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# 优化排序
|
||||||
|
def optimize_sorting(relations, sort_by)
|
||||||
|
if sort_by == "updated_on"
|
||||||
|
relations.where("projects.updated_on>'2010-01-01'")
|
||||||
|
elsif sort_by == "created_on"
|
||||||
|
relations.where("projects.created_on>'2010-01-01'")
|
||||||
|
elsif sort_by == "forked_count"
|
||||||
|
relations.where("projects.forked_count>=0")
|
||||||
|
elsif sort_by == "praises_count"
|
||||||
|
relations.where("projects.praises_count>=0")
|
||||||
|
else
|
||||||
|
relations
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
json.total_count @projects.total_count
|
json.total_count @total_count
|
||||||
json.projects @projects do |project|
|
json.projects @projects do |project|
|
||||||
# json.partial! "/projects/project_detail", project: project
|
# json.partial! "/projects/project_detail", project: project
|
||||||
json.id project.id
|
json.id project.id
|
||||||
|
@ -22,7 +22,7 @@ json.projects @projects do |project|
|
||||||
project_educoder = project.project_educoder
|
project_educoder = project.project_educoder
|
||||||
json.name project_educoder&.owner
|
json.name project_educoder&.owner
|
||||||
json.login project_educoder&.repo_name.split('/')[0]
|
json.login project_educoder&.repo_name.split('/')[0]
|
||||||
json.image_url render_educoder_avatar_url(project.project_educoder)
|
# json.image_url render_educoder_avatar_url(project.project_educoder)
|
||||||
else
|
else
|
||||||
user = project.owner
|
user = project.owner
|
||||||
json.type user.type
|
json.type user.type
|
||||||
|
|
Loading…
Reference in New Issue