[ВОЛК] загрузка всех событий по всем категориям и соответствующая кнопка
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2025-11-15 21:11:14 +03:00
parent 2c84256634
commit 4a58a80401
3 changed files with 116 additions and 1 deletions
+58
View File
@@ -378,6 +378,64 @@ def load_events_by_category(category_id):
cursor.close()
connection.close()
def load_all_events():
"""Экспортируемая функция для загрузки всех событий по всем категориям"""
try:
log_message("Начало загрузки всех событий по всем категориям")
# Подключение к базе данных
connection = mysql.connector.connect(
host=MDB_HOST,
user=MDB_USER,
password=MDB_PW,
database=MDBASE
)
cursor = connection.cursor(dictionary=True)
# Получаем список всех категорий
cursor.execute("SELECT ID FROM categories ORDER BY ID")
categories = cursor.fetchall()
if not categories:
log_message("В базе данных нет категорий для загрузки событий", "WARNING")
cursor.close()
connection.close()
return
log_message(f"Найдено {len(categories)} категорий для обработки")
# Закрываем соединение перед вызовами load_events_by_category
# (так как она создает свое соединение)
cursor.close()
connection.close()
# Загружаем события для каждой категории
processed_count = 0
for category in categories:
category_id = category['ID']
try:
log_message(f"Обработка категории {category_id} ({processed_count + 1}/{len(categories)})")
load_events_by_category(category_id)
processed_count += 1
except Exception as e:
error_msg = f"Ошибка при загрузке событий для категории {category_id}: {e}"
log_message(error_msg, "ERROR")
print(error_msg)
# Продолжаем обработку других категорий
continue
log_message(f"Завершение загрузки всех событий. Обработано категорий: {processed_count}/{len(categories)}")
except Error as e:
error_msg = f"Ошибка базы данных при загрузке всех событий: {e}"
log_message(error_msg, "ERROR")
print(error_msg)
except Exception as e:
error_msg = f"Общая ошибка при загрузке всех событий: {e}"
log_message(error_msg, "ERROR")
print(error_msg)
if __name__ == "__main__":
load_categories()