Merge branch 'dev_aliyun' of https://bdgit.educoder.net/Hjqreturn/educoder into dev_aliyun

sso
daiao 5 years ago
commit effeb25e45

@ -308,7 +308,7 @@ class ApplicationController < ActionController::Base
end
if !User.current.logged? && Rails.env.development?
User.current = User.find 1
User.current = User.find 8686
end

@ -1,8 +1,8 @@
class Weapps::CoursesController < Weapps::BaseController
before_action :require_login
before_action :set_course, except: [:create]
before_action :user_course_identity, except: [:basic_info, :create]
before_action :check_account, only: [:create]
before_action :set_course, except: [:create, :check_invite_code]
before_action :user_course_identity, except: [:basic_info, :create, :check_invite_code]
before_action :check_account, only: [:create, :check_invite_code]
before_action :teacher_allowed, only: [:edit, :update]
before_action :teacher_or_admin_allowed, only: [:change_member_roles, :delete_course_teachers]
@ -38,6 +38,23 @@ class Weapps::CoursesController < Weapps::BaseController
@categories = current_course.shixun_course_modules.first&.course_second_categories
end
def check_invite_code
tip_exception(-1, "邀请码不能为空") if params[:invite_code].blank?
invite_code = params[:invite_code]
course = Course.find_by(invite_code: invite_code, is_delete: 0, invite_code_halt: 0)
course_group = CourseGroup.find_by(invite_code: invite_code)
if course.blank?
tip_exception(-1, "邀请码无效") if course_group.blank?
course = Course.find_by(id: course_group.course_id, is_delete: 0, invite_code_halt: 0)
tip_exception(-1, "邀请码无效") if course.blank?
end
tip_exception(-1, "课堂已结束,无法加入") if course.is_end
render_ok
end
# 教师列表
def teachers
@course = current_course
@ -184,11 +201,11 @@ class Weapps::CoursesController < Weapps::BaseController
private
def course_params
params.permit(:name, :course_list_name, :credit, course_module_types: [])
params.permit(:name, :course_list_name, :credit, :end_date, course_module_types: [])
end
def update_course_params
params.permit(:name, :course_list_name, :credit)
params.permit(:name, :course_list_name, :credit, :end_date)
end
def current_course

@ -7,8 +7,6 @@ class ItemBanks::SaveItemForm
validates :sub_discipline_id, presence: true
validates :item_type, presence: true, inclusion: {in: %W(SINGLE MULTIPLE JUDGMENT COMPLETION SUBJECTIVE PRACTICAL PROGRAM)}
validates :difficulty, presence: true, inclusion: {in: 1..3}, numericality: { only_integer: true }
validates :name, presence: true, length: { maximum: 1000, too_long: "不能超过1000个字符" }
validates :analysis, length: { maximum: 1000, too_long: "不能超过1000个字符" }
def validate!
super
@ -27,7 +25,6 @@ class ItemBanks::SaveItemForm
attr_accessor :choice_text, :is_answer
validates :choice_text, presence: true, length: { maximum: 500, too_long: "不能超过500个字符" }
validates :is_answer, presence: true, inclusion: {in: 0..1}, numericality: { only_integer: true }
end
end

@ -2,7 +2,7 @@ class Weapps::CreateCourseForm
include ActiveModel::Model
attr_accessor :course
attr_accessor :name, :course_list_name, :credit, :course_module_types
attr_accessor :name, :course_list_name, :credit, :course_module_types, :end_date
validates :name, presence: true
validates :course_list_name, presence: true

@ -2,7 +2,7 @@ class Weapps::UpdateCourseForm
include ActiveModel::Model
attr_accessor :course
attr_accessor :name, :course_list_name, :credit
attr_accessor :name, :course_list_name, :credit, :end_date
validates :name, presence: true
validates :course_list_name, presence: true

@ -1,3 +1,4 @@
class ItemAnalysis < ApplicationRecord
belongs_to :item_bank, touch: true
validates :analysis, length: { maximum: 5000, too_long: "不能超过5000个字符" }
end

@ -13,6 +13,7 @@ class ItemBank < ApplicationRecord
has_many :tag_disciplines, through: :tag_discipline_containers
belongs_to :container, polymorphic: true, optional: true
validates :name, presence: true, length: { maximum: 1000, too_long: "不能超过1000个字符" }
def analysis
item_analysis&.analysis

@ -1,3 +1,5 @@
class ItemChoice < ApplicationRecord
belongs_to :item_bank, touch: true
validates :choice_text, presence: true, length: { maximum: 500, too_long: "不能超过500个字符" }
end

@ -14,6 +14,7 @@ class Weapps::CreateCourseService < ApplicationService
course.school_id = course.teacher&.school_id
course.is_public = 0
course.credit = params[:credit].blank? ? nil : params[:credit]
course.end_date = params[:end_date].blank? ? nil : params[:end_date]
course_list = CourseList.find_by(name: params[:course_list_name].to_s.strip)
if course_list
course.course_list_id = course_list.id
@ -21,6 +22,8 @@ class Weapps::CreateCourseService < ApplicationService
new_course_list = CourseList.create!(name: params[:course_list_name].to_s.strip, user_id: course.tea_id, is_admin: 0)
course.course_list_id = new_course_list.id
end
course.is_end = course.end_date.present? && course.end_date < Date.today
course.save!
course.generate_invite_code

@ -12,6 +12,7 @@ class Weapps::UpdateCourseService < ApplicationService
ActiveRecord::Base.transaction do
course.name = params[:name].to_s.strip
course.credit = params[:credit].blank? ? nil : params[:credit]
course.end_date = params[:end_date].blank? ? nil : params[:end_date]
course_list = CourseList.find_by(name: params[:course_list_name].to_s.strip)
if course_list
course.course_list_id = course_list.id
@ -19,6 +20,7 @@ class Weapps::UpdateCourseService < ApplicationService
new_course_list = CourseList.create!(name: params[:course_list_name].to_s.strip, user_id: course.tea_id, is_admin: 0)
course.course_list_id = new_course_list.id
end
course.is_end = course.end_date.present? && course.end_date < Date.today
course.save!
end
course

@ -1,2 +1,2 @@
json.(@course, :id, :name, :credit)
json.(@course, :id, :name, :credit, :end_date)
json.course_list_name @course.course_list&.name

@ -18,11 +18,13 @@ end
json.course_count @course_count
json.courses @courses.each do |course|
json.(course, :id, :name, :visits, :course_members_count)
json.(course, :id, :name, :visits, :course_members_count, :is_end, :invite_code_halt)
json.creator course.teacher.real_name
json.avatar_url url_to_avatar(course.teacher)
json.invite_code course.invite_code_halt == 0 ? course.generate_invite_code : ""
json.school course.school&.name
course_member = @category == "study" ? course.students.where(user_id: @user.id).first : course.teachers.where(user_id: @user.id).first
json.sticky course_member.sticky
json.course_identity current_user.course_identity(course)
end

@ -1043,6 +1043,10 @@ Rails.application.routes.draw do
get :course_groups
get :basic_info
end
collection do
get :check_invite_code
end
end
resources :homework_commons do

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

@ -46,7 +46,7 @@ if (isDev) {
// 老师
//debugType="teacher";
// 学生
debugType="student";
//debugType="student";

@ -542,6 +542,9 @@ const options = [{
children: [{
value: "南宁",
label: '南宁'
},{
value: "来宾",
label: '来宾'
},{
value: '百色',
label: '百色'
@ -810,6 +813,9 @@ const options = [{
children: [{
value: "武汉",
label: '武汉'
},{
value: "天门",
label: '天门'
},{
value: '恩施',
label: '恩施'
@ -1626,6 +1632,9 @@ const options = [{
children: [{
value: "杭州",
label: '杭州'
},{
value: "温州",
label: '温州'
},{
value: '安吉',
label: '安吉'

Loading…
Cancel
Save