|
|
|
@ -18,8 +18,8 @@ class Users::QuestionBanksController < Users::BaseController
|
|
|
|
|
def load_question_banks_solve_count
|
|
|
|
|
question_bank_ids = @question_banks.map(&:id)
|
|
|
|
|
@solve_count_map =
|
|
|
|
|
case params[:category]
|
|
|
|
|
when 'common', 'group' then
|
|
|
|
|
case params[:object_type]
|
|
|
|
|
when 'normal', 'group' then
|
|
|
|
|
StudentWork.where(is_delete: false, work_status: [1, 2, 3]).joins(:homework_common)
|
|
|
|
|
.where(homework_commons: { homework_bank_id: question_bank_ids })
|
|
|
|
|
.group('homework_commons.homework_bank_id').count
|
|
|
|
@ -42,14 +42,14 @@ class Users::QuestionBanksController < Users::BaseController
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def query_params
|
|
|
|
|
params.permit(:type, :category, :course_list_id, :sort_by, :sort_direction)
|
|
|
|
|
params.permit(:type, :object_type, :course_list_id, :sort_by, :sort_direction)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def check_query_params!
|
|
|
|
|
params[:type] = 'personal' if params[:type].blank? || !%w(personal publicly).include?(params[:type])
|
|
|
|
|
|
|
|
|
|
if params[:category].blank? || !%w(common group exercise poll gtask gtopic).include?(params[:category])
|
|
|
|
|
params[:category] = 'common'
|
|
|
|
|
if params[:object_type].blank? || !%w(normal group exercise poll gtask gtopic).include?(params[:object_type])
|
|
|
|
|
params[:object_type] = 'normal'
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if params[:sort_by].blank? || !%w(updated_at name contributor).include?(params[:sort_by])
|
|
|
|
|