Page tree
Skip to end of metadata
Go to start of metadata

behaviours提供了一些内置的API,允许使用他们进行业务的编排。

对于调用原生的JIRA API,可以参见:JIRA插件开发 中的内容。

获得表单数据

方法说明
getFieldById(fieldId)

得到字段的值,示例

  • getFieldById("customfield_11111")
  • getFieldById("summary")
getFieldByName(fieldName)

得到字段的值,示例

  • getFieldByName("My Custom Field")
  • getFieldByName("Description")
getFieldChanged()

得到需要处理的字段ID,即behaviour作用到的字段,示例

  • getFieldById(getFieldChanged())
getFieldByName("TextFieldA").convertToSingleSelect()将文本字段内容转为Select选择
getFieldByName("TextFieldA").convertToShortText()将字段转为单选文件的效果
getFieldByName("TextFieldA").convertToMultiSelect()
将文本字段内容转为多Select选择

一般字段操作

方法说明
formField.getValue()

获得当前表示操作的字段中的值

  • 选择字段、单选按钮、复选框等,将返回字符串值或字符串值列表。
  • 版本或组件字段将返回版本或组件对象。
  • 链接问题字段(id为:issuelinks Issues)将始终返回一个数组,如果没有会是一个空
formField.setError(errorStr)

将字段标记为有错误,并且将错误文本显示在字段下面。

当存在有错误的字段时,用户无法提交。

formField.clearError()
从字段中删除错误状态。确保如果设置了错误,也会清除有效值
formField.setLabel()

为当前字段的名称 设置为字段设置不同的“名称”。这只会修改了页面上显示的字段名称,但实际上并不会在内部改变它,示例:

  • formField.setLabel('Why is this high priority?')
formField.setRequired(true/false)
设置字段是否必填
formField.setHidden(true/false)
设置字段是否隐藏
formField.setReadOnly(true/false)
设置字段为只读
formField.setFormValue(value)
设置字段的为指定的值,但如果没有设置为只读,用户还是可以修改它的。
formField.setFieldOptions(Iterable)

为“选择”或“多选”列表设置可能的选项。该值必须是字段允许的。示例

formField.setFieldOptions(options.findAll {options.value in ['foo', 'bar']})


工作流信息

方法说明
getActionName()
获得正在执行的工作流动作,则返回当前动作的名称,否则为空
getAction()
如果问题正在进行工作流操作,则返回ActionDescriptor对象;对于编辑、分配等,返回空值。
getDestinationStepName()
如果问题正在进行工作流操作,则返回目标步骤的名称(并非状态,步骤关联了一个状态),否则为空
getDestinationStep()
如果问题正在进行工作流操作,则返回目标步骤的StepDescriptor对象。

Tabs上的操作

方法说明
hideTab(Integer tabIdx / String name, FieldScreenTab tab)

隐藏指定序列的Tab,或者指定指定名称 的选项卡,界面字段配置里的对象名称i。f示例

  • hideTab(1)
  • hideTab("Testing Instructions")
  • def tab = getFieldScreen().tabs.find {it.isContainsField("summary")} hideTab(tab)
showTab(Integer tabIdx / String name, FieldScreenTab tab)

同上:showTab(1, false)

disableTab(Integer tabIdx / String name, FieldScreenTab tab)

enableTab(Integer tabIdx / String name, FieldScreenTab tab)

switchTab(Integer tabIdx / String name, FieldScreenTab tab)
  • hideTab(0)
  • switchTab(2)

其它字段操作

方法说明
formField.setHelpText(helpText)

在字段下添加帮助文本,以响应其他表单事件。这有助于向用户解释为什么字段已成为必需的。示例

  • formField.setHelpText("如果优先级是Block,需要填写此字段")

取消信息时,可以使用以下两个方法

  • clearHelpText()
  • setHelpText("").


其它方法

方法说明
getIssueContext()
用于界面,或者工作流中,获得当前是在哪个项目或者哪个问题操作的上下文学信息
getRequest()
获得http的请求对象
getResponse()
获得http的响应对象
getBaseUrl()
获得当前JIRA的基本URL


  • No labels