ProcessEntityCountableActivitiesAgent::getList

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. ProcessEntityCountableActivitiesAgent
  4. getList
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/agent/activity/processentitycountableactivitiesagent.php
  • Класс: Bitrix\Crm\Agent\Activity\ProcessEntityCountableActivitiesAgent
  • Вызов: ProcessEntityCountableActivitiesAgent::getList
protected function getList(int $lastId, int $limit): array
{
	$ids = array_column(ActivityTable::query()
		->setSelect([
			'ID',
		])
		->where('ID', '>', $lastId)
		->where('COMPLETED', false)
		->setLimit($limit)
		->setOrder(['ID' => 'ASC'])
		->fetchAll(), 'ID')
	;
	if (empty($ids))
	{
		return [];
	}

	$items = ActivityTable::query()
		->setSelect([
			'ID',
			'DEADLINE',
		])
		->whereIn('ID', $ids)
		->fetchAll()
	;
	$incomingChannelActivityIds = array_column(
		IncomingChannelTable::query()
			->setSelect([
				'ACTIVITY_ID',
			])
			->whereIn('ACTIVITY_ID', $ids)
			->fetchAll(),
	'ACTIVITY_ID'
	);
	foreach ($items as &$item)
	{
		$item['IS_INCOMING_CHANNEL'] = in_array($item['ID'], $incomingChannelActivityIds, false) ? 'Y' : 'N';
	}

	return $items;
}

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