- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/service/itemservice.php
- Класс: BitrixTasksScrumServiceItemService
- Вызов: ItemService::getList
public function getList(
PageNavigation $nav,
$filter = [],
$select = [],
$order = []
): ?QueryResult
{
try
{
if (!Loader::includeModule('socialnetwork'))
{
$this->errorCollection->setError(
new Error(
'Unable to load socialnetwork.',
self::ERROR_COULD_NOT_GET_LIST
)
);
return null;
}
$query = new QueryQuery(ItemTable::getEntity());
if (empty($select))
{
$select = ['*'];
}
$query->setSelect($select);
$query->setFilter($filter);
$query->setOrder($order);
if ($nav)
{
$query->setOffset($nav->getOffset());
$query->setLimit($nav->getLimit() + 1);
}
$query->registerRuntimeField(
'SE',
new ReferenceField(
'SE',
EntityTable::getEntity(),
Join::on('this.ENTITY_ID', 'ref.ID'),
['join_type' => 'inner']
)
);
$query->registerRuntimeField(
'UG',
new ReferenceField(
'UG',
UserToGroupTable::getEntity(),
Join::on('this.SE.GROUP_ID', 'ref.GROUP_ID')->where('ref.USER_ID', $this->userId),
['join_type' => 'inner']
)
);
$queryResult = $query->exec();
return $queryResult;
}
catch (Exception $e)
{
$this->errorCollection->setError(
new Error(
$e->getMessage(),
self::ERROR_COULD_NOT_GET_LIST
)
);
return null;
}
}