@ -330,7 +330,7 @@ class CoursesService
def homework_list params , current_user
def homework_list params , current_user
course = Course . find ( params [ :id ] )
course = Course . find ( params [ :id ] )
if course . is_public != 0 || current_user . member_of_course? ( course )
if course . is_public != 0 || current_user . member_of_course? ( course )
bids = course . homework s. order ( 'deadlin e DESC')
bids = course . homework _commons. order ( 'end_tim e DESC')
bids = bids . like ( params [ :name ] ) if params [ :name ] . present?
bids = bids . like ( params [ :name ] ) if params [ :name ] . present?
homeworks = [ ]
homeworks = [ ]
bids . each do | bid |
bids . each do | bid |
@ -375,9 +375,9 @@ class CoursesService
unless latest_attachment . nil?
unless latest_attachment . nil?
latest_course_dynamics << { :type = > 3 , :time = > latest_attachment . created_on , :message = > latest_attachment . author . realname << l ( :label_recently_updated_courseware , :locale = > get_user_language ( current_user ) ) << " : " << latest_attachment . filename }
latest_course_dynamics << { :type = > 3 , :time = > latest_attachment . created_on , :message = > latest_attachment . author . realname << l ( :label_recently_updated_courseware , :locale = > get_user_language ( current_user ) ) << " : " << latest_attachment . filename }
end
end
latest_bid = course . homework s. order ( 'updated_ on DESC') . first
latest_bid = course . homework _common s. order ( 'updated_ at DESC') . first
unless latest_bid . nil?
unless latest_bid . nil?
latest_course_dynamics << { :type = > 4 , :time = > latest_bid . updated_ on, :message = > latest_bid . autho r. realname << l ( :label_recently_updated_homework , :locale = > get_user_language ( current_user ) ) << " : " << latest_bid . name }
latest_course_dynamics << { :type = > 4 , :time = > latest_bid . updated_ at, :message = > latest_bid . use r. realname << l ( :label_recently_updated_homework , :locale = > get_user_language ( current_user ) ) << " : " << latest_bid . name }
end
end
# Time 2015-04-07 14:58:30
# Time 2015-04-07 14:58:30
@ -390,24 +390,24 @@ class CoursesService
#每个作业中的最新留言
#每个作业中的最新留言
messages = [ ]
# messages = [ ]
course . homeworks . each do | bid |
# course.homework_commons.each do |hc |
jour = bid . journals_for_messages . order ( " created_on desc " ) . first
# jour = hc.journals_for_messages.order("created_on desc"). first
unless jour . nil?
# unless jour. nil?
messages << jour
# messages << jour
end
# end
end
# end
unless messages . count == 0
# unless messages.count == 0
messages . sort! { | order , newer | newer . created_on < = > order . created_on }
# messages.sort!{|order,newer| newer.created_on <=> order.created_on }
end
# end
latest_bid_message = messages . first
# latest_bid_message = messages. first
unless latest_bid_message . nil?
# unless latest_bid_message. nil?
latest_course_dynamics << { :type = > 4 , :time = > latest_bid_message . created_on , :message = > l ( :label_recently_updated_message , :locale = > get_user_language ( current_user ) ) }
# latest_course_dynamics << {:type => 4,:time => latest_bid_message.created_on,:message => l(:label_recently_updated_message,:locale => get_user_language(current_user)) }
end
# end
#每个作业中学生最后提交的作业
#每个作业中学生最后提交的作业
homeworks = [ ]
homeworks = [ ]
course . homework s. each do | bid |
course . homework _common s. each do | bid |
homework_attach = bid . home works. order ( 'updated_at DESC' ) . first
homework_attach = bid . student_ works. order ( 'updated_at DESC' ) . first
unless homework_attach . nil?
unless homework_attach . nil?
homeworks << homework_attach
homeworks << homework_attach
end
end
@ -533,21 +533,21 @@ class CoursesService
mems
mems
end
end
def show_homework_info course , bid , current_user , is_course_teacher
def show_homework_info course , bid , current_user , is_course_teacher
author_real_name = bid . author. lastname + bid . autho r. firstname
author_real_name = bid . user. lastname + bid . use r. firstname
many_times = course . homework s. index ( bid ) + 1
many_times = course . homework _common s. index ( bid ) + 1
name = bid . name
name = bid . name
homework_count = bid . home works. count #已提交的作业数量
homework_count = bid . student_ works. count #已提交的作业数量
student_questions_count = bid . journals_for_messages . where ( 'm_parent_id IS NULL' ) . count
#student_questions_count = bid.journals_for_messages.where('m_parent_id IS NULL'). count
description = bid . description
description = bid . description
#if is_course_teacher(User.current, course) && @bid.open_anonymous_evaluation == 1 && @bid.homeworks.count >= 2
#if is_course_teacher(User.current, course) && @bid.open_anonymous_evaluation == 1 && @bid.homeworks.count >= 2
state = bid . comment_status
state = bid . homework_detail_manual. comment_status
unless is_course_teacher
unless is_course_teacher
homework_for_anonymous_comments = get_student_batch_homework_list bid , current_user
homework_for_anonymous_comments = get_student_batch_homework_list bid , current_user
end
end
#end
#end
open_anonymous_evaluation = bid . open_anonymous_evaluation
open_anonymous_evaluation = bid . homework_detail_manual. comment_status
{ :course_name = > course . name , :course_id = > course . id , :id = > bid . id , :author = > bid . autho r, :author_real_name = > author_real_name , :homework_times = > many_times , :homework_name = > name , :homework_count = > homework_count , :student_questions_count = > student_questions_count ,
{ :course_name = > course . name , :course_id = > course . id , :id = > bid . id , :author = > bid . use r, :author_real_name = > author_real_name , :homework_times = > many_times , :homework_name = > name , :homework_count = > homework_count , :student_questions_count = > 0 ,
:description = > description , :homework_state = > state , :open_anonymous_evaluation = > open_anonymous_evaluation , :homework_for_anonymous_comments = > homework_for_anonymous_comments , :created_on = > bid . created_ on, :deadline = > bid . deadlin e}
:description = > description , :homework_state = > state , :open_anonymous_evaluation = > open_anonymous_evaluation , :homework_for_anonymous_comments = > homework_for_anonymous_comments , :created_on = > bid . created_ at, :deadline = > bid . end_tim e}
end
end