forked from jasder/forgeplus
38 lines
1.0 KiB
Ruby
38 lines
1.0 KiB
Ruby
class Weapps::HomeworkCommonsController < Weapps::BaseController
|
|
before_action :require_login
|
|
before_action :find_homework, :user_course_identity
|
|
before_action :teacher_allowed
|
|
|
|
def update_settings
|
|
begin
|
|
# 课堂结束后不能再更新
|
|
unless @course.is_end
|
|
UpdateHomeworkPublishSettingService.call(@homework, publish_params)
|
|
render_ok
|
|
else
|
|
tip_exception("课堂已结束不能再更新")
|
|
end
|
|
rescue Exception => e
|
|
uid_logger(e.backtrace)
|
|
tip_exception(e.message)
|
|
raise ActiveRecord::Rollback
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def teacher_allowed
|
|
return render_forbidden unless @user_course_identity < Course::STUDENT
|
|
end
|
|
|
|
def find_homework
|
|
@homework = HomeworkCommon.find_by!(id: params[:id])
|
|
@course = @homework.course
|
|
@homework_detail_manual = @homework.homework_detail_manual
|
|
end
|
|
|
|
def publish_params
|
|
params.permit(:unified_setting, :publish_time, :end_time, group_settings: [:publish_time, :end_time, group_id: []])
|
|
end
|
|
|
|
end |