revert 3af560386ddebe5418525ee4dbf4845a7e1ea08d

revert тест кнопки
This commit is contained in:
denis 2025-03-19 09:51:27 +03:00
parent 3af560386d
commit 59ddf245ff

View File

@ -90,45 +90,54 @@ class Program
{ {
try try
{ {
if (update.Type == UpdateType.Message && update.Message?.Text != null) if (update.Type != UpdateType.Message || update.Message?.Text == null)
return;
var message = update.Message;
Log.Information($"Получено сообщение от {message.Chat.Id}: {message.Text}");
if (message.Text == "/start")
{ {
var message = update.Message; // Отправляем главное меню с кнопками
Log.Information($"Получено сообщение от {message.Chat.Id}: {message.Text}"); var keyboard = new InlineKeyboardMarkup(new[]
if (message.Text == "/start")
{ {
var keyboard = new InlineKeyboardMarkup(new[] { new InlineKeyboardButton[] // Кнопки для навигации
new InlineKeyboardButton[] {
{ InlineKeyboardButton.WithCallbackData("Подать заявку", "report"),
InlineKeyboardButton.WithCallbackData("Подать заявку", "report"), InlineKeyboardButton.WithCallbackData("Просмотр заявок", "view_reports")
InlineKeyboardButton.WithCallbackData("Просмотр заявок", "view_reports") }
} });
});
await botClient.SendMessage( await botClient.SendMessage(
chatId: message.Chat.Id, chatId: message.Chat.Id,
text: "Привет! Я бот для сбора заявок на ремонт оборудования.", text: "Привет! Я бот для сбора заявок на ремонт оборудования.",
replyMarkup: keyboard replyMarkup: keyboard
); );
Log.Information($"Ответ на команду /start с кнопками отправлен."); Log.Information($"Ответ на команду /start с кнопками отправлен.");
}
} }
else if (update.Type == UpdateType.CallbackQuery) // Обработка callback else if (message.Text == "report")
{ {
var callbackQuery = update.CallbackQuery; usersWaitingForReport[message.Chat.Id] = true; // Отметить, что пользователь должен отправить описание
if (callbackQuery.Data == "report") await botClient.SendMessage(chatId: message.Chat.Id, text: "Пожалуйста, отправьте описание проблемы.");
{ Log.Information("Ответ на кнопку 'Подать заявку' отправлен.");
usersWaitingForReport[callbackQuery.Message.Chat.Id] = true; }
await botClient.SendMessage(chatId: callbackQuery.Message.Chat.Id, text: "Пожалуйста, отправьте описание проблемы."); else if (admins.Contains(message.Chat.Id) && message.Text == "view_reports")
Log.Information("Ответ на кнопку 'Подать заявку' отправлен."); {
} await ViewReports(botClient, message.Chat.Id);
else if (callbackQuery.Data == "view_reports" && admins.Contains(callbackQuery.Message.Chat.Id)) }
{ else if (usersWaitingForReport.ContainsKey(message.Chat.Id) && usersWaitingForReport[message.Chat.Id])
await ViewReports(botClient, callbackQuery.Message.Chat.Id); {
} string problemDescription = message.Text;
await SaveReportToDatabase(message.Chat.Id, problemDescription);
// Не забывайте отправить ответ на callback, чтобы Telegram не просил повторно нажать кнопку await botClient.SendMessage(chatId: message.Chat.Id, text: "Спасибо за заявку! Мы обработаем её в ближайшее время.");
await botClient.AnswerCallbackQueryAsync(callbackQuery.Id); usersWaitingForReport[message.Chat.Id] = false;
Log.Information($"Заявка пользователя {message.Chat.Id} сохранена в базе данных.");
}
else
{
// Ответ на нераспознанные сообщения
await botClient.SendMessage(chatId: message.Chat.Id, text: "Неизвестная команда. Используйте кнопки для навигации.");
Log.Information("Ответ на неизвестную команду с кнопками отправлен.");
} }
} }
catch (Exception ex) catch (Exception ex)