From 8c10970d1c2d3e7d017bd7da5af776127fb771d0 Mon Sep 17 00:00:00 2001 From: 107 <107@DESKTOP-UP8U7M2> Date: Fri, 21 Mar 2025 10:14:10 +0700 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B2=20=D0=B0=D0=B4=D0=BC=D0=B8=D0=BD-=D0=BF?= =?UTF-8?q?=D0=B0=D0=BD=D0=B5=D0=BB=D0=B8=20=D0=B8=20=D1=83=D0=B4=D0=B0?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D0=B8=20=D0=BE=D1=82=D1=87=D0=B5=D1=82?= =?UTF-8?q?=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Изменено условие для удаления всех отчетов с проверки на `admins` на `superAdmins`. Добавлены кнопки подтверждения удаления отчетов. Обновлена структура клавиатуры в методе `SendAdminPanel`, добавлены кнопки для суперадминов и кнопка возврата в главное меню. Введен новый метод `ViewReports` для отображения отчетов. --- Program.cs | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/Program.cs b/Program.cs index b8d212e..90ed349 100644 --- a/Program.cs +++ b/Program.cs @@ -610,7 +610,7 @@ class Program else if (data == "delete_all_reports") { - if (admins.Contains(chatId)) + if (superAdmins.Contains(chatId)) { var confirmKeyboard = new InlineKeyboardMarkup(new[] { @@ -619,7 +619,7 @@ class Program InlineKeyboardButton.WithCallbackData("✅ Подтвердить", "confirm_delete_all_reports"), InlineKeyboardButton.WithCallbackData("❌ Отмена", "admin_panel") } - }); + }); await botClient.SendMessage( chatId: chatId, @@ -635,6 +635,7 @@ class Program } } + else if (data == "confirm_delete_all_reports") { if (admins.Contains(chatId)) @@ -1085,8 +1086,8 @@ class Program private static async Task SendAdminPanel(ITelegramBotClient botClient, long chatId) { - var keyboard = new InlineKeyboardMarkup(new[] - { + var buttonsRows = new List + { new[] { InlineKeyboardButton.WithCallbackData("📋 Менеджер заявок", "view_reports"), @@ -1094,17 +1095,26 @@ class Program }, new[] { - InlineKeyboardButton.WithCallbackData("⚙️ Управление администраторами", "admin_settings") - }, - new[] - { - InlineKeyboardButton.WithCallbackData("❌ Удалить все заявки", "delete_all_reports") - }, - new[] - { - InlineKeyboardButton.WithCallbackData("🏠 Главное меню", "main_menu") + InlineKeyboardButton.WithCallbackData("⚙️ Личный кабинет", "admin_settings") } - }); + }; + + // Добавлять кнопку "Удалить все заявки" только для суперадминов + if (superAdmins.Contains(chatId)) + { + buttonsRows.Add(new[] + { + InlineKeyboardButton.WithCallbackData("❌ Удалить все заявки", "delete_all_reports") + }); + } + + // Кнопка возврата в главное меню + buttonsRows.Add(new[] + { + InlineKeyboardButton.WithCallbackData("🏠 Главное меню", "main_menu") + }); + + var keyboard = new InlineKeyboardMarkup(buttonsRows); await botClient.SendMessage( chatId: chatId, @@ -1116,6 +1126,8 @@ class Program + + private static async Task ViewReports(ITelegramBotClient botClient, long chatId) { string connectionString = "Data Source=bot.db";