有时候新建自定义字段选项可能有几百个,手动操作很慢,通过脚本来批量添加单选列表的选项。
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.customfields.manager.OptionsManager import com.atlassian.jira.issue.customfields.impl.SelectCFType import com.atlassian.jira.issue.fields.CustomField def customFieldName = "控制器" def values = [ 'AAS', 'ABM', 'ACP', 'ACU', 'ADB', 'ADCC', 'AFS', 'AGS', 'AIM', 'AIPM', 'AIPMR' ] def customFieldManager = ComponentAccessor.getCustomFieldManager() def optionsManager = ComponentAccessor.getComponent(OptionsManager) CustomField customField = customFieldManager.getCustomFieldObjectByName(customFieldName) if (!(customField?.getCustomFieldType() instanceof SelectCFType)) { throw new IllegalArgumentException("字段 '${customFieldName}' 不是单选列表类型") } // 获取字段所有配置(适用于多项目或全局) def fieldConfigs = customField.getConfigurationSchemes().collectMany { it.configs.values() } fieldConfigs.each { config -> #####注意!清空全部选项先####### optionsManager.getOptions(config).each { optionsManager.deleteOptionAndChildren(it) } //添加新选项 values.eachWithIndex { value, index -> optionsManager.createOption(config, null, index.toLong(), value) } } return "已成功为字段 [${customFieldName}] 的 ${fieldConfigs.size()} 个配置添加 ${values.size()} 个选项"