• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/order/orderdealsynchronizer.php
  • Класс: Bitrix\Crm\Order\OrderDealSynchronizer
  • Вызов: OrderDealSynchronizer::updateDealFromOrder
public function updateDealFromOrder(Order $order): void
{
	if (!$this->isSupportSync)
	{
		return;
	}

	$binding = $order->getEntityBinding();
	if (!$binding || $this->isLockedOrder($order->getId()))
	{
		return;
	}

	$dealId = $binding->getOwnerId();
	$orderId = $order->getId();

	try
	{
		$this->lockOrder($orderId);
		$this->lockDeal($dealId);

		$this->syncDealProductsByOrder($dealId, $order);
	}
	finally
	{
		$this->unlockOrder($orderId);
		$this->unlockDeal($dealId);
	}
}