试卷添加order_type和rake任务冲突修改

dev_local_cqdsj
SylorHuang 5 years ago
commit 77746216bc

@ -1241,6 +1241,8 @@ class ExercisesController < ApplicationController
#筛选/分类,排序
order = params[:order]
order_type = params[:order_type] || "desc"
if @exercise_users_list.present? && @exercise_users_list.size > 0
@exercise_users_count = @exercise_users_list.size #当前显示的全部成员数量
teacher_reviews = @exercise_users_list.exercise_review
@ -1280,11 +1282,11 @@ class ExercisesController < ApplicationController
exercise_user_joins = @exercise_users_list.joins(user: :user_extension)
if order == "student_id"
@exercise_users_list = exercise_user_joins.order("user_extensions.student_id DESC")
@exercise_users_list = exercise_user_joins.order("user_extensions.student_id #{order_type}")
elsif order == "score"
@exercise_users_list = exercise_user_joins.order("#{order} DESC")
@exercise_users_list = exercise_user_joins.order("#{order} #{order_type}")
else
@exercise_users_list = exercise_user_joins.order("end_at DESC, start_at DESC")
@exercise_users_list = exercise_user_joins.order("end_at #{order_type}, start_at #{order_type}")
end
@export_ex_users = @exercise_users_list

@ -85,42 +85,44 @@ namespace :poll_publish do
task :end => :environment do
#1.统一设置的截止
polls = Poll.includes(:poll_users).where("polls_status = 2 AND unified_setting = true AND end_time <=?",Time.now + 900)
polls = Poll.includes(:poll_users).where("polls_status = 2 AND end_time <=?",Time.now + 900)
polls.each do |poll|
poll.update_column('polls_status', 3)
poll.poll_users.where("commit_status = 0 and start_at is not null").update_all(commit_status: 1, end_at: Time.now)
poll.poll_users.where("commit_status = 0 and start_at is not null").update_all(commit_status: 1, end_at: poll.end_time) if poll.unified_setting
end
#2.分班设置的截止
polls = Poll.includes(:poll_users).where("polls_status = 2 AND unified_setting = false AND end_time > ?",Time.now + 900)
poll_ids = polls.blank? ? "(-1)" : "(" + polls.map(&:id).join(",") + ")"
polls_group_settings = PollGroupSetting.where("end_time <= '#{Time.now}' and poll_id in #{poll_ids}")
polls_group_settings.each do |poll_setting|
poll = poll_setting.poll
if poll&.end_time <= Time.now
poll.update_column('polls_status', 3)
end
users = poll.course.course_members.where(course_group_id: poll_setting.course_group_id)
poll.poll_users.where(user_id: users.pluck(:user_id)).where("commit_status = 0 and start_at is not null").update_all(commit_status: 1, end_at: Time.now)
# poll_users.each do |poll_user|
# if poll_user.commit_status == 0 && !poll_user.start_at.nil?
# poll_user.update_attributes(:commit_status => 1, :end_at => Time.now)
# polls = Poll.includes(:poll_users).where("polls_status = 2 AND unified_setting = false AND end_time > ?",Time.now + 900)
# poll_ids = polls.blank? ? "(-1)" : "(" + polls.map(&:id).join(",") + ")"
# polls_group_settings = PollGroupSetting.where("end_time <= '#{Time.now}' and poll_id in #{poll_ids}")
# polls_group_settings.each do |poll_setting|
# poll = poll_setting.poll
# if poll&.end_time <= Time.now
# poll.update_column('polls_status', 3)
# end
# users = poll.course.course_members.where(course_group_id: poll_setting.course_group_id)
# poll.poll_users.where(user_id: users.pluck(:user_id)).where("commit_status = 0 and start_at is not null").update_all(commit_status: 1, end_at: Time.now)
# # poll_users.each do |poll_user|
# # if poll_user.commit_status == 0 && !poll_user.start_at.nil?
# # poll_user.update_attributes(:commit_status => 1, :end_at => Time.now)
# # end
# # end
# end
end
# PollGroupSetting.where("end_time < ? and end_time > ?", Time.now + 1800, Time.now - 1800).each do |poll_setting|
# poll = poll_setting.poll
PollGroupSetting.where("end_time < ? and end_time > ?", Time.now + 1800, Time.now - 1800).each do |poll_setting|
poll = poll_setting.poll
# poll.update_column('polls_status',3)
#
# users = poll.course.course_members.where(:course_group_id => poll_setting.course_group_id)
# poll_users = poll.poll_users.where(:user_id => users.map(&:user_id))
#
users = poll.course.course_members.where(:course_group_id => poll_setting.course_group_id)
poll_users = poll.poll_users.where(:user_id => users.map(&:user_id))
poll_users.where("commit_status = 0 and start_at is not null").update_all(commit_status: 1, end_at: poll_setting.end_time)
# poll_users.each do |poll_user|
# if poll_user.commit_status == 0 && !poll_user.start_at.nil?
# poll_user.update_attributes(:commit_status => 1, :end_at => Time.now)
# end
# end
# end
end
end
end

@ -486,7 +486,7 @@ class App extends Component {
{/*/!*众包创新*!/*/}
{/*<Route path={"/crowdsourcing"} component={ProjectPackages}/>*/}
{/*竞赛*/}
<Route path={"/newcompetitions"}
<Route path={"/competitions"}
render={
(props) => {

Loading…
Cancel
Save