diff --git a/mirzaev/skillparts/system/controllers/ProductController.php b/mirzaev/skillparts/system/controllers/ProductController.php index 0df333f..803cd3d 100644 --- a/mirzaev/skillparts/system/controllers/ProductController.php +++ b/mirzaev/skillparts/system/controllers/ProductController.php @@ -393,11 +393,17 @@ class ProductController extends Controller } } - if ($from->synchronization($to) > 0) { + if (count($from->synchronization($to)) > 0) { // Созданы рёбра // Запись в буфер возврата $return['alert'] = 'Продукты успешно соединены'; + } else { + // Не созданы рёбра + + // Запись в буфер возврата + $return['alert'] = 'Не удалось соединить продукты'; + } } } else { diff --git a/mirzaev/skillparts/system/controllers/SearchController.php b/mirzaev/skillparts/system/controllers/SearchController.php index 75cef95..3e8d84f 100644 --- a/mirzaev/skillparts/system/controllers/SearchController.php +++ b/mirzaev/skillparts/system/controllers/SearchController.php @@ -145,6 +145,7 @@ class SearchController extends Controller 'imgs' => 'imgs', 'prod' => 'prod', 'dmns' => 'dmns', + 'stts' => 'stts' ])) { // Данные найдены по поиску в полях Каталожного номера diff --git a/mirzaev/skillparts/system/models/Product.php b/mirzaev/skillparts/system/models/Product.php index 5718156..ad56fa6 100644 --- a/mirzaev/skillparts/system/models/Product.php +++ b/mirzaev/skillparts/system/models/Product.php @@ -197,7 +197,7 @@ class Product extends Document 'file_image', 'file', 'skipOnEmpty' => false, - 'extensions' => ['jpg', 'jpeg', 'png', 'gif', 'webp'], + 'extensions' => ['jpg', 'jpeg', 'png', 'gif', 'webp', 'jfif'], 'checkExtensionByMimeType' => true, 'maxFiles' => 10, 'maxSize' => 1024 * 1024 * 30, @@ -451,8 +451,12 @@ class Product extends Document if ($analog = Product::searchById(self::collectionName() . "/$analog")) { // Найден товар - // Запись в буфер вывода - $return[] = $analog; + if (isset($analog->stts) && $analog->stts === 'active') { + // Пройдена проверка по статусу + + // Запись в буфер вывода + $return[] = $analog; + } } else { // Не найден товар } @@ -482,22 +486,22 @@ class Product extends Document // Перебор связей для создания связей во всех товарах // Удаление обрабатываемого товара из буферного списка товаров - unset($_products[array_search($product, $_products)]); + // unset($_products[array_search($product, $_products)]); foreach ($_products as $_product) { // Перебор товаров из буфера - if ($from = self::searchById($product)) { - // Товар найден - } else { - if ($from = Product::writeEmpty($product)) { - // Удалось записать товар - } else { - // Не удалось записать товар + // if ($from = self::searchById($product)) { + // // Товар найден + // } else { + // if ($from = Product::writeEmpty($product)) { + // // Удалось записать товар + // } else { + // // Не удалось записать товар - continue; - } - } + // continue; + // } + // } if ($to = self::searchById($_product)) { // Товар найден @@ -511,7 +515,7 @@ class Product extends Document } } - if ($edge = $from->connect($to)) { + if ($edge = $this->connect($to)) { // Ребро создано // Запись в буфер diff --git a/mirzaev/skillparts/system/models/Search.php b/mirzaev/skillparts/system/models/Search.php index 0d26f94..301d9df 100644 --- a/mirzaev/skillparts/system/models/Search.php +++ b/mirzaev/skillparts/system/models/Search.php @@ -426,12 +426,14 @@ class Search extends Document $empty_block = false; // Инициализация счётчика поставок - $supplies_amount = count($row['supplies']); + $supplies_amount = count($row['supplies'] ?? []); // Инициализация указателя номера цикла $supply_iterator = 1; - foreach (empty($row['supplies']) || count($row['supplies']) === 0 ? [null] : $row['supplies'] as $supply) { + foreach (empty($row['supplies']) || $supplies_amount === 0 ? [null] : $row['supplies'] as $supply) { + // Перебор поставок + // Инициализация модификатора класса if ($supplies_amount > $supply_iterator) { // Это не последняя строка с товаром и его поставками diff --git a/mirzaev/skillparts/system/views/profile/supplies.php b/mirzaev/skillparts/system/views/profile/supplies.php index 7651c6b..0988f53 100644 --- a/mirzaev/skillparts/system/views/profile/supplies.php +++ b/mirzaev/skillparts/system/views/profile/supplies.php @@ -181,7 +181,7 @@ $panel ?? $panel = 'profile_panel_supplies_input_import'; .
- name ?? 'Без названия' ?> + name ?? 'Без названия' ?>
diff --git a/mirzaev/skillparts/system/views/search/index.php b/mirzaev/skillparts/system/views/search/index.php index 7c0241a..77f3c19 100644 --- a/mirzaev/skillparts/system/views/search/index.php +++ b/mirzaev/skillparts/system/views/search/index.php @@ -27,6 +27,10 @@ use app\models\Search; +

Товары по запросу: ""

@@ -38,9 +42,6 @@ use app\models\Search; $prod = $row['prod'] ?? 'Неизвестно'; $catn = $row['catn'] ?? 'Неизвестно'; - // Инициализация реестра пустышек (товаров без поставок или с ошибками) - $empties = []; - // Генерация списка товаров $supplies_html = Search::generate($row, $covr, $empties); ?> @@ -63,40 +64,59 @@ use app\models\Search;
- +

Аналогичные товары

+ + // Инициализация буфера записанных аналогов + $writed = []; -

Аналогичные товары

+ foreach ($empties as $catn) { + // Перебор товаров без поставок - - -
-
- - -
- -
+ // Исключение из вывода в списке аналогов + $writed[$catn] = true; + } + ?> + + + + +
+
+ + +
+
- - - +
+ +