Exemplo n.º 1
0
class Subject(EntityMixin, db.Model):
    subject_name = Column(String(120), nullable=False, comment='学科名称-英文')
    subject_desc = Column(String(120), nullable=True, comment='学科描述-英文')
    subject_open_grade = Column(String(120), nullable=True,
                                comment='学科年级-英文')
    subject_requirements = Column(String(120), nullable=True,
                                  comment='学科要求-英文')

    subject_name_zh = Column(String(120), nullable=True, comment='学科名称-中文')
    subject_desc_zh = Column(String(120), nullable=True, comment='学科描述-中文')
    subject_open_grade_zh = Column(String(120), nullable=True,
                                   comment='学科年级-中文')
    subject_requirements_zh = Column(String(120), nullable=True,
                                     comment='学科要求-中文')
    cover_url = Column(String(255), nullable=True, comment='封面地址')
    state = Column(Integer, nullable=False, comment='有效:98,无效:99')
    curriculum_id = Column(Integer, ForeignKey('curriculum.id'),
                           nullable=True)
    subject_of_curriculum = db.relationship('Curriculum',
                                            backref='curriculum_subjects',
                                            lazy=True)
    subject_category_id = Column(Integer, ForeignKey('subject_category.id'),
                                 nullable=True)
    subject_of_category = db.relationship('SubjectCategory',
                                          backref='category_subjects',
                                          lazy=True)
Exemplo n.º 2
0
class StudyResult(EntityMixin, db.Model):
    score = Column(Float, nullable=True, comment='分数')
    evaluation = Column(String(2000), nullable=True, comment='阶段性评价 json')
    score_type = Column(String(60), nullable=True, comment='得分类型')
    score_full_mark = Column(Float, nullable=True, comment="满分")
    score_reason = Column(String(2000), nullable=True, comment='得分原因')
    score_remark = Column(String(2000), nullable=True, comment='分数标记')
    score_comment = Column(String(2000), nullable=True, comment='分数确认')
    report_card_url = Column(String(200), nullable=True, comment='成绩单地址')
    report_card_name = Column(String(100), nullable=True, comment='成绩单名称')
    result_type = Column(Enum(StudyResultTypeEnum),
                         nullable=True,
                         comment='结果类型',
                         server_default=StudyResultTypeEnum.SUMMARY.name)
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    student_study_results = db.relationship('Student',
                                            backref='study_results',
                                            lazy=True)
    course_exam_id = Column(Integer,
                            ForeignKey('course_exam.id'),
                            nullable=True)
    course_exam_results = db.relationship('CourseExam',
                                          backref='course_exam_results',
                                          lazy=True)
    course_id = Column(Integer, ForeignKey('course.id'), nullable=True)
Exemplo n.º 3
0
class StudySchedule(EntityMixin, db.Model):
    actual_start = Column(DateTime, nullable=False, comment='实际上课开始时间')
    actual_end = Column(DateTime, nullable=False, comment='实际上课结束时间')
    name = Column(String(50), nullable=False, comment='课程名称')
    study_state = Column(Integer, nullable=False, comment='学习状态,1:进行中,2:已经学完')
    student_evaluation = Column(Text, nullable=True, comment='老师给学生的评价')
    student_result = Column(String(2000), nullable=True, comment='老师给学生反馈')
    teacher_evaluation = Column(Text, nullable=True, comment='这个是学生给老师的评价')
    teacher_result = Column(String(2000), nullable=True, comment='学生给老师的的反馈')
    homework = Column(String(255), nullable=True, comment='作业')
    test = Column(String(2000), nullable=True, comment='课后测试')
    student_score = Column(Float, nullable=True, comment='学生评分')
    teacher_score = Column(Float, nullable=True, comment='教师评分')
    order_id = Column(Integer, ForeignKey('order.id'), nullable=False)
    schedule_type = Column(
        Enum(CourseScheduleStatueEnum),
        nullable=True,
        comment='课程类型',
        server_default=CourseScheduleStatueEnum.COMMON_CLASS.name)
    order_studys = db.relationship('Order', backref='order_studys', lazy=True)
    course_schedule_id = Column(Integer,
                                ForeignKey('course_schedule.id'),
                                nullable=False)
    course_schedule = db.relationship('CourseSchedule',
                                      backref='study_timetable',
                                      lazy=True)
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    study_courses = db.relationship('Student',
                                    backref='study_courses',
                                    lazy=True)
Exemplo n.º 4
0
class TeacherSubject(EntityMixin, db.Model):
    advantage = Column(String(120), nullable=False, comment='教师特点英文')
    desc = Column(String(255), nullable=True, comment='教师描述英文')
    advantage_zh = Column(String(120), nullable=True, comment='教师特点英文')
    desc_zh = Column(String(255), nullable=True, comment='教师描述中文')
    teacher_id = Column(Integer, ForeignKey('teacher.id'), nullable=False)
    subjects = db.relationship('Teacher', backref='subjects', lazy=True)
    subject_id = Column(Integer, ForeignKey('subject.id'), nullable=False)
    teachers = db.relationship('Subject', backref='teachers', lazy=True)
Exemplo n.º 5
0
class StudentSubject(EntityMixin, db.Model):
    optional = Column(Integer, nullable=False, comment='是否必修,1:选修,2;必修')
    desc = Column(String(2000), nullable=True, comment='英文描述信息')
    desc_zh = Column(String(2000), nullable=True, comment='中文描述信息')
    subject_name = Column(String(120), nullable=True, comment='科目名称')
    subject_type = Column(Integer, nullable=True, comment='1:学习科目,2:意向科目')
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    subjects = db.relationship('Student', backref='subjects', lazy=True)
    subject_id = Column(Integer, ForeignKey('subject.id'), nullable=True)
    students = db.relationship('Subject', backref='students', lazy=True)
Exemplo n.º 6
0
class StudentAppraisal(EntityMixin, db.Model):
    form_no = Column(Integer, primary_key=True, comment='表单编号')
    form_submitted = Column(String(255), nullable=True, comment='表单提交内容-英文')
    provider = Column(String(255), nullable=True, comment='评估机构-英文')
    result = Column(String(4000), nullable=True, comment='评估结果-英文')
    form_submitted_zh = Column(String(255), nullable=True, comment='表单提交内容-中文')
    provider_zh = Column(String(255), nullable=True, comment='评估机构-中文')
    result_zh = Column(String(4000), nullable=True, comment='评估结果-中文')
    subject_id = Column(Integer, ForeignKey('subject.id'), nullable=True)
    subjects = db.relationship('Subject', backref='appraisals', lazy=True)
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    appraisals = db.relationship('Student', backref='appraisals', lazy=True)
Exemplo n.º 7
0
class Student(UserBaseMixin, db.Model):
    state = Column(Enum(StudentState),
                   nullable=False,
                   server_default=StudentState.FRESH.name)
    level = Column(String(50), nullable=True, comment='等级')
    city = Column(String(50), nullable=True, comment='城市')
    grade = Column(Integer, nullable=True, comment='当前学校班级')
    read_country = Column(String(100), nullable=True, comment='在读国家')
    read_province = Column(String(100), nullable=True, comment='在读省/州')
    read_city = Column(String(100), nullable=True, comment='在读城市')
    read_school = Column(String(100), nullable=True, comment='在读学校英文')
    read_school_zh = Column(String(100), nullable=True, comment='在读学校中文')
    interest = Column(String(1000), nullable=True, comment='兴趣爱好英文')
    interest_zh = Column(String(1000), nullable=True, comment='兴趣爱好中文')
    award = Column(String(500), nullable=True, comment='获得奖项英文')
    award_zh = Column(String(500), nullable=True, comment='获得奖项中文')
    go_abroad = Column(String(5), nullable=True, comment='是否出国YES/NO')
    go_abroad_at = Column(DateTime, nullable=True, comment='预计出国时间')
    go_abroad_country = Column(String(50), nullable=True, comment='预计出国国家')
    go_abroad_province = Column(String(50), nullable=True, comment='预计出国国家省/州')
    overseas = Column(String(500), nullable=True, comment='海外经历英文')
    overseas_zh = Column(String(500), nullable=True, comment='海外经历中文中文')
    english = Column(String(500), nullable=True, comment='英语情况英文')
    english_zh = Column(String(500), nullable=True, comment='英语情况中文')
    exam_results = Column(String(500), nullable=True, comment='考试与成绩英文')
    exam_results_zh = Column(String(500), nullable=True, comment='考试与成绩中文')
    parent = Column(String(50), nullable=True, comment='家长姓名')
    parent_mobile = Column(String(20), nullable=True, comment='家长联系电话')
    parent_email = Column(String(60), nullable=True, comment='家长邮件')
    parent_role = Column(String(20), nullable=True, comment='家长称谓')
    remark = Column(String(500), nullable=True, comment='标注信息')
    learning_goals = Column(String(1000), nullable=True, comment='学习目标英文')
    learning_goals_zh = Column(String(1000), nullable=True, comment='学习目标中文')
    consultant_id = Column(Integer,
                           ForeignKey('sys_user.id'),
                           nullable=True,
                           comment='sales person provide consultant'
                           ' services or other customer '
                           'services')
    consultants = db.relationship('SysUser',
                                  backref='sales_customers',
                                  lazy=True,
                                  foreign_keys=consultant_id)
    student_helper_id = Column(Integer,
                               ForeignKey('sys_user.id'),
                               nullable=True,
                               comment='customer services providers')
    student_helpers = db.relationship('SysUser',
                                      backref='student_helpers',
                                      lazy=True,
                                      foreign_keys=student_helper_id)
    channel_id = Column(Integer, ForeignKey('channel.id'), nullable=True)
Exemplo n.º 8
0
class Homework(EntityMixin, db.Model):
    homework_type = Column(Integer,
                           nullable=False,
                           comment='作业类型1:教师留作业,2:学生完成作业')
    question_name = Column(String(100), nullable=True, comment='作业名称')
    question_text = Column(String(2000), nullable=True, comment='问题')
    question_attachment_url = Column(String(255),
                                     nullable=True,
                                     comment='问题附件地址可以多个,JSON')
    answer_text = Column(String(2000), nullable=True, comment='答案')
    evaluation = Column(Text, nullable=True, comment='评价')
    answer_attachment_url = Column(String(255),
                                   nullable=True,
                                   comment='答案附件地址可以多个json')
    score = Column(Float, nullable=True, comment='分数')
    score_remark = Column(String(2000), nullable=True, comment='分数标记')
    score_reason = Column(String(2000), nullable=True, comment='分数得分原因')
    homework_id = Column(Integer, nullable=True, comment='自关联ID完成作业使用')
    review_at = Column(DateTime, nullable=True, comment='点评时间')
    study_schedule_id = Column(Integer,
                               ForeignKey('study_schedule.id'),
                               nullable=True)
    course_schedule_id = Column(Integer,
                                ForeignKey('course_schedule.id'),
                                nullable=True)
    homeworks = db.relationship('StudySchedule',
                                backref='homeworks',
                                lazy=True)
Exemplo n.º 9
0
class CourseAppraisal(EntityMixin, db.Model):
    """
    After study the whole course, record the study result and credit
    """
    course_study_result = Column(String(255), nullable=True, comment='试听英文反馈')
    course_study_result_zh = Column(String(255),
                                    nullable=True,
                                    comment='试听中文反馈')
    course_credit = Column(Float, nullable=True, comment='')
    course_id = Column(Integer, ForeignKey('course.id'), nullable=False)
    course_appraisals = db.relationship('Course',
                                        backref='study_results',
                                        lazy=True)
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    course_results = db.relationship('Student',
                                     backref='course_appraisals',
                                     lazy=True)
Exemplo n.º 10
0
class PayLog(EntityMixin, db.Model):
    direction = Column(Integer, nullable=False, comment='收款还是付款,1:收款,2:付款')
    state = Column(Integer, nullable=False, comment='状态')
    state_reason = Column(String(255), nullable=False, comment='该状态原因')
    amount = Column(Integer, nullable=False, comment='退款金额')
    result = Column(Integer, nullable=False, comment='最终退款金额')
    payment_method = Column(Integer, nullable=False, comment='支付,退款方式')
    payment_fee = Column(Integer, nullable=False, comment='订单支付费用')
    remark = Column(String(1000), nullable=True, comment='备注信息')
    order_id = Column(Integer, ForeignKey('order.id'), nullable=False)
    order_paylogs = db.relationship('Order',
                                    backref='order_paylogs',
                                    lazy=True)
    account_id = Column(Integer, ForeignKey('account.id'), nullable=True)
    account_paylogs = db.relationship('Account',
                                      backref='account_paylogs',
                                      lazy=True)
Exemplo n.º 11
0
class TeacherTime(EntityMixin, db.Model):
    week = Column(db.String(10), nullable=False, comment='星期几,1,2,3,4,5,6,7')
    end = Column(DateTime, nullable=False, comment='可授课结束时间')
    start = Column(DateTime, nullable=False, comment='可以授课开始时间')
    teacher_id = Column(db.Integer,
                        db.ForeignKey('teacher.id'),
                        nullable=False)
    teachers = db.relationship('Teacher', backref='teachertime', lazy=True)
Exemplo n.º 12
0
class CourseExam(EntityMixin, db.Model):
    start = Column(DateTime, nullable=False, comment='考试开始见')
    end = Column(DateTime, nullable=False, comment='考试结束时间')
    state = Column(Integer, nullable=False, comment='状态参考枚举值')
    exam_form = Column(String(255), nullable=True, comment='考试来源')
    exam_desc = Column(String(255), nullable=False, comment='考试描述')
    course_id = Column(Integer, ForeignKey('course.id'),
                       nullable=False)
    course_schedules = db.relationship('Course', backref='course_exams',
                                       lazy=True)
Exemplo n.º 13
0
class Certificate(EntityMixin, db.Model):
    cert_name = Column(db.String(120), nullable=False, comment='证书英文名称')
    cert_desc = Column(db.String(120), nullable=True, comment='证书英文描述')
    cert_name_zh = Column(db.String(120), nullable=True, comment='证书中文名称')
    cert_desc_zh = Column(db.String(120), nullable=True, comment='证书中文描述')
    cert_level = Column(db.String(120), nullable=True, comment='证书级别')
    teacher_id = Column(db.Integer,
                        db.ForeignKey('teacher.id'),
                        nullable=False)
    teachers = db.relationship('Teacher', backref='certificates', lazy=True)
Exemplo n.º 14
0
class CourseAppointment(EntityMixin, db.Model):
    teacher_id = Column(Integer, ForeignKey('teacher.id'),
                        nullable=True)
    study_appointment_id = Column(Integer, ForeignKey('study_appointment.id'),
                                   nullable=False)
    study_appointment = db.relationship('StudyAppointment',
                                      backref='study_appointment',
                                      lazy=True)
    appointment_state = Column(Enum(CourseAppointmentState), nullable=False,
                               server_default=CourseAppointmentState.APPLY.name)
Exemplo n.º 15
0
class Interview(EntityMixin, db.Model):
    start = Column(DateTime, nullable=True, comment='预计面试开始时间')
    end = Column(DateTime, nullable=True, comment='预计面试结束时间')
    state = Column(Integer, nullable=False, comment='1:未面试,2:已经面试,3:取消')
    reason = Column(String(2000),
                    nullable=True,
                    comment="state change to history, record change reason")
    result = Column(String(2000), nullable=True, comment='面试结果')
    set_time = Column(String(2000), nullable=True, comment='设置面试时间 json')
    interviewer_id = Column(db.Integer,
                            db.ForeignKey('sys_user.id'),
                            nullable=True)
    interviewers = db.relationship('SysUser',
                                   backref='interviewers',
                                   lazy=True)
    course_schedule_id = Column(Integer, nullable=True)
    teacher_id = Column(db.Integer,
                        db.ForeignKey('teacher.id'),
                        nullable=False)
    teachers = db.relationship('Teacher', backref='interviews', lazy=True)
Exemplo n.º 16
0
class StudentRequirements(EntityMixin, db.Model):
    content = Column(String(1000), nullable=True, comment='英文内容')
    content_zh = Column(String(1000), nullable=True, comment='中文内容')
    translate_by = Column(Integer, nullable=True, comment='翻译人')
    translate_at = Column(DateTime, nullable=True, comment='翻译时间')
    student_id = Column(db.Integer,
                        db.ForeignKey('student.id'),
                        nullable=False)
    student_requirements = db.relationship('Student',
                                           backref='studentrequirements',
                                           lazy=True)
Exemplo n.º 17
0
class Course(EntityMixin, db.Model):
    course_name = Column(String(120), nullable=False, comment='课程名称-英文')
    course_name_zh = Column(String(120), nullable=True, comment='课程名称-中文')
    course_type = Column(Integer, nullable=False,
                         comment='全部:1,在线:2,公开:3')
    package_type = Column(Enum(PackageTypeEnum), nullable=True,
                          comment='课包类型',
                          server_default=PackageTypeEnum.COMMON.name)
    class_type = Column(Integer, nullable=False,
                        comment='enum, e.g. 1 v 1, 1 v 4, 1 v n')
    classes_number = Column(Integer, nullable=False, comment='课节数')
    open_grade = Column(String(120), nullable=True, comment='开设年级')
    course_desc = Column(String(120), nullable=True, comment='课程描述-英文')
    course_desc_zh = Column(String(120), nullable=True, comment='课程描述-中文')
    difficult_level = Column(Integer, nullable=True, comment='困难级别')
    critical_level = Column(Integer, nullable=True, comment='重要程度')
    start = Column(DateTime, nullable=True, comment='上课开始时间')
    end = Column(DateTime, nullable=True, comment='上课结束时间')
    course_requirements = Column(String(120), nullable=True,
                                 comment='课程要求-英文')
    course_requirements_zh = Column(String(120), nullable=True,
                                    comment='课程要求-中文')
    state = Column(Integer, nullable=False, comment='有效:98,无效:99')
    price = Column(Integer, nullable=False, comment='金额')
    project_type = Column(Enum(CourseProjetTypeEnum), nullable=True,
                           comment='课程类型',
                           server_default=CourseProjetTypeEnum.ALL.name)
    primary_teacher_id = Column(Integer, ForeignKey('teacher.id'),
                                nullable=False)
    primary_teacher = db.relationship('Teacher', backref='primary_courses',
                                      lazy=True,
                                      foreign_keys=primary_teacher_id)
    assist_teacher_id = Column(Integer, ForeignKey('teacher.id'),
                               nullable=True)
    assist_teacher = db.relationship('Teacher', backref='assist_courses',
                                     lazy=True, foreign_keys=assist_teacher_id)
    subject_id = Column(Integer, ForeignKey('subject.id'),
                        nullable=False)
    courses_of_subject = db.relationship('Subject', backref='courses',
                                         lazy=True)
Exemplo n.º 18
0
class TeacherHistory(EntityMixin, db.Model):
    subject_id = Column(Integer, nullable=True, comment='可教授的科目id')
    subject_name = Column(String(50), nullable=True, comment='可教授的科目名称')
    grade = Column(
        String(100),
        nullable=True,
        comment='Kindergarten:幼儿园,primary_school:小学,junior_middle_school:初中,'
        'high_school:高中,university:大学,adult:成人,other:其他 JSON串')
    type = Column(Integer, nullable=False, comment='类型,1:可以交的科目,2:现在交的科目')
    teacher_id = Column(db.Integer,
                        db.ForeignKey('teacher.id'),
                        nullable=False)
    teachers = db.relationship('Teacher', backref='teacherhistory', lazy=True)
Exemplo n.º 19
0
class Channel(EntityMixin, db.Model):
    channel_name = Column(String(255), nullable=False, comment='渠道名称')
    channel_desc = Column(String(255), nullable=True, comment='渠道描述')
    contact_tel = Column(String(255), nullable=True, comment='联系电话')
    contact_email = Column(String(255), nullable=True, comment='联系人邮件')
    contact_address = Column(String(255), nullable=True, comment='联系地址')
    contact_name = Column(String(255), nullable=True, comment='联系人名称')
    state = Column(Integer, nullable=False, comment='有效:98,无效:99')
    app_key = Column(String(255), nullable=True, comment='渠道key')
    partner_id = Column(String(255), nullable=True, comment='渠道id')
    logo_url = Column(String(255), nullable=True, comment='logourl')
    domain_address = Column(String(255), nullable=True, comment='主页地址')
    service_helper = Column(Integer, ForeignKey('sys_user.id'), nullable=True)
    channels = db.relationship('SysUser', backref='serve_channels', lazy=True)
Exemplo n.º 20
0
class Order(EntityMixin, db.Model):
    order_type = Column(Integer, nullable=False)
    order_desc = Column(String(255), nullable=False)
    state = Column(Integer, nullable=False)
    cancel_checkby = Column(String(120),
                            nullable=True,
                            comment="when state change to cancel, this field "
                            "save the one who approved cancel")
    payment_state = Column(Integer, nullable=False)
    amount = Column(Integer, nullable=False)
    discount = Column(Integer, nullable=False)
    promotion = Column(String(255), nullable=False)
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    created_by = Column(Integer, nullable=True)
    student_orders = db.relationship('Student',
                                     backref='student_orders',
                                     lazy=True)
    course_id = Column(Integer, ForeignKey('course.id'), nullable=False)
    course = db.relationship('Course', backref='course_orders', lazy=True)
    channel_id = Column(Integer, ForeignKey('channel.id'), nullable=False)
    channel_orders = db.relationship('Channel',
                                     backref='channel_orders',
                                     lazy=True)
Exemplo n.º 21
0
class CourseSchedule(EntityMixin, db.Model):
    start = Column(DateTime, nullable=False, comment='开始时间')
    end = Column(DateTime, nullable=False, comment='结束时间')
    state = Column(Integer, nullable=False, comment='状态参考枚举值')
    name = Column(String(50), nullable=False, comment='课程名称')
    override_course_type = Column(Integer, nullable=True,
                                  comment='value used to override course_type '
                                          'defined in course, e.g. in a 1V4 '
                                          'course, the teacher want to teach '
                                          'one of his student due to the '
                                          'student resorting to help.')
    schedule_type = Column(Enum(CourseScheduleStatueEnum), nullable=True,
                         comment='课程类型',
                         server_default=CourseScheduleStatueEnum.COMMON_CLASS.name)
    progress = Column(String(255), nullable=True,
                      comment='after finish this class, the progress desc of '
                              'this course')
    course_id = Column(Integer, ForeignKey('course.id'),
                       nullable=False)
    course_schedules = db.relationship('Course', backref='course_schedules',
                                       lazy=True)
Exemplo n.º 22
0
class CourseClassroom(EntityMixin, db.Model):
    provider = Column(Integer, nullable=False, comment='1:duobei, 2:xxx')
    room_title = Column(String(255), nullable=False)
    video_ready = Column(Integer, nullable=False, comment='0:disable, 1:enable')
    room_url = Column(String(8000), nullable=True)
    room_id = Column(String(120), nullable=True, index=True,
                     comment='provider returned id after room created')
    room_type = Column(Enum(ClassroomTypeEnum), nullable=False,
                       server_default=ClassroomTypeEnum.ONE_VS_ONE.name)
    room_uid = Column(String(255), nullable=True,
                      comment='room uuid')
    host_code = Column(String(255), nullable=True,
                       comment='store duobei host_code used as invite code')
    state = Column(Enum(ClassroomStateEnum), nullable=False,
                   server_default=ClassroomStateEnum.CREATED.name)
    duration_start = Column(DateTime, nullable=True)
    duration_end = Column(DateTime, nullable=True)
    course_schedule_id = Column(Integer, ForeignKey('course_schedule.id'),
                                nullable=False)
    class_rooms = db.relationship('CourseSchedule', backref='class_rooms',
                                  lazy=True)
Exemplo n.º 23
0
class CourseClassParticipant(EntityMixin, db.Model):
    role_in_course = Column(Enum(ClassroomRoleEnum), nullable=False,
                            server_default=ClassroomRoleEnum.ASSISTANT.name)
    role_id = Column(String(255), nullable=True)
    role_uid = Column(String(255), nullable=True)
    access_url = Column(String(4000), nullable=True)
    device_type = Column(Enum(ClassroomDeviceEnum), nullable=False,
                         server_default=ClassroomDeviceEnum.PC.name)
    role_id = Column(String(255), nullable=True)
    role_table = Column(String(60), nullable=True)
    role_table_id = Column(Integer, nullable=True)
    role_username = Column(String(60), nullable=True)
    attend_start = Column(DateTime, nullable=True)
    attend_end = Column(DateTime, nullable=True)
    assessment = Column(String(2000), nullable=True)
    remark = Column(String(2000), nullable=True)
    course_classroom_id = Column(Integer, ForeignKey('course_classroom.id'),
                                 nullable=False)
    classroom_participants = db.relationship('CourseClassroom',
                                             backref='classroom_participants',
                                             lazy=True)
Exemplo n.º 24
0
class Courseware(EntityMixin, db.Model):
    """
    PPT or something showing in course uploaded by teacher
    before course study, needs to be checked by admin
    """
    ware_desc = Column(String(2000), nullable=False, comment='课件描述')
    ware_name = Column(String(100), nullable=False, comment='课件名称')
    ware_url = Column(String(255), nullable=True, comment='课件存储地址')
    ware_uid = Column(String(120), nullable=True, index=True,
                      comment='e.g. duobei use')
    room_id = Column(String(2000), nullable=True, comment='classroom list')
    other_desc = Column(String(2000), nullable=True, comment="e.g. duobei use")
    checked_result = Column(Enum(CoursewareCheckResultEnum), nullable=True,
                            comment='admin check result',
                            server_default=CoursewareCheckResultEnum.
                            BEFORE_CHECK.name)
    is_view = Column(String(20), nullable=False,comment='是否允许查看',server_default='YES')
    course_id = Column(Integer, ForeignKey('course.id'),
                       nullable=False)
    course_wares = db.relationship('Course', backref='course_wares',
                                   lazy=True)
    course_schedule_id = Column(Integer, ForeignKey('course_schedule.id'),
                                nullable=True)
Exemplo n.º 25
0
class Enrollment(EntityMixin, db.Model):
    student_id = Column(Integer, ForeignKey('student.id'), nullable=False)
    channel_id = Column(Integer, ForeignKey('channel.id'), nullable=True)
    channel_enrollments = db.relationship('Channel',
                                          backref='channel_enrollments',
                                          lazy=True)