Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @dp.callback_query_handler(lambda callback_query: '<check_qiwi_bill>' in callback_query.data)
- async def check_qiwi_bill(query: types.CallbackQuery):
- bot_id = (await bot.get_me()).id
- owner_id = await database.get_owner_id_by_bot_id(bot_id)
- payment_data = (await database.get_active_payment_system(belongs=owner_id))[-1]
- bill_id = query.data.split(':')[-1]
- status_qiwi = payment_data.get('qiwi_active_status', False)
- qiwi_p2p_token = payment_data.get('api_qiwi_token', False)
- if status_qiwi and qiwi_p2p_token:
- kassa = QiwiKassa(qiwi_p2p_token)
- status = kassa.check_bill(bill_id=bill_id)
- if status.is_paid:
- balance_to_add = Decimal(status.amount.value)
- user_data = (await database.get_bot_user_data(chat_id=query.from_user.id, belongs=owner_id))[-1]
- old_balance = user_data.get('balance')
- new_balance = old_balance + balance_to_add
- await database.update_balance_bot_user(chat_id=query.from_user.id, belongs=owner_id,
- new_balance=new_balance)
- await database.update_all_time_balance_user_bot(added_balance=balance_to_add, belongs=owner_id,
- chat_id=query.from_user.id)
- text = f"""Вы успешно пополнили Ваш счет на {status.amount.value}
- Ваш баланс на данный момент: {new_balance}
- """
- await bot.edit_message_text(message_id=query.message.message_id, chat_id=query.from_user.id, text=text)
- else:
- text = """Вы не оплатили счет. Попробуйте еще раз."""
- await query.answer(text=text)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement