• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/internals/transferprovidercompatibility.php
  • Класс: BitrixSaleInternalsTransferProviderCompatibility
  • Вызов: TransferProviderCompatibility::distributeQuantityByStore
private function distributeQuantityByStore($needQuantityList, $availableQuantity) : array
{
	$result = [];

	foreach ($needQuantityList as $quantityByStore)
	{
		if (is_array($quantityByStore))
		{
			foreach ($quantityByStore as $storeId => $quantity)
			{
				if (abs($quantity) < abs($availableQuantity))
				{
					$result[$storeId] = $quantity;
					$availableQuantity -= $quantity;
				}
				else
				{
					$result[$storeId] = $availableQuantity;
					$availableQuantity = 0;
				}
			}
		}
	}

	return $result;
}