Fix: Delete order button now responds correctly
Root cause: Callback was answered twice (line 68 + HandleDeleteOrder) - Telegram only allows answering callback query once - Second attempt threw exception, preventing message edit - Removed duplicate AnswerCallbackQueryAsync calls from HandleDeleteOrder - Added proper error message for failed delete attempts - Now shows success/failure via message edit instead of callback answer 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
7806bb2392
commit
4c6a1f10d6
@ -1243,15 +1243,24 @@ namespace TeleBot.Handlers
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
await bot.AnswerCallbackQueryAsync(callbackQuery.Id, "Order deleted successfully");
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
await bot.AnswerCallbackQueryAsync(
|
await bot.EditMessageTextAsync(
|
||||||
callbackQuery.Id,
|
callbackQuery.Message!.Chat.Id,
|
||||||
"Failed to delete order. It may have already been processed.",
|
callbackQuery.Message.MessageId,
|
||||||
showAlert: true
|
"❌ *Failed to Delete Order*\n\n" +
|
||||||
|
"This order may have already been processed and cannot be cancelled.\n\n" +
|
||||||
|
"Only orders in 'Pending Payment' status can be deleted.",
|
||||||
|
parseMode: Telegram.Bot.Types.Enums.ParseMode.Markdown,
|
||||||
|
replyMarkup: new InlineKeyboardMarkup(new[]
|
||||||
|
{
|
||||||
|
new[]
|
||||||
|
{
|
||||||
|
InlineKeyboardButton.WithCallbackData("⬅️ Back to Orders", "orders"),
|
||||||
|
InlineKeyboardButton.WithCallbackData("🏠 Main Menu", "menu")
|
||||||
|
}
|
||||||
|
})
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user