class Weapps::CoursesController < Weapps::BaseController # before_action :require_wechat_login! before_action :teacher_allowed, except: [:create, :show] def create return render_error("只有老师身份才能创建课堂") unless current_user.is_teacher? course = Course.new(tea_id: current_user.id) Weapps::CreateCourseService.call(course, course_params) render_ok rescue ApplicationService::Error => ex render_error(ex.message) end def edit @course = current_course end def update Weapps::UpdateCourseService.call(current_course, update_course_params) render_ok end def show @course = current_course @current_user = current_user end private def course_params params.permit(:name, :course_list_name, :credit, course_module_types: []) end def update_course_params params.permit(:name, :course_list_name, :credit) end def current_course @_current_course = Course.find params[:id] end def teacher_allowed return render_forbidden unless current_user.course_identity(current_course) < Course::STUDENT end end