This commit is contained in:
Professional 2025-03-19 15:54:05 +07:00
parent c15631e4a4
commit 20a14bd7f6

View File

@ -94,11 +94,18 @@ class Program
if (update.Type == UpdateType.CallbackQuery) if (update.Type == UpdateType.CallbackQuery)
{ {
var callbackQuery = update.CallbackQuery; var callbackQuery = update.CallbackQuery;
if (callbackQuery?.From != null)
{
long chatId = callbackQuery.From.Id; long chatId = callbackQuery.From.Id;
string data = callbackQuery.Data; string? data = callbackQuery.Data;
if (callbackQuery?.Message?.MessageId != null)
{
int messageId = callbackQuery.Message.MessageId; int messageId = callbackQuery.Message.MessageId;
// Your existing code here
}
int callbackMessageId = callbackQuery.Message.MessageId;
await botClient.AnswerCallbackQueryAsync(callbackQuery.Id); // Убираем "часики" у кнопки await botClient.AnswerCallbackQuery(callbackQuery.Id); // Убираем "часики" у кнопки
if (data == "report") if (data == "report")
{ {
@ -121,7 +128,7 @@ class Program
else if (data.StartsWith("report_")) else if (data.StartsWith("report_"))
{ {
long reportId = long.Parse(data.Substring(7)); long reportId = long.Parse(data.Substring(7));
await ShowReportDetails(botClient, chatId, reportId, messageId); await ShowReportDetails(botClient, chatId, reportId, callbackMessageId);
} }
else if (data.StartsWith("status_")) else if (data.StartsWith("status_"))
{ {
@ -129,7 +136,7 @@ class Program
long reportId = long.Parse(parts[1]); long reportId = long.Parse(parts[1]);
string newStatus = parts[2]; string newStatus = parts[2];
await UpdateReportStatus(reportId, newStatus); await UpdateReportStatus(reportId, newStatus);
await ShowReportDetails(botClient, chatId, reportId, messageId); await ShowReportDetails(botClient, chatId, reportId, callbackMessageId);
} }
else if (data == "back_to_list") else if (data == "back_to_list")
{ {
@ -139,7 +146,7 @@ class Program
{ {
await SendMainMenu(botClient, chatId); await SendMainMenu(botClient, chatId);
} }
return; }
} }
// Обработка текстовых сообщений // Обработка текстовых сообщений
@ -179,7 +186,7 @@ class Program
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 с кнопками отправлен.");
@ -204,6 +211,7 @@ class Program
} }
} }
private static async Task SendMainMenu(ITelegramBotClient botClient, long chatId) private static async Task SendMainMenu(ITelegramBotClient botClient, long chatId)
{ {
var keyboard = new InlineKeyboardMarkup(new[] var keyboard = new InlineKeyboardMarkup(new[]
@ -309,12 +317,13 @@ class Program
} }
}); });
await botClient.EditMessageTextAsync( await botClient.EditMessageText(
chatId: chatId, chatId: chatId,
messageId: messageId, messageId: messageId,
text: $"Заявка #{reportId}\n\nОписание: {description}\nСтатус: {status}", text: $"Заявка #{reportId}\n\nОписание: {description}\nСтатус: {status}",
replyMarkup: statusButtons replyMarkup: statusButtons
); );
} }
} }
} }