async def step_getcost(message: types.Message, state: FSMContext): number = message.contact.phone_number dbfunc.edit_user_tel(message.from_user.id, number) data = await state.get_data() if data['dostavka']: dost = "курьером" else: dost = "самовывоз" mes_text = "Заказ оформлен.\nВ ближайшее время с вами свяжется оператор\n\n" nzak = dbfunc.add_zakaz(message.from_user.id, "Ожидает подтверждения", dost) mes_text += f"Номер заказа: {str(nzak)}\nСпособ получения: {dost}\nСтатус: обрабатывается\n=======\n" iter = 0 cash = 0 rows = dbfunc.get_card(message.from_user.id) if len(rows): for elem in rows: iter += 1 cash += int(elem[3]) * int(elem[4]) mes_text += f'{str(iter)}. {elem[2]}: {str(elem[3])}шт. ({str(int(elem[3]) * int(elem[4]))})\n' cash += fastdb.DOSTAVKA_COST mes_text += "=======\n" mes_text += "Доставка: " + str(fastdb.DOSTAVKA_COST) + 'р.' mes_text += f"\nК оплате: {str(cash)}р." await message.answer(mes_text, reply_markup=keyboards.get_main_menu_rkeyb(fastdb.is_admin(message.from_user.id))) admin_text = "Номер телефона: " + str(dbfunc.get_num_fromuser(message.from_user.id)) admin_text += mes_text await misc.bot.send_message(chat_id=538011007, text=admin_text, reply_markup=keyboards.get_admin_zakazcontrol_ikeyb()) dbfunc.delete_card(message.from_user.id)
async def process_callback(callback_query: types.CallbackQuery, state: FSMContext): if dbfunc.is_usertel_added(callback_query.from_user.id): await state.update_data(dostavka=False) mes_text = "Заказ оформлен.\nВ ближайшее время с вами свяжется оператор\n\n" nzak = dbfunc.add_zakaz(callback_query.from_user.id, "Ожидает подтверждения", 'самовывоз') mes_text += f"Номер заказа: {str(nzak)}\nСпособ получения: самовывоз\nСтатус: обрабатывается\n=======\n" iter = 0 cash = 0 rows = dbfunc.get_card(callback_query.from_user.id) print(rows) if rows: for elem in rows: iter += 1 cash += int(elem[3]) * int(elem[4]) mes_text += f'{str(iter)}. {elem[2]}: {str(elem[3])}шт. ({str(int(elem[3]) * int(elem[4]))})\n' mes_text += "=======\n" mes_text += f"\nК оплате: {str(cash)}р." await callback_query.message.edit_text(mes_text) admin_text = "Номер телефона: " + str(dbfunc.get_num_fromuser(callback_query.from_user.id)) admin_text += mes_text await misc.bot.send_message(chat_id=538011007, text=admin_text, reply_markup=keyboards.get_admin_zakazcontrol_ikeyb()) else: mes_text = "Для подтверждения заказа понадобится ваш ваш номер телефона. Нажмите на кнопку" keyb = ReplyKeyboardMarkup(resize_keyboard=True) keyb.add(KeyboardButton("отправить мой номер", request_contact=True)) await callback_query.message.answer(mes_text, reply_markup=keyb) dbfunc.delete_card(callback_query.from_user.id)
async def send_catalog(message: types.Message): mes_text = '' iter = 0 cash = 0 rows = dbfunc.get_card(message.from_user.id) if len(rows): for elem in rows: iter += 1 cash += int(elem[3]) * int(elem[4]) mes_text += f'{str(iter)}. {elem[2]}: {str(elem[3])}шт. ({str(int(elem[3]) * int(elem[4]))})\n' mes_text += f'\nОбщая сумма: {str(cash)}р.' await message.answer(mes_text, reply_markup=keyboards.get_card_ikeyb()) else: mes_text += 'Корзина пуста' mes_text += f'\nОбщая сумма: {str(cash)}р.' await message.answer(mes_text) await Card.card_wait.set()
async def process_callback(callback_query: types.CallbackQuery, state: FSMContext): mes_text = '' iter = 0 cash = 0 rows = dbfunc.get_card(callback_query.from_user.id) if len(rows): for elem in rows: iter += 1 cash += int(elem[3]) * int(elem[4]) mes_text += f'{str(iter)}. {elem[2]}: {str(elem[3])}шт. ({str(int(elem[3]) * int(elem[4]))})\n' mes_text += f'\nОбщая сумма: {str(cash)}р.' await callback_query.answer(mes_text, reply_markup=keyboards.get_card_ikeyb()) else: mes_text += 'Корзина пуста' mes_text += f'\nОбщая сумма: {str(cash)}р.' await callback_query.answer(mes_text) await Card.card_wait.set()
def send_card(uid: int): data = dbfunc.get_card(uid) mes_text = 'Корзина\n=========\n' iter = 0 for card_pos in data: iter += 1