예제 #1
0
def create_course():
    try:
        print('创建课程'.center(60, '='))
        school_list = School.get_all_obj_list()
        for k, obj in enumerate(school_list):
            print(k, obj['name'], obj['addr'])
        id = int(input('请选择学校: '))
        school_obj = school_list[id]
        #print(school_obj,school_obj ['nid'] )

        name = input('请输入课程名: ').strip()
        price = input('请输入课程价格: ').strip()
        period = input('请输入课程周期: ').strip()

        course_name_list = [(obj['name'], obj['school_nid'])
                            for obj in Course.get_all_obj_list()]
        if name in course_name_list:
            raise Exception('\033[43;1m课程[%s] 已经存在,不可重复创建\033[0m' % (name))
        obj = Course(name, price, period, school_obj['nid'])
        obj.save()
        status = True
        error = ''
        data = '\033[33;1m课程[%s] 价格[%s] 周期[%s]创建成功\033[0m' % (
            obj.name, obj.price, obj.period)
        print(data)
    except Exception as e:
        status = False
        error = str(e)
        print('error: %s' % error)
        data = ''
    return {'status': status, 'error': error, 'data': data}
예제 #2
0
def show_course():
    for obj in Course.get_all_obj_list():
        # print(obj)

        print('\033[33;1m[%s] [%s]校区 [%s]课程 价格[%s] 周期[%s]\033[0m'.center(60,'-') \
     %(obj['school_nid'].get_obj_by_uuid(settings.SCHOOL_DB_DIR)['name'],obj['school_nid'].get_obj_by_uuid(settings.SCHOOL_DB_DIR)['addr'],\
    obj['name'],obj['price'],obj['period']))
예제 #3
0
def create_course_to_teacher():
    try:
        teacher_list = Teacher.get_all_obj_list()
        for k, obj in enumerate(teacher_list):
            print(k, obj.name)
        t_sid = input("请选择老师:")
        if t_sid.isdigit():
            t_sid = int(t_sid)
            if t_sid >= len(teacher_list):
                raise Exception("选择的老师不在此任教")
        else:
            raise Exception("选择的老师不在此任教")
        teacher_obj = teacher_list[t_sid]

        course_list = Course.get_all_obj_list()
        for k, obj in enumerate(course_list):
            print(k, obj.name)
        c_sid = input("\n请选择关联课程: ")
        if c_sid.isdigit():
            c_sid = int(c_sid)
            if c_sid >= len(course_list):
                raise Exception("没有该课程")
        else:
            raise Exception("没有该课程")
        course_obj = course_list[c_sid]

        course_to_teacher_list = [
            (obj.course_nid, obj.school_nid, obj.teacher_nid)
            for obj in Course_to_teacher.get_all_obj_list()
        ]
        if (course_obj.nid, course_obj.school_nid,
                teacher_obj.nid) in course_to_teacher_list:
            raise Exception('\033[43;1m课程[%s] 与老师[%s],不可重复关联\033[0m' %
                            (course_obj.name, teacher_obj.name))
        obj = Course_to_teacher(course_obj.nid, course_obj.school_nid,
                                teacher_obj.nid)
        obj.save()
        status = True
        error = ''
        data = '\033[33;1m课程[%s] 与老师[%s]关联成功\033[0m' % (
            (course_obj.name,
             course_obj.school_nid.get_obj_by_nid().name), teacher_obj.name)
    except Exception as e:
        status = False
        error = str(e)
        data = ''
    return {'status': status, 'error': error, 'data': data}
예제 #4
0
def create_course():
    try:
        print('创建课程'.center(60, '='))
        school_list = School.get_all_obj_list()
        for k, obj in enumerate(school_list):
            print(k, obj.name, obj.addr)
        sid = input("请选择学校: ").strip()
        if sid.isdigit():
            sid = int(sid)
            if sid >= len(school_list):
                raise Exception("输入的学校不存在")
        else:
            raise Exception("输入的学校不存在")

        school_obj = school_list[sid]
        name = input("请输入课程名称: ").strip()
        price = input("请输入课程费用: ").strip()
        if name == '' or price == '':
            raise Exception("输入不能为空")
        if price.replace('.', '', 1).isdigit():
            pass
        else:
            raise Exception("课程费用应该是数字")
        period = input("请输入课程周期: ").strip()
        if period == '':
            raise Exception("输入不能为空")

        course_name_list = [(obj.name, obj.school_nid.nid)
                            for obj in Course.get_all_obj_list()]
        if (name, school_obj.nid.nid) in course_name_list:
            raise Exception('\033[43;1m课程[%s] 已经存在,不可重复创建\033[0m' % (name))
        obj = Course(name, price, period, school_obj.nid)
        obj.save()
        status = True
        error = ''
        data = '\033[33;1m课程[%s] 价格[%s] 周期[%s]创建成功\033[0m' % (
            obj.name, obj.price, obj.period)
    except Exception as e:
        status = False
        error = str(e)
        data = ''
    return {'status': status, 'error': error, 'data': data}
예제 #5
0
def create_course_to_teacher():
    try:
        print('关联教师与课程'.center(60, '='))
        teacher_list = Teacher.get_all_obj_list()
        for k, obj in enumerate(teacher_list):
            print('%s 老师[%s] 级别[%s]' % (k, obj['name'], obj['level']))
        id = int(input('请选择教师: '))
        teacher_obj = teacher_list[id]
        #print(teacher_obj,teacher_obj['nid'] )

        course_list = Course.get_all_obj_list()
        for k, obj in enumerate(course_list):
            print('%s [%s][%s]校区 [%s]课程 价格[%s] 周期[%s]'.center(60, '-') \
      % (k,obj['school_nid'].get_obj_by_uuid(settings.SCHOOL_DB_DIR )['name'],\
                     obj['school_nid'].get_obj_by_uuid(settings.SCHOOL_DB_DIR)['addr'], \
      obj['name'], obj['price'], obj['period']))
        id = int(input('请选择课程: '))
        course_obj = course_list[id]
        #print(course_obj )
        obj = Course_to_teacher(course_obj['nid'], course_obj['school_nid'],
                                teacher_obj['nid'])

        obj.save()
        status = True
        error = ''
        data = '\033[33;1m[%s][%s]校区 [%s]课程 关联 教师[%s] 关联成功\033[0m' %(obj.school_nid.get_obj_by_uuid(settings.SCHOOL_DB_DIR )['name'],\
                                                                     obj.school_nid.get_obj_by_uuid(settings.SCHOOL_DB_DIR)['addr'],\
                                                                    course_obj['name'],teacher_obj['name'])
        print(data)

    except Exception as e:
        status = False
        error = str(e)
        print('error: %s' % error)
        data = ''
    return {'status': status, 'error': error, 'data': data}
예제 #6
0
def show_course():
    for obj in Course.get_all_obj_list():
        print('\033[33;1m[%s] [%s]校区 [%s]课程 价格[%s] 周期[%s]\033[0m'.center(60, '-') \
              % (obj.school_nid.get_obj_by_nid().name, obj.school_nid.get_obj_by_nid().addr, \
                 obj.name, obj.price, obj.period))