• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/product/catalogprovider.php
  • Класс: BitrixCatalogProductCatalogProvider
  • Вызов: CatalogProvider::getCountProductsInStore
protected function getCountProductsInStore(array $products)
	{
		$result = new SaleResult();

		$productStoreList = array();
		$productStoreResult = $this->getProductListStores($products);
		if ($productStoreResult->isSuccess())
		{
			$productStoreData = $productStoreResult->getData();

			if (array_key_exists('PRODUCT_STORES_LIST', $productStoreData))
			{
				$productStoreList = $productStoreData['PRODUCT_STORES_LIST'];
			}
		}

		if (empty($productStoreList))
		{
			return $result;
		}

		$resultList = array();
		foreach ($productStoreList as $productStoreDataList)
		{
			foreach ($productStoreDataList as $storeId =>$productStoreData)
			{
				$productId = $productStoreData['PRODUCT_ID'];
				if ($productStoreData['AMOUNT'] > 0)
				{
					if (!isset($resultList[$productId]))
					{
						$resultList[$productId] = [];
					}

					$resultList[$productId][$storeId] = $productStoreData['AMOUNT'];
				}
			}
		}

		if (!empty($resultList))
		{
			$result->setData(
				array(
					'RESULT_LIST' => $resultList
				)
			);
		}

		return $result;
	}