背景:
jira 8.16
想要為問題類型為 需求 的問題默認增加描述字段默認值
想都沒想直接根據之前添加缺陷類型時描述默認值的方式去添加(系統字段--描述--上下文和默認值--添加上下文), 結果不隨我愿, 系統默認的這個功能不能根據問題類型切換而切換不同的默認值, 只能設置 1 個, 這....有種半智能的感覺, 只能尋求其他方法
實現方式:
借助??ScriptRunner
在 ScriptRunner 中 添加行為 (Behaviours)
步驟:
Create Behaviour -->? 填寫Name --> 在?Mappings 中添加項目 --> Add Fields? --> 選擇 問題類型 --> 添加?server-side script --> 保存
// 問題類型 ID → 模板內容映射
def templates = ["10200": """【場景(現狀)描述】:[描述目前現場業務場景,內容包括(業務流程圖、流程圖說明、現場圖片)]【需求痛點】:[基于目前業務場景,在管理上了遇到的具體什么問題,內容包括(描述具體的業務文檔點,可以需要解決什么問題,解決問題背后的目的)]【解決方案】:[為了解決需求痛點,業務流程圖作業哪些調整(調整后的流程圖、流程圖說明、包括系統功能操作人角色說明),原型圖、原型圖說明(業務邏輯說明)]【風險提醒】:/;【投入人天】:方案X人天,開發X人天,測試X人天,實施X人天,共計X人天
""","10004": """【環境】:SIT / UAT / 生產【出現概率】:100%【用例ID】:【前置條件】:/;【操作步驟】:/;【問題說明】:/,見下圖;【期望結果】:/;
"""
]def descField = getFieldById("description")
def issueTypeId = getFieldById("issuetype").getValue()?.toString()// 僅當描述為空時才填充模板
if (!descField.getValue()) {def template = templates[issueTypeId]if (template) {descField.setFormValue(template)} else {descField.setFormValue("")}
}
效果:
坑點:
不同的版本或者環境, 腳本中判斷條件的部分可能不同, 需要根據自己的實際情況修改判斷條件
tip: 可以使用? 為字段設置描述的方式來將判斷條件的值輸出出來調試
def issueTypeValue = getFieldById("issuetype").getValue()getFieldById("description").setHelpText("DEBUG: " + issueTypeValue?.toString())