• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/basketbase.php
  • Класс: BitrixSaleBasketBase
  • Вызов: BasketBase::getOriginalItemsValues
private function getOriginalItemsValues()
{
	$result = array();

	/** @var Order $order */
	$order = $this->getOrder();
	$isNew = $order && $order->isNew();

	$filter = array();
	if (!$isNew && $order && $order->getId() > 0)
	{
		$filter['ORDER_ID'] = $order->getId();
	}
	else
	{
		if ($this->isLoadForFUserId)
		{
			$filter = array(
				'=FUSER_ID' => $this->getFUserId(),
				'ORDER_ID' => null,
				'=LID' => $this->getSiteId()
			);
		}

		if ($isNew)
		{
			$fUserId = $this->getFUserId(true);
			if ($fUserId <= 0)
			{
				$userId = $order->getUserId();
				if (intval($userId) > 0)
				{
					$fUserId = Fuser::getIdByUserId($userId);
					if ($fUserId > 0)
						$this->setFUserId($fUserId);
				}
			}
		}
	}

	if ($filter)
	{
		$dbRes = static::getList(
			array(
				"select" => array("ID", 'TYPE', 'SET_PARENT_ID', 'PRODUCT_ID', 'NAME', 'QUANTITY', 'FUSER_ID', 'ORDER_ID'),
				"filter" => $filter,
			)
		);

		while ($item = $dbRes->fetch())
		{
			if ((int)$item['SET_PARENT_ID'] > 0 && (int)$item['SET_PARENT_ID'] != $item['ID'])
			{
				continue;
			}

			$result[$item["ID"]] = $item;
		}
	}

	return $result;
}