Переместить узел оргструктуры под нового родителя
PUT/api/v1/clients/:clientId/orgStructures/:id/elements/:elementId/move
Описание метода
Перемещает узел оргструктуры под нового родителя (смена родительского узла). newParentId = null перемещает узел в корень. Поддерево перемещаемого узла переезжает вместе с ним — у потомков родитель не меняется, в ответ они не попадают. Метод поддерживает drag-and-drop на UI.
Возвращает обновлённые метаданные структуры и набор затронутых узлов с пересчитанными счётчиками: перемещённый узел, старый и новый родители, а также цепочки предков до корней обеих сторон. totalEmployeesCount старого родителя и его предков уменьшается на вес поддерева перемещённого узла; нового родителя и его предков — увеличивается на тот же вес. employeesCount ни у одного узла не меняется.
Если newParentId совпадает с текущим родителем узла — операция no-op: версия оргструктуры не увеличивается, в ответе — сам узел с актуальными счётчиками без раскрытия в предков.
Валидации запроса
-
Тело запроса задано.
-
IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. клиента соответствует формату UUID; клиент существует, не удалён, к нему относится пользователь, выполняющий операцию.
-
У пользователя клиента есть право
ORG_STRUCTURES_UPDATE. -
IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. оргструктуры соответствует формату UUID; оргструктура существует, принадлежит клиенту, не является Юридической, находится в статусе
DRAFT. -
Если
versionзадана — совпадает с актуальной версией оргструктуры в БД. -
Режим редактирования оргструктуры свободен либо захвачен инициатором операции.
-
IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. узла соответствует формату UUID; узел существует в указанной оргструктуре.
-
Если
newParentIdзадан — узел-кандидат существует в этой же оргструктуре и не является самим перемещаемым узлом либо его потомком (проверка циклов). -
Функционал оргструктур включён в настройках клиента.
Request
Responses
- 200
- 400
- 401
- 403
- 429
Успешная операция.
Ошибка при валидации данных запроса.
Запрос не аутенифицирован.
Для заданного пользователя доступ к ресурсу запрещен.
Превышен разрешенный лимит запросов за период.