|
|
|
@ -1193,8 +1193,8 @@ class CoursesController < ApplicationController
|
|
|
|
|
@subject = @course.present? ? @course.subject : Subject.find_by!(id: params[:subject_id])
|
|
|
|
|
tip_exception("开始时间不能为空") if params[:start_date].blank?
|
|
|
|
|
tip_exception("结束时间不能为空") if params[:end_date].blank?
|
|
|
|
|
tip_exception("结束时间必须晚于开始时间") if params[:end_date] <= params[:start_date]
|
|
|
|
|
tip_exception("开始时间和结束时间不能与往期开课时间重叠") if @course.nil? && @subject.max_course_end_date && params[:start_date] <= strf_date(@subject.max_course_end_date)
|
|
|
|
|
tip_exception("结束时间必须晚于开始时间") if strf_date(params[:end_date]) <= strf_date(params[:start_date])
|
|
|
|
|
tip_exception("开始时间和结束时间不能与往期开课时间重叠") if @course.nil? && @subject.max_course_end_date && strf_date(params[:start_date]) <= strf_date(@subject.max_course_end_date)
|
|
|
|
|
validate_start_end_date if @course.present?
|
|
|
|
|
tip_exception("开放课堂必须包含公告栏和在线学习模块") unless params[:course_module_types].include?("announcement") && params[:course_module_types].include?("online_learning")
|
|
|
|
|
end
|
|
|
|
@ -1206,8 +1206,8 @@ class CoursesController < ApplicationController
|
|
|
|
|
def validate_start_end_date
|
|
|
|
|
prev_course = @subject.courses.where("id < #{@course.id}").last
|
|
|
|
|
next_course = @subject.courses.where("id > #{@course.id}").first
|
|
|
|
|
tip_exception("开始时间不能与往期开课时间重叠") if prev_course && params[:start_date] <= strf_date(prev_course.end_date)
|
|
|
|
|
tip_exception("结束时间不能与后期开课时间重叠") if next_course && params[:end_date] >= strf_date(next_course.start_date)
|
|
|
|
|
tip_exception("开始时间不能与往期开课时间重叠") if prev_course && strf_date(params[:start_date]) <= strf_date(prev_course.end_date)
|
|
|
|
|
tip_exception("结束时间不能与后期开课时间重叠") if next_course && strf_date(params[:end_date]) >= strf_date(next_course.start_date)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
# 超级管理员和课堂管理员的权限判断
|
|
|
|
|