Пример #1
0
def confirm_sub(mes: types.Message):
    if mes.text == 'Подтвердить ✅':
        price = db_acces.get_price_for_new_channel(mes.from_user.id)
        count = db_acces.get_sub_for_new_channel(mes.from_user.id)
        end_price = price * count
        balance = db_acces.get_user_balance(mes.from_user.id)
        if (balance - end_price) >= 0:
            db_acces.set_user_balance(mes.from_user.id, balance - end_price)
            db_acces.publish_channel_order(mes.from_user.id)
            bot.send_message(mes.from_user.id,
                             'Ваш заказ успешно оформлен!',
                             reply_markup=get_main_menu_markup())
            db_acces.set_user_state(mes.from_user.id, states.CHOOSE_OPTION)
        else:
            bot.send_message(
                mes.from_user.id,
                'Недостаточно средств! Пополните свой баланс и повторите заказ снова',
                reply_markup=get_main_menu_markup())
            db_acces.delete_post_order(mes.from_user.id)
            db_acces.set_user_state(mes.from_user.id, states.CHOOSE_OPTION)
    elif mes.text == 'Отмена':
        bot.send_message(mes.from_user.id,
                         'Отменено',
                         reply_markup=get_main_menu_markup())
        db_acces.delete_post_order(mes.from_user.id)
        db_acces.set_user_state(mes.from_user.id, states.CHOOSE_OPTION)
    else:
        bot.send_message(mes.from_user.id,
                         'Какой-то странный ответ. Попробуйте еще раз')
Пример #2
0
def set_price_for_watch(mes: types.Message):
    if not mes.text == 'Отмена':
        try:
            price = float(mes.text)
        except ValueError:
            bot.send_message(mes.from_user.id,
                             'Неверное значение. Попробуйте еще раз')
        else:
            if price >= 0.04:
                bot.send_message(
                    mes.from_user.id,
                    'Отлично! Теперь введите желаемое количество просмотров',
                    reply_markup=types.ReplyKeyboardRemove())
                db_acces.set_price_for_new_post(mes.from_user.id, price)
                db_acces.set_user_state(mes.from_user.id,
                                        states.SET_COUNT_OF_WATCH)
            else:
                bot.send_message(mes.from_user.id,
                                 'Минимальная стоимость просмотра: 0.04р')
    else:
        db_acces.set_user_state(mes.from_user.id, states.CHOOSE_OPTION)
        db_acces.delete_post_order(mes.from_user.id)
        bot.send_message(mes.from_user.id,
                         'Отменено',
                         reply_markup=get_main_menu_markup())