]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Цены
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 12 Nov 2024 09:07:29 +0000 (12:07 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Tue, 12 Nov 2024 09:07:29 +0000 (12:07 +0300)
erp24/media/controllers/FlowwowController.php
erp24/services/MarketplaceService.php

index d7fd1eab99ede3d47c77d852bb5171e181e08717..0b65b8c572922f7cda006eb8840a5393bb5f3260 100644 (file)
@@ -14,6 +14,9 @@ class FlowwowController extends Controller
      */
     public function actionFeed($id)
     {
+
+
+
         $productsInfo = MarketplaceService::getAllProductsInfo($id);
 
 
index 639051cb176e04f1a8512305372ca194ddd0559b..59db72fe6e65c1ee70ae8b4b646b70f121d51e1a 100644 (file)
@@ -83,8 +83,31 @@ class MarketplaceService
             ->asArray()
             ->all();
 
+
+        $productsGuidsIds = array_column($productsGuids, 'id');
+
+        //var_dump( $productsGuidsIds);
         // 2. Получение цен на букеты
-        $prices = ArrayHelper::map(Prices::findAll(['product_id' => ArrayHelper::getColumn($productsGuids, 'id')]), 'product_id', 'price');
+        //$prices = ArrayHelper::map(Prices::findAll(['product_id' => ArrayHelper::getColumn($productsGuids, 'id')]), 'product_id', 'price');
+
+        $allPrices = Prices::findAll(['product_id' => $productsGuidsIds]);
+
+        if (empty($allPrices)) {
+            Yii::warning('Не найдено цен для GUID.');
+        }
+
+        $prices = ArrayHelper::map($allPrices, 'product_id', 'price') ?: []; // Ensure $prices is an array
+
+        foreach ($productsGuidsIds as $productId) {
+            // Ensure $productId is scalar before checking
+            if (is_scalar($productId) && !array_key_exists($productId, $prices)) {
+                $prices[$productId] = 0;
+            } elseif (!is_scalar($productId)) {
+                Yii::warning('Invalid productId type: ' . gettype($productId));
+            }
+        }
+
+      //  var_dump($prices);
 
         // 3. Получение состава букетов
         $bouquetComposition = [];
@@ -103,7 +126,7 @@ class MarketplaceService
             }
         }
         $componentsGuids = array_unique($componentsGuids);
-
+        //var_dump($componentsGuids);
         // 4. Проверка остатков
 
         $marketplaceStores = array_column(MarketplaceStore::findAll(['warehouse_id' => $marketId]), null, 'guid');
@@ -120,7 +143,7 @@ class MarketplaceService
         }
 
         $balanceStoreIds = array_unique($balanceStoreIds);
-
+        //var_dump($balanceStoreIds);
         foreach ($bouquetComposition as $guid => $products) {
             $stockRecords = [];
             foreach ($products as $product_id => $count) {