• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/ui/entityselector/epicselectorprovider.php
  • Класс: BitrixTasksIntegrationUIEntitySelectorEpicSelectorProvider
  • Вызов: EpicSelectorProvider::getEpics
private function getEpics(int $groupId, array $excludeIds = [], ?SearchQuery $searchQuery = null): array
{
	$epics = [];

	$epicService = new EpicService($GLOBALS['USER']->getId());

	$nav = $this->getNavigation($this->maxCount);

	$select = [];

	$filter = ['=GROUP_ID' => $groupId];
	if ($excludeIds)
	{
		$filter['!ID'] = $excludeIds;
	}
	if ($searchQuery)
	{
		$filter['?NAME'] = $searchQuery->getQuery();
	}

	$queryResult = $epicService->getList(
		$select,
		$filter,
		['ID' => 'DESC'],
		$nav
	);
	$n = 0;
	while ($data = $queryResult->fetch())
	{
		if ($nav && (++$n > $nav->getPageSize()))
		{
			break;
		}

		$epic = new EpicForm();
		$epic->fillFromDatabase($data);

		$epics[] = $epic;
	}

	return $epics;
}