CommunicationStatistics::rebuild

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. CommunicationStatistics
  4. rebuild
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/activity/communicationstatistics.php
  • Класс: Bitrix\Crm\Activity\CommunicationStatistics
  • Вызов: CommunicationStatistics::rebuild
static function rebuild($ownerTypeId, array $ownerIds)
{
	$ownerTypeId = (int)$ownerTypeId;
	$data = static::getDataForRebuild($ownerTypeId, $ownerIds);

	foreach ($data as $providerId => $typeData)
	{
		foreach ($typeData as $typeId => $ownerData)
		{
			foreach ($ownerData as $ownerId => $ownerData)
			{
				foreach ($ownerData as $date => $activities)
				{
					if (count($activities) <= 0)
						continue;
					$provider = \CCrmActivity::GetProviderById($providerId);
					$supportedStatistics = $provider? $provider::getSupportedCommunicationStatistics() : array();

					static::register(
						$ownerTypeId,
						$ownerId,
						$supportedStatistics,
						array(
							'DATE'             => new Main\Type\Date($date, 'Y-m-d'),
							'PROVIDER_ID'      => $providerId,
							'PROVIDER_TYPE_ID' => $typeId
						),
						static::mergeActivityResults($activities)
					);
				}
			}
		}
	}

	return true;
}

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