тест
This commit is contained in:
parent
c15631e4a4
commit
20a14bd7f6
101
Program.cs
101
Program.cs
@ -94,52 +94,59 @@ class Program
|
||||
if (update.Type == UpdateType.CallbackQuery)
|
||||
{
|
||||
var callbackQuery = update.CallbackQuery;
|
||||
long chatId = callbackQuery.From.Id;
|
||||
string data = callbackQuery.Data;
|
||||
int messageId = callbackQuery.Message.MessageId;
|
||||
|
||||
await botClient.AnswerCallbackQueryAsync(callbackQuery.Id); // Убираем "часики" у кнопки
|
||||
|
||||
if (data == "report")
|
||||
if (callbackQuery?.From != null)
|
||||
{
|
||||
usersWaitingForReport[chatId] = true;
|
||||
await botClient.SendMessage(chatId, "Пожалуйста, отправьте описание проблемы.");
|
||||
Log.Information($"Пользователь {chatId} начал создание заявки");
|
||||
}
|
||||
else if (data == "view_reports")
|
||||
{
|
||||
if (admins.Contains(chatId))
|
||||
long chatId = callbackQuery.From.Id;
|
||||
string? data = callbackQuery.Data;
|
||||
if (callbackQuery?.Message?.MessageId != null)
|
||||
{
|
||||
int messageId = callbackQuery.Message.MessageId;
|
||||
// Your existing code here
|
||||
}
|
||||
int callbackMessageId = callbackQuery.Message.MessageId;
|
||||
|
||||
await botClient.AnswerCallbackQuery(callbackQuery.Id); // Убираем "часики" у кнопки
|
||||
|
||||
if (data == "report")
|
||||
{
|
||||
usersWaitingForReport[chatId] = true;
|
||||
await botClient.SendMessage(chatId, "Пожалуйста, отправьте описание проблемы.");
|
||||
Log.Information($"Пользователь {chatId} начал создание заявки");
|
||||
}
|
||||
else if (data == "view_reports")
|
||||
{
|
||||
if (admins.Contains(chatId))
|
||||
{
|
||||
await ViewReports(botClient, chatId);
|
||||
}
|
||||
else
|
||||
{
|
||||
await botClient.SendMessage(chatId, "⛔ Вы не являетесь администратором!");
|
||||
Log.Information($"Неавторизованный доступ к заявкам от {chatId}");
|
||||
}
|
||||
}
|
||||
else if (data.StartsWith("report_"))
|
||||
{
|
||||
long reportId = long.Parse(data.Substring(7));
|
||||
await ShowReportDetails(botClient, chatId, reportId, callbackMessageId);
|
||||
}
|
||||
else if (data.StartsWith("status_"))
|
||||
{
|
||||
string[] parts = data.Split('_');
|
||||
long reportId = long.Parse(parts[1]);
|
||||
string newStatus = parts[2];
|
||||
await UpdateReportStatus(reportId, newStatus);
|
||||
await ShowReportDetails(botClient, chatId, reportId, callbackMessageId);
|
||||
}
|
||||
else if (data == "back_to_list")
|
||||
{
|
||||
await ViewReports(botClient, chatId);
|
||||
}
|
||||
else
|
||||
else if (data == "main_menu")
|
||||
{
|
||||
await botClient.SendMessage(chatId, "⛔ Вы не являетесь администратором!");
|
||||
Log.Information($"Неавторизованный доступ к заявкам от {chatId}");
|
||||
await SendMainMenu(botClient, chatId);
|
||||
}
|
||||
}
|
||||
else if (data.StartsWith("report_"))
|
||||
{
|
||||
long reportId = long.Parse(data.Substring(7));
|
||||
await ShowReportDetails(botClient, chatId, reportId, messageId);
|
||||
}
|
||||
else if (data.StartsWith("status_"))
|
||||
{
|
||||
string[] parts = data.Split('_');
|
||||
long reportId = long.Parse(parts[1]);
|
||||
string newStatus = parts[2];
|
||||
await UpdateReportStatus(reportId, newStatus);
|
||||
await ShowReportDetails(botClient, chatId, reportId, messageId);
|
||||
}
|
||||
else if (data == "back_to_list")
|
||||
{
|
||||
await ViewReports(botClient, chatId);
|
||||
}
|
||||
else if (data == "main_menu")
|
||||
{
|
||||
await SendMainMenu(botClient, chatId);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// Обработка текстовых сообщений
|
||||
@ -179,7 +186,7 @@ class Program
|
||||
|
||||
await botClient.SendMessage(
|
||||
chatId: message.Chat.Id,
|
||||
text: "Привет! Я бот для сбора заявок на ремонт оборудования.",
|
||||
text: "Хай! Я бот для сбора заявок на ремонт оборудования.",
|
||||
replyMarkup: keyboard
|
||||
);
|
||||
Log.Information($"Ответ на команду /start с кнопками отправлен.");
|
||||
@ -204,6 +211,7 @@ class Program
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static async Task SendMainMenu(ITelegramBotClient botClient, long chatId)
|
||||
{
|
||||
var keyboard = new InlineKeyboardMarkup(new[]
|
||||
@ -309,12 +317,13 @@ class Program
|
||||
}
|
||||
});
|
||||
|
||||
await botClient.EditMessageTextAsync(
|
||||
chatId: chatId,
|
||||
messageId: messageId,
|
||||
text: $"Заявка #{reportId}\n\nОписание: {description}\nСтатус: {status}",
|
||||
replyMarkup: statusButtons
|
||||
);
|
||||
await botClient.EditMessageText(
|
||||
chatId: chatId,
|
||||
messageId: messageId,
|
||||
text: $"Заявка #{reportId}\n\nОписание: {description}\nСтатус: {status}",
|
||||
replyMarkup: statusButtons
|
||||
);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user