From 24c12d704cd4a2fbd8a8a91b7ce2097ff348543b Mon Sep 17 00:00:00 2001 From: Kirill Date: Sat, 29 Nov 2025 16:02:41 +0300 Subject: [PATCH] fixup! fix(DB): Added data to new db structure --- db/InitializeDBData.py | 103 +++++++++++++++++++++++++++++++---------- 1 file changed, 79 insertions(+), 24 deletions(-) diff --git a/db/InitializeDBData.py b/db/InitializeDBData.py index 0266a5a..1beeef0 100644 --- a/db/InitializeDBData.py +++ b/db/InitializeDBData.py @@ -13,17 +13,62 @@ def init_tables(db_name='pipe_store.db'): category_count = cursor.fetchone()[0] if category_count > 0: - log.info("Данные уже существуют в базе данных, пропускаем добавление") + log.info("Категории уже были добавлены в базу данных, пропускаем инициализацию") conn.close() return - log.info("Начинаем заполнение базы данных...") + log.info("Начинаем инициализацию базы категорий...") - main_category_id = add_category(conn, "Трубы ПВХ", "Трубы ПВХ для канализации") - internal_category_id = add_category(conn, "Для внутренней канализации", "Трубы для внутренней канализации", main_category_id) - external_category_id = add_category(conn, "Для наружной канализации", "Трубы для наружной канализации", main_category_id) + # Добавляем категории с распределением по страницам + # Страница 1 + main_category_id = add_category( + conn, + "Трубы ПВХ", + "Трубы ПВХ для канализационных систем", + image_path="/images/categories/pvc_pipes_main.jpg", + page_number=1 + ) - log.info("Категории созданы успешно") + # Страница 1 + internal_category_id = add_category( + conn, + "Для внутренней канализации", + "Трубы для внутренней канализационной системы", + main_category_id, + image_path="/images/categories/internal_pipes.jpg", + page_number=1 + ) + + # Страница 1 + external_category_id = add_category( + conn, + "Для наружной канализации", + "Трубы для наружной канализационной системы", + main_category_id, + image_path="/images/categories/external_pipes.jpg", + page_number=1 + ) + + # Дополнительные категории для демонстрации пагинации (страница 2) + add_category( + conn, + "Фитинги для ПВХ труб", + "Соединительные элементы для ПВХ труб", + main_category_id, + image_path="/images/categories/fittings.jpg", + page_number=2 + ) + + add_category( + conn, + "Колена и отводы", + "Угловые соединения для ПВХ труб", + main_category_id, + image_path="/images/categories/elbows.jpg", + page_number=2 + ) + + log.info("Категории успешно созданы") add_filter(conn, "Диаметр", "diameter", "multiple") add_filter(conn, "Длина", "length", "multiple") @@ -32,39 +77,49 @@ def init_tables(db_name='pipe_store.db'): add_filter(conn, "Класс жесткости", "stiffness_class", "single") add_filter(conn, "Толщина стенки", "wall_thickness", "multiple") - log.info("Фильтры добавлены успешно") + log.info("Фильтры успешно добавлены") + # Данные продуктов с распределением по страницам products_data = [ - "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), со сплошной внутренней стенкой толщиной 2,2 мм 110х2,2х500", - "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), со сплошной внутренней стенкой толщиной 2,2 мм 110х2,2х1000", - "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), со сплошной внутренней стенкой толщиной 2,2 мм 110х2,2х1500", - "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), со сплошной внутренней стенкой толщиной 2,2 мм 110х2,2х2000", - "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), со сплошной внутренней стенкой толщиной 2,2 мм 110х2,2х3000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN4 110х3,2х500", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN4 110х3,2х1000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN4 110х3,2х2000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN4 110х3,2х3000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN4 110х3,2х4000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN2 160х3,6х1000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN2 160х3,6х2000", - "Труба ПВХ для НАРУЖНОЙ канализации (цвет коричнево-оранжевый), со сплошной внутренней стенкой, класс жесткости SN2 160х3,6х3000" + # Страница 1 - внутренние трубы + {"text": "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), с внутренней структурной стенкой толщиной 2,2 мм 110х2,2х500", "image": "/images/products/internal_110_500.jpg", "page": 1}, + {"text": "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), с внутренней структурной стенкой толщиной 2,2 мм 110х2,2х1000", "image": "/images/products/internal_110_1000.jpg", "page": 1}, + {"text": "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), с внутренней структурной стенкой толщиной 2,2 мм 110х2,2х1500", "image": "/images/products/internal_110_1500.jpg", "page": 1}, + {"text": "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), с внутренней структурной стенкой толщиной 2,2 мм 110х2,2х2000", "image": "/images/products/internal_110_2000.jpg", "page": 1}, + {"text": "Труба ПВХ для ВНУТРЕННЕЙ канализации (цвет серый), с внутренней структурной стенкой толщиной 2,2 мм 110х2,2х3000", "image": "/images/products/internal_110_3000.jpg", "page": 1}, + + # Страница 1 - наружные трубы + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN4 110х3,2х500", "image": "/images/products/external_110_sn4_500.jpg", "page": 1}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN4 110х3,2х1000", "image": "/images/products/external_110_sn4_1000.jpg", "page": 1}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN4 110х3,2х2000", "image": "/images/products/external_110_sn4_2000.jpg", "page": 1}, + + # Страница 2 - оставшиеся наружные трубы + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN4 110х3,2х3000", "image": "/images/products/external_110_sn4_3000.jpg", "page": 2}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN4 110х3,2х4000", "image": "/images/products/external_110_sn4_4000.jpg", "page": 2}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN2 160х3,6х1000", "image": "/images/products/external_160_sn2_1000.jpg", "page": 2}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN2 160х3,6х2000", "image": "/images/products/external_160_sn2_2000.jpg", "page": 2}, + {"text": "Труба ПВХ для НАРУЖНОЙ канализации (цвет оранжево-коричневый), с внутренней структурной стенкой, класс жесткости SN2 160х3,6х3000", "image": "/images/products/external_160_sn2_3000.jpg", "page": 2}, ] added_products = 0 - for product_text in products_data: + for product_info in products_data: + product_text = product_info["text"] + image_path = product_info["image"] + page_number = product_info["page"] + if "ВНУТРЕННЕЙ" in product_text: category_id = internal_category_id else: category_id = external_category_id - product_id = add_product(conn, product_text, category_id) + product_id = add_product(conn, product_text, category_id, image_path, page_number) if product_id: added_products += 1 - log.info(f"Добавлен товар: {product_text[:50]}...") + log.info(f"Добавлен товар: {product_text[:50]}... (страница {page_number})") else: log.error(f"Ошибка при добавлении товара: {product_text}") conn.commit() conn.close() - log.success(f"Успешно добавлено {added_products} товаров в базу данных!") + log.success(f"Успешно добавлено {added_products} товаров в базу категорий!")