- Модуль: 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;
}