[ВОЛК] загрузка всех событий по всем категориям и соответствующая кнопка
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
@@ -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()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user