|
|
@ -125,15 +125,19 @@ class GraduationTasksController < ApplicationController
|
|
|
|
@work_list = @work_list.page(page).per(limit)
|
|
|
|
@work_list = @work_list.page(page).per(limit)
|
|
|
|
|
|
|
|
|
|
|
|
if params[:format] == "xlsx"
|
|
|
|
if params[:format] == "xlsx"
|
|
|
|
|
|
|
|
complete_works = @work_excel.where("work_status > 0").size
|
|
|
|
if @user_course_identity >= Course::STUDENT
|
|
|
|
if @user_course_identity >= Course::STUDENT
|
|
|
|
tip_exception(403, "无权限操作")
|
|
|
|
tip_exception(403, "无权限操作")
|
|
|
|
elsif @work_count == 0
|
|
|
|
elsif complete_works == 0
|
|
|
|
normal_status(-1,"暂无提交的学生!")
|
|
|
|
normal_status(-1,"暂无提交的学生!")
|
|
|
|
else
|
|
|
|
else
|
|
|
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
|
|
|
format.xlsx{
|
|
|
|
graduation_work_to_xlsx(@work_excel,@task,current_user)
|
|
|
|
graduation_work_to_xlsx(@work_excel,@task,current_user)
|
|
|
|
exercise_export_name = "#{current_user.real_name}_#{@course.name}_#{@task.name}_#{Time.now.strftime('%Y%m%d_%H%M%S')}"
|
|
|
|
exercise_export_name = "#{current_user.real_name}_#{@course.name}_#{@task.name}_#{Time.now.strftime('%Y%m%d_%H%M%S')}"
|
|
|
|
render xlsx: "#{exercise_export_name.strip.first(30)}",template: "graduation_tasks/tasks_list.xlsx.axlsx",locals: {table_columns:@head_cells_column, task_users:@task_cells_column}
|
|
|
|
render xlsx: "#{exercise_export_name.strip.first(30)}",template: "graduation_tasks/tasks_list.xlsx.axlsx",locals: {table_columns:@head_cells_column, task_users:@task_cells_column}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
elsif params[:format] == "zip"
|
|
|
|
elsif params[:format] == "zip"
|
|
|
|
if @user_course_identity >= Course::STUDENT
|
|
|
|
if @user_course_identity >= Course::STUDENT
|
|
|
@ -142,46 +146,18 @@ class GraduationTasksController < ApplicationController
|
|
|
|
zip_works = @work_excel.where("work_status > 0")
|
|
|
|
zip_works = @work_excel.where("work_status > 0")
|
|
|
|
status = checkfileSize(zip_works)
|
|
|
|
status = checkfileSize(zip_works)
|
|
|
|
if status == 0
|
|
|
|
if status == 0
|
|
|
|
|
|
|
|
respond_to do |format|
|
|
|
|
|
|
|
|
format.zip{
|
|
|
|
zipfile = zip_homework_common @task, zip_works
|
|
|
|
zipfile = zip_homework_common @task, zip_works
|
|
|
|
file = decode64(zipfile[0][:base64file])
|
|
|
|
file = decode64(zipfile[0][:base64file])
|
|
|
|
send_file "#{OUTPUT_FOLDER}/#{file}", filename: filename_for_content_disposition(file), type: 'application/zip'
|
|
|
|
send_file "#{OUTPUT_FOLDER}/#{file}", filename: filename_for_content_disposition(file), type: 'application/zip'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
end
|
|
|
|
else
|
|
|
|
else
|
|
|
|
tip_exception(status == -2 ? "500M" : "无附件可下载")
|
|
|
|
tip_exception(status == -2 ? "500M" : "无附件可下载")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
#
|
|
|
|
|
|
|
|
# respond_to do |format|
|
|
|
|
|
|
|
|
# format.json
|
|
|
|
|
|
|
|
# format.xlsx{
|
|
|
|
|
|
|
|
# if @user_course_identity >= Course::STUDENT
|
|
|
|
|
|
|
|
# tip_exception(403, "无权限操作")
|
|
|
|
|
|
|
|
# else
|
|
|
|
|
|
|
|
# if @work_count > 1
|
|
|
|
|
|
|
|
# graduation_work_to_xlsx(@work_excel,@task,current_user)
|
|
|
|
|
|
|
|
# exercise_export_name = "#{current_user.real_name}_#{@course.name}_#{@task.name}_#{Time.now.strftime('%Y%m%d_%H%M%S')}"
|
|
|
|
|
|
|
|
# render xlsx: "#{exercise_export_name.strip.first(30)}",template: "graduation_tasks/tasks_list.xlsx.axlsx",locals: {table_columns:@head_cells_column, task_users:@task_cells_column}
|
|
|
|
|
|
|
|
# else
|
|
|
|
|
|
|
|
# normal_status(-1,"暂无提交的学生!")
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
# }
|
|
|
|
|
|
|
|
# format.zip{
|
|
|
|
|
|
|
|
# if @user_course_identity >= Course::STUDENT
|
|
|
|
|
|
|
|
# tip_exception(403, "无权限操作")
|
|
|
|
|
|
|
|
# else
|
|
|
|
|
|
|
|
# zip_works = @work_excel.where("work_status > 0")
|
|
|
|
|
|
|
|
# status = checkfileSize(zip_works)
|
|
|
|
|
|
|
|
# if status == 0
|
|
|
|
|
|
|
|
# zipfile = zip_homework_common @task, zip_works
|
|
|
|
|
|
|
|
# file = decode64(zipfile[0][:base64file])
|
|
|
|
|
|
|
|
# send_file "#{OUTPUT_FOLDER}/#{file}", filename: filename_for_content_disposition(file), type: 'application/zip'
|
|
|
|
|
|
|
|
# else
|
|
|
|
|
|
|
|
# tip_exception(status == -2 ? "500" : "无附件可下载")
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
# }
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
else
|
|
|
|
else
|
|
|
|
@work_list = @work
|
|
|
|
@work_list = @work
|
|
|
|
@view_work = false
|
|
|
|
@view_work = false
|
|
|
@ -190,15 +166,6 @@ class GraduationTasksController < ApplicationController
|
|
|
|
if params[:format] == "xlsx" || params[:format] == "zip"
|
|
|
|
if params[:format] == "xlsx" || params[:format] == "zip"
|
|
|
|
normal_status(-1,"作业未发布")
|
|
|
|
normal_status(-1,"作业未发布")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
# respond_to do |format|
|
|
|
|
|
|
|
|
# format.json
|
|
|
|
|
|
|
|
# format.xlsx{
|
|
|
|
|
|
|
|
# normal_status(-1,"作业未发布")
|
|
|
|
|
|
|
|
# }
|
|
|
|
|
|
|
|
# format.zip{
|
|
|
|
|
|
|
|
# normal_status(-1,"作业未发布")
|
|
|
|
|
|
|
|
# }
|
|
|
|
|
|
|
|
# end
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|