老师、学生匿评列表

This commit is contained in:
= 2014-12-20 13:00:13 +08:00
parent 226d5e9889
commit 57091b34f4
1 changed files with 75 additions and 17 deletions

View File

@ -2,12 +2,14 @@
class HomeworkService
include CoursesHelper
include AttachmentsHelper
#作业详情(老师才显示启动匿评,学生不显示
#many_times 第几次(作业)
#@state=0 启动匿评
#@state=1 关闭匿评
#@state=2 匿评结束
include ApplicationHelper
include WordsHelper
# 作业详情(老师才显示启动匿评,学生不显示
# many_times 第几次(作业)
# state=0 启动匿评
# state=1 关闭匿评
# state=2 匿评结束
def show_homework params
@bid = Bid.find(params[:id])
course = @bid.courses.first
@ -17,11 +19,13 @@ class HomeworkService
homework_count = @bid.homeworks.count
description = @bid.description
if is_course_teacher(User.current, course) && @bid.open_anonymous_evaluation == 1 && @bid.homeworks.count >= 2
@state = bid.comment_status
end
state = bid.comment_status
end
{:course => 'course', :atuthor => 'author', :many_times => 'many_times', :name => 'name', :homework_count => 'homework_count',
:descriptiong => 'description', :state => 'state'}
end
#启动作业匿评
# 启动作业匿评
def alert_homework_anonymous_comment params
@bid = Bid.find params[:id]
@course = @bid.courses.first
@ -47,7 +51,10 @@ class HomeworkService
[@bid,@totle_size,@cur_size,@percent]
end
#匿评作品详情
# 匿评作品详情
# attachs 该作品的所有附件
# filename 文件名
# filedesc 文件描述
def anonymous_works_show params
@homework = HomeworkAttach.find(params[:homework_id])
name = @homework.name
@ -60,6 +67,8 @@ class HomeworkService
filedesc = attach.description unless attachment.description.blank?
end
end
{:name => 'name', :description => 'desc', :datetime => 'datetime',
:attchs => 'attachs', :filename => 'filename', :filedesc => 'filedesc'}
end
#作品打分/留言
@ -76,21 +85,70 @@ class HomeworkService
end
end
#作品留言
def get_works_jours params
#作品留言列表
def get_works_jours_list params
@bid = Bid.find params[:id]
@user = @bid.author
@jours = @bid.journals_for_messages.where('m_parent_id IS NULL').order('created_on DESC')
@jour = paginateHelper @jours,10
@jour
end
#匿评作品老师评论
#匿评作品学生评论列表TODO:未完成,需继续
def anonmous_works_list
@is_teacher,@is_anonymous_comments,@m_score = params[:is_teacher]=="true",params[:is_anonymous_comments]=="true",params[:stars_value]
@cur_page,@cur_type = params[:cur_page] || 1,params[:cur_type] || 5
# 学生匿评留言列表
def anonymous_jour_list params
#jours留言 is null条件用以兼容历史数据
jours = @homework.journals_for_messages.where("is_comprehensive_evaluation = 3 or is_comprehensive_evaluation is null").order("created_on DESC")
jours.each do |jour|
user = jour.user
img_url = url_to_avatar(jour.user)
datetime = jour.created_on
content = jour.notes
end
{:user => 'user', :img_url => 'img_url', :datetime => 'datetime', :content => 'content'}
end
# 匿评教师留言/回复列表
# 图像img_url = url_to_avatar(user)
# massage_user 留言者
# parent_jour被回复的留言
def teacher_jour_list params
@homework = HomeworkAttach.find(params[:homework_id])
@stars_reates = @homework.rates(:quality)
@teacher_stars = @stars_reates.where("rater_id in (#{teachers})") #老师评分列表
@teacher_stars.each do |ts|
#留言参数
jour = get_homework_review @homework,true,massage_user
massage_content = jour.notes unless jour.nil?
massage_user = ts.rater
massage_score = ts.stars
#回复参数
anonymous_repy(jour)
end
end
# 学生匿评列表
def student_jour_list params
@homework = HomeworkAttach.find(params[:homework_id])
@stars_reates = @homework.rates(:quality)
@student_stars = @stars_reates.where("rater_id not in (#{teachers})") #学生评分列表
@student_stars.each do |ss|
#留言参数
massage_user = ss.rater
jour = get_homework_review @homework,false,massage_user
massage_score = ss.stars
massage_content = jour.notes unless jour.nil?
#回复参数
anonymous_repy(jour)
end
end
def anonymous_repy jour
fetch_user_leaveWord_reply(jour).each do |fulr|
parent_jour = JournalsForMessage.where("id = #{fulr.m_reply_id}").first
reply_name = fulr.user.name
parent_name = parent_jour.user.name if parent_jour
reply_content = fulr.notes
reply_time = fulr.created_on
end
end
end