• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/report/handler/deal.php
  • Класс: Bitrix\Crm\Integration\Report\Handler\Deal
  • Вызов: Deal::getDealAmountCountByResponsible
private function getDealAmountCountByResponsible()
{
	$filterParameters = $this->getFilterParameters();

	$query = new Query(DealTable::getEntity());
	$query->addSelect(new ExpressionField('COUNT', 'COUNT(DISTINCT %s)', 'FULL_HISTORY.OWNER_ID'));
	$query->addSelect('ASSIGNED_BY_ID');
	$query->addGroup('ASSIGNED_BY_ID');
	$this->addToQueryFilterCase($query, $filterParameters);
	$this->addTimePeriodToQuery($query, $filterParameters['TIME_PERIOD']);

	$this->addPermissionsCheck($query);
	$results = $query->exec()->fetchAll();

	$amountByResponsible = [];
	foreach ($results as $result)
	{
		$amountByResponsible[$result['ASSIGNED_BY_ID']] = $result['COUNT'];
	}

	return $amountByResponsible;
}