• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/report/handler/lead.php
  • Класс: Bitrix\Crm\Integration\Report\Handler\Lead
  • Вызов: Lead::mutateFilterParameter
public function mutateFilterParameter($filterParameters, array $fieldList)
{
	$filterParameters =  parent::mutateFilterParameter($filterParameters, $fieldList);

	$fieldsToOrmMap =  $this->getLeadFieldsToOrmMap();

	foreach ($filterParameters as $key => $value)
	{
		if (in_array($key, ['TIME_PERIOD', 'FIND']) || (mb_strpos($key, 'UF_') === 0))
		{
			continue;
		}

		if ($key == 'COMMUNICATION_TYPE')
		{
			if (in_array(\CCrmFieldMulti::PHONE, $value['value']))
			{
				$filterParameters['HAS_PHONE']['type'] = 'checkbox';
				$filterParameters['HAS_PHONE']['value'] = 'Y';
			}

			if (in_array(\CCrmFieldMulti::EMAIL, $value['value']))
			{
				$filterParameters['HAS_EMAIL']['type'] = 'checkbox';
				$filterParameters['HAS_EMAIL']['value'] = 'Y';
			}

			unset($filterParameters[$key]);
			continue;
		}

		if (isset($fieldsToOrmMap[$key]) && $fieldsToOrmMap[$key] !== $key)
		{
			$filterParameters[$fieldsToOrmMap[$key]] = $value;
			unset($filterParameters[$key]);
		}
		elseif (!isset($fieldsToOrmMap[$key]))
		{
			unset($filterParameters[$key]);
		}

	}

	return $filterParameters;
}