• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/payableitemcollection.php
  • Класс: BitrixSalePayableItemCollection
  • Вызов: PayableItemCollection::createItemByBasketItem
public function createItemByBasketItem(BasketItem $basketItem) : PayableBasketItem
{
	/** @var PayableBasketItem $item */
	foreach ($this->getBasketItems() as $item)
	{
		$payableBasketItem = $item->getEntityObject();
		if (
			$payableBasketItem
			&& $basketItem->getBasketCode() === $payableBasketItem->getBasketCode())
		{
			return $item;
		}
	}

	$registry = Registry::getInstance(static::getRegistryType());

	/** @var PayableBasketItem $payableItemClass */
	$payableItemClass = $registry->get(Registry::ENTITY_PAYABLE_BASKET_ITEM);

	/** @var PayableBasketItem $payableItem */
	$payableItem = $payableItemClass::create($this, $basketItem);
	$this->addItem($payableItem);

	return $payableItem;
}