From 71df03c121cc33883046f6191b28d6e1614485c5 Mon Sep 17 00:00:00 2001 From: Professional Date: Tue, 6 May 2025 19:37:13 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D0=BF=D1=83=D1=82=D0=B8=20=D0=BA=20=D0=B1=D0=B0?= =?UTF-8?q?=D0=B7=D0=B5=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85=20=D0=B2=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=B4=D0=B5=20=D0=B8=20=D0=B8=D0=B7=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D1=8B=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE?= =?UTF-8?q?=D0=B9=D0=BA=D0=B8=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D1=82=D0=B5=D0=BB=D1=8F=20=D0=B2=20docker-compose.=20?= =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=20=D1=84=D0=B0=D0=B9=D0=BB?= =?UTF-8?q?=20=D0=B1=D0=B0=D0=B7=D1=8B=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B?= =?UTF-8?q?=D1=85.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env | 2 +- Program.cs | 50 +++++++++++++++++++++++----------------------- data/bot.db | 0 docker-compose.yml | 4 +--- 4 files changed, 27 insertions(+), 29 deletions(-) create mode 100644 data/bot.db diff --git a/.env b/.env index d8e9de1..3ecd959 100644 --- a/.env +++ b/.env @@ -1,4 +1,4 @@ BOT_TOKEN=8077782035:AAFGLfpleGNbghm7uwO5-sLrjdauCfk2WRk ADMIN_PASSWORD=admin123 SUPER_ADMIN_PASSWORD=superadmin123 -DATABASE_PATH=bot.db \ No newline at end of file +DATABASE_PATH=/app/data/bot.db \ No newline at end of file diff --git a/Program.cs b/Program.cs index b0b9e31..9f7ab91 100644 --- a/Program.cs +++ b/Program.cs @@ -120,7 +120,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -216,7 +216,7 @@ class Program private static async Task ViewUserReports(ITelegramBotClient botClient, long chatId) { - string connectionString = "Data Source=bot.db"; + string connectionString = $"Data Source={_databasePath}"; try { @@ -277,7 +277,7 @@ class Program // Получаем текущие настройки пользователя bool notificationsEnabled = true; // По умолчанию уведомления включены - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -930,7 +930,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -962,7 +962,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1015,7 +1015,7 @@ class Program // Проверяем настройки пользователя bool notificationsEnabled = true; // По умолчанию уведомления включены - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1056,7 +1056,7 @@ class Program { // Проверка текущего состояния перед изменением bool currentState = true; - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var checkCommand = connection.CreateCommand(); @@ -1079,7 +1079,7 @@ class Program Log.Information($"[Отладка] Переключение уведомлений для пользователя {chatId}: action={action}, новое значение={newValue}, значение в БД={dbValue}"); - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1096,7 +1096,7 @@ class Program } // Проверка после изменения - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var checkCommand = connection.CreateCommand(); @@ -1207,7 +1207,7 @@ class Program private static async Task ViewReports(ITelegramBotClient botClient, long chatId) { - string connectionString = "Data Source=bot.db"; + string connectionString = $"Data Source={_databasePath}"; try { @@ -1264,7 +1264,7 @@ class Program private static async Task ViewArchivedReports(ITelegramBotClient botClient, long chatId) { - string connectionString = "Data Source=bot.db"; + string connectionString = $"Data Source={_databasePath}"; try { @@ -1330,7 +1330,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1470,7 +1470,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); @@ -1528,7 +1528,7 @@ class Program // Настройки уведомлений для всех типов администраторов bool notifyOnPendingReports = true; - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1588,7 +1588,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1618,7 +1618,7 @@ class Program string room = ""; string changerFullName = adminFullNames[changerId]; - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1684,7 +1684,7 @@ class Program long userChatId = 0; // Сначала получаем текущий статус и chatId пользователя - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var getStatusCommand = connection.CreateCommand(); @@ -1704,7 +1704,7 @@ class Program if (oldStatus == newStatus) return; // Обновляем статус и сохраняем ID администратора - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -1746,7 +1746,7 @@ class Program private static async Task SaveReportToDatabase(long chatId, Report report) { - string connectionString = "Data Source=bot.db"; // Используем SQLite + string connectionString = $"Data Source={_databasePath}"; // Используем переменную _databasePath try { @@ -1790,7 +1790,7 @@ class Program // Обновляем метод CreateDatabaseIfNotExists private static async Task CreateDatabaseIfNotExists() { - string connectionString = "Data Source=bot.db"; // Путь к вашей базе данных + string connectionString = $"Data Source={_databasePath}"; // Путь к вашей базе данных try { @@ -1966,7 +1966,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); @@ -2049,7 +2049,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); @@ -2091,7 +2091,7 @@ class Program { try { - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); @@ -2140,7 +2140,7 @@ class Program // Получаем список всех администраторов из базы данных var adminsList = new List<(long chatId, string username, bool isSuperAdmin)>(); - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); @@ -2260,7 +2260,7 @@ class Program string priority = ""; string room = ""; - using (var connection = new SqliteConnection("Data Source=bot.db")) + using (var connection = new SqliteConnection($"Data Source={_databasePath}")) { await connection.OpenAsync(); var command = connection.CreateCommand(); diff --git a/data/bot.db b/data/bot.db new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose.yml b/docker-compose.yml index d1f6617..3a6f92c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,9 +13,7 @@ services: volumes: - ./data:/app/data:rw - ./logs:/app/logs:rw - user: "1000:1000" - environment: - - DATABASE_PATH=/app/data/bot.db + user: "root"