обработка двойной смены статуса

Улучшено форматирование и добавлен метод обновления статуса

Внесены изменения в форматирование массива кнопок в `InlineKeyboardMarkup` для улучшения читаемости. Изменен порядок аргументов в методе `EditMessageText`. Добавлен новый метод `UpdateReportStatus` для обновления статуса отчета с обработкой исключений и подключением к базе данных SQLite.
This commit is contained in:
Professional 2025-03-19 16:06:46 +07:00
parent 81201d8b69
commit dc1277f0e5

View File

@ -301,28 +301,28 @@ class Program
var statusButtons = new InlineKeyboardMarkup(new[] var statusButtons = new InlineKeyboardMarkup(new[]
{ {
new[] new[]
{ {
InlineKeyboardButton.WithCallbackData("🟡 Ожидает", $"status_{reportId}_ожидает"), InlineKeyboardButton.WithCallbackData("🟡 Ожидает", $"status_{reportId}_ожидает"),
InlineKeyboardButton.WithCallbackData("🔵 В работе", $"status_{reportId}_в работе") InlineKeyboardButton.WithCallbackData("🔵 В работе", $"status_{reportId}_в работе")
}, },
new[] new[]
{ {
InlineKeyboardButton.WithCallbackData("🟢 Закрыта", $"status_{reportId}_закрыта") InlineKeyboardButton.WithCallbackData("🟢 Закрыта", $"status_{reportId}_закрыта")
}, },
new[] new[]
{ {
InlineKeyboardButton.WithCallbackData("Назад", "back_to_list"), InlineKeyboardButton.WithCallbackData("Назад", "back_to_list"),
InlineKeyboardButton.WithCallbackData("Главное меню", "main_menu") InlineKeyboardButton.WithCallbackData("Главное меню", "main_menu")
} }
}); });
await botClient.EditMessageText( 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
); );
} }
} }
@ -334,6 +334,7 @@ class Program
} }
} }
private static async Task UpdateReportStatus(long reportId, string newStatus) private static async Task UpdateReportStatus(long reportId, string newStatus)
{ {
try try