Для криптобота так же пофиксил

This commit is contained in:
root
2025-11-30 18:13:00 +03:00
parent 12c60b884a
commit 0d9a86ee54

View File

@@ -310,25 +310,50 @@ async def method_crypto_handler(callback: CallbackQuery):
Заглушка: оплата через CryptoBot.
"""
amount = callback.data.split("_")[-1]
data = {"user_id": callback.from_user.id, "amount": amount, "provider": "cryptobot"}
result = await call_api("POST", "billing/payments/init", data,"http://billing:8000/")
endpoint = f"/billing/payments/init?user_id={callback.from_user.id}&amount={float(amount)}&provider=cryptobot"
logger.info(f"Отправка запроса на инициализацию платежа: {endpoint}")
# Отправляем POST запрос с пустым телом (параметры в URL)
result = await call_api("POST", endpoint, None, "http://billing:8000")
if result == "ERROR":
await callback.message.edit_text(
"❌ Произошла ошибка при создании платежа. Попробуйте позже."
)
await callback.answer()
return
# Проверяем успешность операции
if not result.get("success", False):
error_msg = result.get("error", "Неизвестная ошибка")
await callback.message.edit_text(
f"❌ Ошибка: {error_msg}"
)
await callback.answer()
return
payment_url = result.get("confirmation_url", "#")
payment_id = result.get("payment_id", "")
await callback.message.edit_text(
f"💵 <b>🪙 Оплата через CryptoBot</b>\n\n"
f"💵 <b>Оплата через Сryptobot</b>\n\n"
f"💰 Сумма: <code>{amount}</code> руб\n"
f"📋 ID платежа: <code>{payment_id}</code>\n\n"
f"➡️ <a href='{payment_url}'>Перейти к оплате</a>\n\n"
f"<i>После оплаты нажмите кнопку 'Проверить оплату'</i>",
parse_mode="HTML",
disable_web_page_preview=True
)
await callback.message.edit_text(
f" {amount} ₽ пока в разработке.\n\n"
"Платёжный шлюз будет добавлен позже.",
disable_web_page_preview=True,
reply_markup=types.InlineKeyboardMarkup(
inline_keyboard=[[
types.InlineKeyboardButton(
text="🔄 Проверить оплату",
callback_data=f"check_payment:{payment_id}"
)]
]
)
)
await callback.answer()