goalsmanagement.ratingitem.upsert

Scope: goalsmanagement

Кто может вызывать: Сотрудник / руководитель / админ. Подробнее: Права доступа

Сохранить/обновить оценки карточки (WAF-безопасное имя вместо *.save)

HTTP: POST

Побочные эффекты: сохраняет оценки

Параметры метода

Параметр Тип Обяз. Описание
cardId int да ID карточки оценки
rating array да Существующие строки оценок. Пустой массив / без id / чужой idVALIDATION_ERROR. Новых строк метод не создаёт. RATING_TABLE перезаписывается только переданными строками

Поля элемента rating[]

Поле Тип Обяз. Описание
id int да HL-id строки оценки (из ratingitem.list). Должен принадлежать cardId
progress number нет Прогресс, %. Нет — 0
value number нет Факт для количественной цели
result string нет Текст результата (не количественная)
commentEmployee string нет Комментарий сотрудника
commentHead string нет Комментарий руководителя
commentFuncHead string нет Комментарий функ. руководителя
commentDirector string нет Комментарий директора
commentAdmin string нет Комментарий администратора
userGoalId int нет ID строки цели (goalitem). Нужен, чтобы определить количественность и пересчитать progress/value
isSubgoal string нет "Y" / "N". Подцель не входит в USER_GOAL_TOTAL_PROGRESS
type_goal string нет Подпись типа для грида (value из enum, как в ratingitem.list). В HL не пишется
goal string нет Подпись цели для грида (имя). В HL не пишется
task string нет Подпись задачи для грида; если непусто, в гриде вместо goal
criterion string нет Критерий для грида
weight mixed нет Для грида и доли в USER_GOAL_TOTAL_PROGRESS. В HL оценки не пишется; без него вклад строки в итог = 0

Возвращаемые данные

Ответ в конверте модуля: result.result — результат сохранения; result.error. Ключи total/next для не-list методов могут отсутствовать в сериализации, если не переданы.

Обработка ошибок

Справочник кодов: error-codes.md.

Код Описание
UNAUTHORIZED Пользователь не авторизован
VALIDATION_ERROR Некорректные или неполные параметры
ACCESS_DENIED Нет прав на операцию (общий запрет)
INTERNAL_ERROR Внутренняя ошибка сервера

Пример запроса (POST)

curl -X POST "https://{портал}/rest/{user_id}/{webhook_code}/goalsmanagement.ratingitem.upsert.json" \
          -H "Content-Type: application/json" \
          -H "Accept: application/json" \
          --data '{
          "cardId": 701,
          "rating": [
            {
              "id": 9001,
              "progress": 65,
              "commentEmployee": "План выполнен на 65%",
              "commentHead": "Результат подтверждён"
            }
          ]
        }'
        

Пример ответа

{
          "result": {
            "result": {
              "cardId": 701,
              "saved": true
            },
            "error": null
          }
        }
        

См. также

Следующая