user center: order feature

dev_auth
p31729568 5 years ago
parent 3188bd40df
commit 2fe2bf935b

@ -1,7 +1,7 @@
class Users::CourseService
include CustomSortable
sort_columns :updated_at, default_by: :updated_at, default_direction: :desc
sort_columns :created_at, :updated_at, default_by: :updated_at, default_direction: :desc
attr_reader :user, :params
@ -15,7 +15,7 @@ class Users::CourseService
courses = status_filter(courses)
custom_sort(courses, :updated_at, params[:sort_direction])
custom_sort(courses, params[:sort_by], params[:sort_direction])
end
private

@ -1,7 +1,7 @@
class Users::ProjectService
include CustomSortable
sort_columns :updated_on, default_by: :updated_on, default_direction: :desc
sort_columns :created_on, :updated_on, default_by: :updated_on, default_direction: :desc
attr_reader :user, :params
@ -21,7 +21,7 @@ class Users::ProjectService
projects = category_filter(projects)
projects = status_filter(projects)
custom_sort(projects, :updated_on, params[:sort_direction])
custom_sort(projects, params[:sort_by], params[:sort_direction])
end
private

@ -77,6 +77,10 @@ class Users::ShixunService
sort_by = sort_by&.downcase
sort_direction = sort_direction&.downcase
if sort_by.blank? || !%w(updated_at created_at).include?(sort_by)
sort_by = 'updated_at'
end
if sort_direction.blank? || !%w(desc asc).include?(sort_direction)
sort_direction = 'desc'
end
@ -87,11 +91,11 @@ class Users::ShixunService
case params[:category]
when 'study' then
relations.order("myshixuns.updated_at #{sort_direction}")
relations.order("myshixuns.#{sort_by} #{sort_direction}")
when 'manage' then
relations.order("shixuns.updated_at #{sort_direction}")
relations.order("shixuns.#{sort_by} #{sort_direction}")
else
relations.order("shixuns.created_at #{sort_direction}")
relations.order("shixuns.#{sort_by} #{sort_direction}")
end
end
end

@ -1,7 +1,7 @@
class Users::SubjectService
include CustomSortable
sort_columns :updated_at, default_by: :updated_at, default_direction: :desc
sort_columns :created_at, :updated_at, default_by: :updated_at, default_direction: :desc
attr_reader :user, :params
@ -14,7 +14,7 @@ class Users::SubjectService
subjects = category_scope_subjects
subjects = user_policy_filter(subjects)
custom_sort(subjects.distinct, :updated_at, params[:sort_direction])
custom_sort(subjects.distinct, params[:sort_by], params[:sort_direction])
end
private

Loading…
Cancel
Save