У меня есть следующие поля:
Система,
CMS,
Водолей,
Я хотел бы очистить поле Водолея на основе выбора системы. Например, пользователь. Первоначально пользователь создал проблему и для системы он выбрал: CMS и заполнил значение «abcde» в поле CMS.
Теперь пользователь хотел бы обновить проблему. Теперь они выбирают Водолея, затем заполните поле Водолей полем «jklm». Когда это происходит, я хотел бы очистить значения, хранящиеся в поле CMS, поэтому это поле не будет отображаться на экране просмотра.
Обратите внимание: это отдельные поля выбора.
Ниже мой код:
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.customfields.option.LazyLoadedOption
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
import com.atlassian.jira.issue.MutableIssue
Issue issue = event.issue
def customFieldManager = ComponentAccessor.getCustomFieldManager()
def customField2 = customFieldManager.getCustomFieldObjectByName("System")
LazyLoadedOption systemOption = (LazyLoadedOption) issue.getCustomFieldValue(customField2)
def changeHolder = new DefaultIssueChangeHolder();
def customField4 = customFieldManager.getCustomFieldObjects(issue).find {it.name == "Aquarius Category"}
if (systemOption?.getValue() == "CMS2") {
customField4.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(customField4), ""),changeHolder)
}
К сожалению, это не удается
Примечание. Использование специального прослушивателя - Scriptrunner