From 8503f17545e8936a859208d4ef4b356d6424a977 Mon Sep 17 00:00:00 2001 From: fomichev Date: Wed, 22 Apr 2026 10:29:26 +0300 Subject: [PATCH] fix mapping --- erp24/services/ProductMappingService.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/erp24/services/ProductMappingService.php b/erp24/services/ProductMappingService.php index 3ab0a7fb..950b9975 100644 --- a/erp24/services/ProductMappingService.php +++ b/erp24/services/ProductMappingService.php @@ -27,6 +27,9 @@ class ProductMappingService { public const CACHE_DURATION = 300; // 5 минут для справочников фильтров + /** Категории, которые не участвуют в маппинге и скрыты везде */ + private const EXCLUDED_CATEGORIES = ['Букет', 'Сборка', 'Сервис']; + /** * Получить список товаров с маппингами и фильтрами. * @@ -139,6 +142,7 @@ class ProductMappingService ->from('products_1c_nomenclature') ->where(['IS NOT', 'category', null]) ->andWhere(['!=', 'category', '']) + ->andWhere(['not in', 'category', self::EXCLUDED_CATEGORIES]) ->distinct() ->orderBy('category') ->column(); @@ -373,7 +377,8 @@ class ProductMappingService $query = Products1cNomenclature::find() ->alias('n') - ->leftJoin(['pm_agg' => $mappingsSub], 'pm_agg.product_guid = n.id'); + ->leftJoin(['pm_agg' => $mappingsSub], 'pm_agg.product_guid = n.id') + ->andWhere(['not in', 'n.category', self::EXCLUDED_CATEGORIES]); // Whitelist: явные привязки, никаких пользовательских имён колонок if ($filters->category !== null) { -- 2.39.5