Exemplo n.º 1
0
async def answer_q1(message: types.Message, state: FSMContext):
    try:
        answer = message.text
        cid = get_cid_by_name(answer)
        list_of_students = get_list_of_student_from_cours(cid)
        await message.answer("Количество студентов на " + answer + " равно: " +
                             str(len(list_of_students)))
    except:
        await message.answer('Что-то пошло не так...')
    await state.finish()
Exemplo n.º 2
0
async def answer_q1(message: types.Message, state: FSMContext):
    data = await state.get_data()
    answer1 = data.get("answer1")
    answer2 = data.get("answer2")
    answer3 = data.get("answer3")
    answer = message.text
    try:
        check = check_course_pass(answer1, answer)
        if check:
            insert_new_teacher(message.from_user.id, answer2, answer3)
            print(message.from_user.id)
            print(get_cid_by_name(answer1))
            insert_new_teacher_course(message.from_user.id, get_cid_by_name(answer1))
            await message.answer("Вы стали администратором курса " + answer1)
        else:
            await message.answer("Вы ввели неверный пароль")
    except:
        await message.answer("Не балуйся)")
    await state.finish()
Exemplo n.º 3
0
async def answer_q2(message: types.Message, state: FSMContext):
    answer = message.text
    data = await state.get_data()
    answer1 = data.get("answer1")
    if answer == 'Да':
        try:
            cid = get_cid_by_name(answer1)
            leave_course(message.from_user.id, cid)
            await message.answer('Вы покинули курс {}!'.format(answer1), reply_markup=ReplyKeyboardRemove())
        except:
            await message.answer('Что-то пошло не так....', reply_markup=ReplyKeyboardRemove())
    await state.finish()
Exemplo n.º 4
0
async def answer_q1(message: types.Message, state: FSMContext):
    try:
        answer = message.text
        cid = get_cid_by_name(answer)
        grades = get_my_grades(message.from_user.id, cid, 1)
        g = []
        for i in grades:
            g.append(i[3])
        strgrades = str(g)
        await message.answer("Ваши оценки " + strgrades, reply_markup=ReplyKeyboardRemove())
    except:
        await message.answer('Что-то пошло не так....')
    await state.finish()
Exemplo n.º 5
0
async def answer_q1(message: types.Message, state: FSMContext):
    answer = message.text
    try:
        cid = get_cid_by_name(answer)
        check = check_telegramdi_in_student_course(message.from_user.id, cid)
        if check:
            await message.answer("Вы уже записаны на курс!", reply_markup=ReplyKeyboardRemove())
        else:
            try:
                join_to_course(message.from_user.id, cid)
                await message.answer("Вы записаны на курс " + answer, reply_markup=ReplyKeyboardRemove())
            except:
                await message.answer("Сначала зарегистрируйся в системе! Введи /reg",
                                     reply_markup=ReplyKeyboardRemove())
    except:
        await message.answer("Попробуйте еще раз", reply_markup=ReplyKeyboardRemove())
    await state.finish()
Exemplo n.º 6
0
async def answer_q1(message: types.Message, state: FSMContext):
    try:
        answer = message.text
        cid = get_cid_by_name(answer)
        list_of_students = get_list_of_student_from_cours(cid)
        list_of_all_grades = []
        for student in list_of_students:
            list_of_all_grades = list_of_all_grades + [
                i[3] for i in get_my_grades(student[0], cid, 1)
            ]
        if len(list_of_all_grades) == 0:
            await message.answer("По данному предмету не выставленны оценки")
        else:
            await message.answer(
                "Средняя оценка по курсу: " +
                str(sum(list_of_all_grades) / len(list_of_all_grades)))
    except:
        await message.answer('Что-то пошло не так...')
    await state.finish()
Exemplo n.º 7
0
async def answer_q1(message: types.Message, state: FSMContext):
    try:
        # получаем ответ
        answer = message.text
        # проверяем входные параметры
        cid = get_cid_by_name(answer)
        grades = get_my_grades(message.from_user.id, cid, 1)
        # Получаем оценки
        g = []
        for i in grades:
            g.append(i[3])
        # считаем среднее арифметическое
        if len(g) != 0:
            stats = sum(g)/len(g)
        else:
            stats = 0
        # Отсылаем ответ пользователю
        await message.answer("Ваша средняя оценка по курсу " + stats, reply_markup=ReplyKeyboardRemove())
    except:
        await message.answer('Что-то пошло не так....')
    await state.finish()
Exemplo n.º 8
0
async def answer_q1(message: types.Message, state: FSMContext):
    try:
        answer = message.text
        cid = get_cid_by_name(answer)
        list_of_students = get_list_of_student_from_cours(cid)
        list_of_student_marks = []
        for student in list_of_students:
            grades = [i[3] for i in get_my_grades(student[0], cid, 1)]
            if len(grades) == 0:
                list_of_student_marks.append((student[0], 0))
            else:
                list_of_student_marks.append(
                    (student[0], sum(grades) / len(grades)))
        top5 = sorted(list_of_student_marks,
                      key=lambda res: res[1],
                      reverse=True)[:5]
        result = ""
        for res in top5:
            info = get_info_about_me(res[0])[0]
            result = result + f"{info[1]} {info[2]} : {res[1]}\n"
        await message.answer("Топ 5 студентов по оценкам:\n" + result)
    except:
        await message.answer('Что-то пошло не так...')
    await state.finish()