LastActivityTime::processLogic

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. LastActivityTime
  4. processLogic
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Field/LastActivityTime.php
  • Класс: Bitrix\Crm\Field\LastActivityTime
  • Вызов: LastActivityTime::processLogic
protected function processLogic(Item $item, Context $context = null): Result
{
	if ($item->isNew())
	{
		$this->setLastActivityValues($item, $item->getCreatedTime(), $item->getCreatedBy());

		return new Result();
	}

	$identifier = ItemIdentifier::createByItem($item);
	$monitor = Monitor::getInstance();

	if ($monitor->isTimelineChanged($identifier))
	{
		[$lastActivityTime, $lastActivityBy] = $monitor->calculateLastActivityInfo($identifier);

		$lastActivityTime ??= $item->getCreatedTime();
		$lastActivityBy ??= $item->getCreatedBy();

		$this->setLastActivityValues($item, $lastActivityTime, $lastActivityBy);
	}

	return new Result();
}

Добавить комментарий