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

		if (CatalogConfigState::isUsedInventoryManagement())
		{
			$r = $this->checkProductsInStore($availableItems);
			if ($r->isSuccess())
			{
				$data = $r->getData();
				if (!empty($data['PRODUCTS_LIST_IN_STORE']))
				{
					$resultList = $data['PRODUCTS_LIST_IN_STORE'];
				}
			}
		}
		else
		{
			$r = $this->checkProductsQuantity($availableItems);
			if ($r->isSuccess())
			{
				$data = $r->getData();
				if (!empty($data['PRODUCTS_LIST_REQUIRED_QUANTITY']))
				{
					$resultList = $data['PRODUCTS_LIST_REQUIRED_QUANTITY'];
				}
			}
			else
			{
				return $r;
			}

		}

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

		return $result;
	}