• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/providerbase.php
  • Класс: BitrixSaleProviderBase
  • Вызов: ProviderBase::redistributeToProviders
static function redistributeToProviders(array $basketProviderMap)
{

	$basketProviderList = array();
	foreach($basketProviderMap as $basketProviderItem)
	{
		$providerName = $basketProviderItem['PROVIDER'] ?? '';
		$productId = $basketProviderItem['BASKET_ITEM']->getProductId();
		$quantity = floatval($basketProviderItem['QUANTITY']);
		unset($basketProviderItem['QUANTITY']);

		$basketCode = $basketProviderItem['BASKET_CODE'];

		if (!isset($basketProviderList[$providerName][$productId]))
		{
			$basketProviderList[$providerName][$productId] = $basketProviderItem;
		}

		if (isset($basketProviderList[$providerName][$productId]['QUANTITY_LIST'][$basketCode]))
		{
			$basketProviderList[$providerName][$productId]['QUANTITY_LIST'][$basketCode] += $quantity;
		}
		else
		{
			$basketProviderList[$providerName][$productId]['QUANTITY_LIST'][$basketCode] = $quantity;
		}



	}

	return $basketProviderList;
}