• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/basketitem.php
  • Класс: BitrixSaleBasketItem
  • Вызов: BasketItem::delete
public function delete()
{
	$result = new Result();

	$deleteResult = parent::delete();
	if (!$deleteResult->isSuccess())
	{
		$result->addErrors($deleteResult->getErrors());
		return $result;
	}

	if ($this->isBundleParent())
	{
		$bundleCollection = $this->getBundleCollection();
		if ($bundleCollection)
		{
			/** @var BasketItem $bundleItem */
			foreach ($bundleCollection as $bundleItem)
			{
				$deleteResult = $bundleItem->delete();
				if (!$deleteResult->isSuccess())
				{
					$result->addErrors($deleteResult->getErrors());
				}
			}
		}
	}

	/** @var ReserveQuantityCollection $reserveQuantityCollection */
	$reserveQuantityCollection = $this->getReserveQuantityCollection();
	if ($reserveQuantityCollection)
	{
		/** @var ReserveQuantity $reserve */
		foreach ($reserveQuantityCollection as $reserve)
		{
			$r = $reserve->delete();
			if (!$r->isSuccess())
			{
				$result->addErrors($r->getErrors());
			}
		}
	}

	return $result;
}