Перейти к основному содержимому

Обновить узел оргструктуры

PUT 

/api/v1/clients/:clientId/orgStructures/:id/elements/:elementId

Описание метода

Обновляет название и/или родителя узла оргструктуры в режиме редактирования черновика. UI передаёт актуальные name и parentId — сервер сам определяет, что реально изменилось: переименование, перемещение, оба сразу либо отсутствие изменений (no-op).

При смене parentId в affectedElements ответа возвращаются перемещённый узел и оба родителя (старый и новый) с пересчитанными счётчиками и цепочками предков до корней обеих сторон. При смене только name возвращается только сам узел. При no-op версия оргструктуры не увеличивается, а в ответе — сам узел с актуальными счётчиками.

externalId узла этим методом не меняется — он задаётся только при создании узла.

Поддерево перемещаемого узла переезжает вместе с ним — у потомков parentId не меняется, в ответ они не попадают.

Валидации запроса

  • Тело запроса задано.

  • IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. клиента соответствует формату UUID; клиент существует, не удалён, к нему относится пользователь, выполняющий операцию.

  • У пользователя клиента есть право ORG_STRUCTURES_UPDATE.

  • IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. оргструктуры соответствует формату UUID; оргструктура существует, принадлежит клиенту, не является Юридической, находится в статусе DRAFT.

  • Если version задана — совпадает с актуальной версией оргструктуры в БД.

  • Режим редактирования оргструктуры свободен либо захвачен инициатором операции.

  • IDidВнутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. узла соответствует формату UUID; узел существует в указанной оргструктуре.

  • name задано, не длиннее 1024 символов и не пустое после trim().

  • Если parentId задан — узел-кандидат существует в этой же оргструктуре и не является самим обновляемым узлом либо его потомком (проверка циклов).

  • Функционал оргструктур включён в настройках клиента.

Request

Responses

Успешная операция.