You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.7 KiB
66 lines
2.7 KiB
json.partial! "public_navigation", locals: {graduation: @task, course: @course}
|
|
json.user_course_identity @user_course_identity
|
|
json.course_group_count @course.course_groups_count
|
|
json.cross_comment @task.cross_comment
|
|
# 课程发布才有数据
|
|
if @task.published? || @user_course_identity < Course::STUDENT
|
|
# 老师身份才有的分类信息
|
|
if @user_course_identity < Course::STUDENT
|
|
json.search_assistants do
|
|
json.teacher_comment teacher_comment @task, @current_user.id
|
|
json.task_status task_status @task, @current_user.id
|
|
json.course_group_info course_group_info @course, @current_user.id
|
|
json.cross_comment cross_comment @task, @current_user
|
|
end
|
|
# 课堂下所有老师 TODO: 考虑以后在点击分配时,再获取老师列表
|
|
json.teacher_list do
|
|
json.array! @teachers do |teacher|
|
|
json.id teacher.user.id
|
|
json.name teacher.user.full_name
|
|
end
|
|
end
|
|
elsif @user_course_identity == Course::STUDENT
|
|
json.work_id @task.user_work(@current_user.id).try(:id)
|
|
json.work_status graduation_work_status(@task, @current_user.id, @course)
|
|
end
|
|
|
|
# 是否具有分组
|
|
json.have_grouping @task.have_grouping?
|
|
if @user_course_identity == Course::STUDENT
|
|
json.commit_count grduationwork_count @task, 1
|
|
json.uncommit_count grduationwork_count @task, 0
|
|
json.left_time task_left_time @task
|
|
else
|
|
json.work_count @work_count
|
|
json.all_work_count @all_work_count
|
|
end
|
|
|
|
# 学生数据
|
|
json.work_lists do
|
|
json.array! @work_list do |work|
|
|
json.id work.id
|
|
json.user_id work.user.id
|
|
json.name work.user.real_name
|
|
json.student_id work.user.student_id
|
|
json.class_grouping_name @students.select{|student| student.user_id == work.user_id}.first.try(:course_group_name)
|
|
json.ultimate_score work.ultimate_score
|
|
if @task.have_grouping?
|
|
json.grouping_name work.grouping_name
|
|
if @task.base_on_project
|
|
json.project_info project_info work, @current_user, @user_course_identity
|
|
end
|
|
end
|
|
json.status work.work_status
|
|
json.update_time format_time work.update_time
|
|
json.teacher_comment_score work.teacher_comment_score(@current_user, @user_course_identity)
|
|
if @task.cross_comment
|
|
json.cross_comment_score work.cross_comment_score(@current_user, @user_course_identity)
|
|
json.cross_comment_num work.cross_comment_num
|
|
end
|
|
json.late_penalty work.late_penalty if @task.allow_late
|
|
json.final_score work_final_score work, @current_user, @user_course_identity
|
|
json.assign @assign_power
|
|
json.view_work @view_work || @current_user.id == work.user_id
|
|
end
|
|
end
|
|
end |