В документации прямо здесь:
Указано, что параметры тела timeSpent обязательны при создании рабочего журнала.
Однако прямо в Jira можно добавить рабочий журнал без рабочего времени, а только с оставшейся оценкой.
Однако остальные API этого не позволяют, что очень печально, потому что что, если я захочу обновить оставшуюся оценку проблемы без фактического входа в систему в любое время?
к вашему сведению это запрос, который я делаю:
https://{server_url}/rest/api/3/issue/issueKey/worklog?adjustEstimate=new&newEstimate=300
На самом деле это изменяет оставшееся расчетное время проблемы, но вынуждает меня добавить время журнала не менее одной минуты.
Есть ли обходной путь, который позволил бы мне изменить оставшееся время без регистрации рабочего времени?
Я также пытался использовать обновление проблемы, изменяющее отслеживание времени, но всегда получаю одно и то же сообщение об ошибке: невозможно обновить отслеживание времени поля, поскольку оно не находится на соответствующем экране или неизвестно.
Вот скриншот:
Я начинаю думать, что в настоящее время нет способа обновить оставшееся расчетное время проблемы без вставки рабочего времени...
Кстати, я могу изменить сводку, описание и т. д. Похоже, что изменить нельзя только отслеживание времени...
Решение, которое я должен обойти эту проблему, состоит в том, чтобы получить все рабочие журналы целевых проблем, выбрать последний и обновить его с помощью этого запроса на отдых:
https://{server}/rest/api/3/issue/{key}/worklog/{id}?adjustEstimate=new&newEstimate = {minutes}
Однако для этого требуется, чтобы к проблеме был добавлен хотя бы один рабочий журнал.
Так
Шаг 1 :
Получить каждый рабочий журнал, используя:
https://{сервер}/остальные/api/3/issue/{key}/worklog/
Шаг 2:
Прокрутите весь рабочий журнал, чтобы найти самый последний из них, который вы собираетесь обновить, и извлеките timeSpentSeconds и я бы.
Шаг 3
Обновите рабочий журнал, используя этот запрос на отдых как PUT-запрос.
https://{server}/rest/api/3/issue/{key}/worklog/{id}?adjustEstimate=new&newEstimate = {minutes}
со следующим корпусом:
{ "timeSpentSeconds":timeSpentSeconds }
обратите внимание, что вы должны отправить обратно timeSpentSeconds с тем же номером, который у него был до обновления, чтобы убедиться, что вызов запроса работает.
Надеюсь, это поможет любому с той же проблемой, что и я.
Если у кого-то есть решение, которое не требует обновления предыдущего рабочего журнала, не стесняйтесь добавлять новый ответ.
Отслеживание времени можно изменить в Jira. Похоже, вы использовали неправильный API для обновления полей отслеживания времени. Также указанная на скриншоте ошибка не связана с модификацией полей учета рабочего времени. Аутентификация может быть проблемой из-за ошибки, показанной на снимке экрана. Также проверьте поля, которые видны в пользовательском интерфейсе Jira, когда вы редактируете задачу. Когда вы пытаетесь отредактировать задачу с помощью REST API, вы можете установить только те поля, которые видны на этом экране.
Чтобы обновить только оставшееся поле оценки без добавления timeSpent, вы можете попробовать использовать Jira Rest URL и Request Payload,
Пользовательский интерфейс Jira будет обновлен, как показано ниже.
Размещение некоторых полезных ссылок Jira Rest API, https://docs.atlassian.com/software/jira/docs/api/REST/8.0.2/#api/2/issue-addWorklog