Вы можете управлять датами создания, обновления, датирования и разрешения (а также пользовательским полем «Выбор даты» ("Date Picker")) и форматировать их внутри полей, поддерживающих интеллектуальные значения. Функции и атрибуты даты находятся в разделе справки по датам.
Старый синтаксис
Для правил, созданных до ноября 2018 г., обратитесь к старой документации по синтаксису.
Форматирование дат
Вы указываете формат даты в конце умного значения:
// использование встроенных форматов
{{issue.resolutiondate.asLongDateTime}}
{{issue.MyDateFieldName.longDateTime}}
{{issue.created.jqlDateTime}}
{{issue.created.mediumTime}}
{{issue.Sprint.endDate.jiraDate}} - отформатируйте дату окончания поля Sprint в формат, подходящий для установки другого поля
// Или вы можете указать формат
{{issue.dueDate.format("dd/MM/yyyy")}}
{{issue.created.as("dd MMM")}}
См. Полный список доступных форматов дат в нашем справочном руководстве.
Локаль (формат даты на основе местоположения)
Вы можете указать языковой стандарт для печати дат (по умолчанию - «США»).
// Печатает дату создания выпуска на французском языке
{{issue.created.withLocale ("fr"). asLongDateTime}}
// Печатает дату создания выпуска на французском канадском языке
{{issue.created.locale ("fr_CA"). longDateTime}}
// Выводит дату создания задачи в локали репортера
{{issue.created.locale (issue.reporter.locale) .longDateTime}}
Список локалей см. в документации Java.
Часовой пояс
Даты отображаются в часовом поясе Jira по умолчанию.
// Преобразует время создания задачи в новый часовой пояс,
// например 10:00 UTC конвертируется в 8:00 AEST{{issue.created.convertToTimeZone ("Australia/Sydney")}}
// Преобразует время создания задачи в новый часовой пояс и сохраняет то же самое
// раз / даты. Например. 10:00 UTC меняется на 10:00 AEST
{{issue.created.setTimeZone ("Australia/Sydney")}}
Список часовых поясов см. в документации Java.
Укажите часовой пояс пользователя:
// Печатает время создания задаче в часовом поясе репортеров.
{{issue.created.convertToTimeZone (issue.reporter.timeZone)}}
Управление датами
Управляйте датами, задавая части даты или добавляя / вычитая из нее значения:
// Добавляем 7 дней к текущему времени
{{now.plusDays (7)}}
// Вы можете связать функции
// Установите дату создания на 1 ноября
{{issue.created.withDayOfMonth (1) .withMonth (11)}}
Атрибуты даты
Получить отдельные атрибуты дня, например месяц
// Получаем сегодняшний день месяца
{{now.dayOfMonth}}
// Получаем день недели, когда проблема была создана
{{issue.created.dayOfWeekName}}
// Получаем название дня недели на французском языке
{{issue.created.locale ("fr"). dayOfWeekName}}
Расчет рабочих дней
Плюс / минус рабочих дней с текущей даты или найти ближайший рабочий день к текущей дате. Рабочие дни считаются с понедельника по пятницу.
// На следующий рабочий день
{{now.toBusinessDay ()}}
// На следующий рабочий день через 3 дня
{{now.plusDays (3) .toBusinessDay ()}}
// Предыдущий рабочий день
{{now.toBusinessDayBackwards ()}}
// Добавляет 6 рабочих дней к сегодняшнему дню
{{now.plusBusinessDays (6)}}
// Первый рабочий день месяца
{{now.firstBusinessDayOfMonth}}
// Последний рабочий день месяца
{{now.lastBusinessDayOfMonth}}
// Количество рабочих дней до создания задачи и сегодня
{{now.diff (issue.created) .businessDays}}
Расчет разницы между двумя датами
Метод «diff» для вычисления разницы между двумя датами путем передачи другой даты и последующего указания единиц измерения.
// Получает количество часов с момента создания задачи
{{now.diff (issue.created) .hours}}
// Получает количество дней между двумя датами
{{now.diff (issue.created) .days}}
// Чтобы показать положительные даты, используйте метод "abs"
{{now.diff (issue.created) .abs.days}}
Сравнение двух дат
Вы можете сравнить две даты. Эти методы принимают в качестве параметра другую дату.
// Возвращает "истину"
{{now.isAfter (issue.created)}}
Подсказка
Сравните даты, используя условие сравнения.
Преобразование текста в даты
Когда дата является текстом, например в журнале изменений даты хранятся в виде текста:
{{issue.summary.toDate}}
Преобразуйте текст в дату, если он имеет правильный формат. Вы можете указать формат для преобразования, добавив параметр. В приведенном ниже примере преобразуется текст, например «2017 6 11» в объект даты.
{{issue.summary.toDate("yyyy MM dd")}}
После преобразования текста в объект Date вам может потребоваться его дальнейшее преобразование, например для поля измененного (например, прослушивание изменения даты)
{{fieldChange.fromString.toDate.plusDays (1) .longDate}}
Ссылка на текущую дату / время
Вы можете указать текущую дату и время, используя {{сейчас}}
Пример
// 1 мая этого года
{{now.startOfMonth.withMonth (5)}}
// 1 мая следующего года
{{now.startOfMonth.withMonth (5) .plusYears (1)}}
// последний день мая
{{now.withMonth (5) .endOfMonth}}
// первый рабочий день мая
{{now.withMonth (5) .firstBusinessDayOfMonth}}
// последний рабочий день мая
{{now.withMonth (5) .lastBusinessDayOfMonth}}
По материалам Automation for Jira - Server: Working with dates