- Модуль: rpa
- Путь к файлу: ~/bitrix/modules/rpa/lib/model/itemsorttable.php
- Класс: BitrixRpaModelItemSortTable
- Вызов: ItemSortTable::resortItems
static function resortItems(int $userId, Type $type, int $stageId): void
{
$itemIds = [];
$items = static::getList([
'select' => [
'ITEM_ID',
],
'order' => [
'sort' => 'ASC',
],
'filter' => [
'=USER_ID' => $userId,
'=TYPE_ID' => $type->getId(),
'=ITEM.STAGE_ID' => $stageId,
],
'runtime' => [
static::getItemReferenceField($type)
],
]);
while($item = $items->fetch())
{
$itemIds[] = $item['ITEM_ID'];
}
if(empty($itemIds))
{
return;
}
$sort = static::DEFAULT_MAX_SORT;
$items = static::getList([
'select' => [
'ID',
],
'filter' => [
'=USER_ID' => $userId,
'=TYPE_ID' => $type->getId(),
'=ITEM_ID' => $itemIds,
],
]);
while($item = $items->fetch())
{
static::update($item['ID'], ['SORT' => $sort]);
$sort += static::DEFAULT_MAX_SORT;
}
}