обновление бд

This commit is contained in:
student 2025-03-17 15:07:41 +07:00
parent fe0d560079
commit d3ff267d26

View File

@ -57,6 +57,9 @@ class Program
throw; throw;
} }
// Создание базы данных и таблицы, если они не существуют
await CreateDatabaseIfNotExists();
var cts = new CancellationTokenSource(); var cts = new CancellationTokenSource();
Log.Information("Начало получения обновлений..."); Log.Information("Начало получения обновлений...");
@ -96,7 +99,7 @@ class Program
chatId: message.Chat.Id, chatId: message.Chat.Id,
text: "Привет! Я бот для сбора заявок на ремонт оборудования. Отправь /report для подачи заявки." text: "Привет! Я бот для сбора заявок на ремонт оборудования. Отправь /report для подачи заявки."
); );
Log.Information($"Ответ на команду /start отправлен. ТЕКСТ ОТВЕТА: Привет! Я бот для сбора заявок на ремонт оборудования. Отправь /report для подачи заявки."); Log.Information($"Ответ на команду /start отправлен.");
} }
else if (message.Text == "/report") else if (message.Text == "/report")
{ {
@ -170,6 +173,39 @@ class Program
} }
} }
private static async Task CreateDatabaseIfNotExists()
{
string connectionString = "Data Source=bot.db"; // Путь к вашей базе данных
try
{
using (var connection = new SqliteConnection(connectionString))
{
await connection.OpenAsync();
// Создание таблицы Reports, если она не существует
var createTableCommand = connection.CreateCommand();
createTableCommand.CommandText =
@"
CREATE TABLE IF NOT EXISTS Reports (
Id INTEGER PRIMARY KEY AUTOINCREMENT,
ChatId INTEGER NOT NULL,
Description TEXT NOT NULL,
DateCreated DATETIME DEFAULT CURRENT_TIMESTAMP,
Status TEXT DEFAULT 'В процессе'
);
";
await createTableCommand.ExecuteNonQueryAsync();
Log.Information("Таблица Reports успешно создана (если её не было).");
}
}
catch (Exception ex)
{
Log.Error($"Ошибка при создании таблицы в базе данных: {ex.Message}");
}
}
private static Task HandleErrorAsync(ITelegramBotClient botClient, Exception exception, CancellationToken cancellationToken) private static Task HandleErrorAsync(ITelegramBotClient botClient, Exception exception, CancellationToken cancellationToken)
{ {
Log.Error($"Ошибка в процессе работы с ботом: {exception.Message}"); Log.Error($"Ошибка в процессе работы с ботом: {exception.Message}");