You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JIRA Structure基于列值的条件变量不生效及优化方案咨询

JIRA Structure 里程碑权重计算问题修复方案

问题根因

你当前使用的语法不符合JIRA Structure的Expr表达式规则:with关键字定义的是不可变常量,你在IF分支中写的weight1 = 0.2属于相等判断逻辑,并非赋值操作,因此权重不会按照Formal场景的规则变更。

最优实现方案

核心思路是提前在定义权重变量时就完成条件判断,直接根据Summary是否包含Formal返回对应权重值,无需后续修改常量。

可用代码

// 先判断是否为Formal类型任务
with isFormal = MATCH(Summary, "*Formal*"):
// 根据任务类型定义对应里程碑权重
with weight1 = IF(isFormal, 0.2, 0.6):
with weight2 = IF(isFormal, 0.4, 0.2):
with weight3 = IF(isFormal, 0.0, 0.15):
with weight4 = IF(isFormal, 0.4, 0.05):
// 按最高完成里程碑累加计算完成率
IF(
  MATCH(milestone4, "*Done*"), weight1 + weight2 + weight3 + weight4,
  MATCH(milestone3, "*Done*"), weight1 + weight2 + weight3,
  MATCH(milestone2, "*Done*"), weight1 + weight2,
  MATCH(milestone1, "*Done*"), weight1,
  0
)

额外优化建议

  • 若里程碑的完成状态是固定枚举值(如确切等于Done),建议替换MATCH为直接等于判断,计算效率更高,示例:milestone4 = "Done"
  • 可以新增权重总和校验逻辑,避免后续调整权重时出现比例错误,只需在代码中新增一行with totalCheck = weight1 + weight2 + weight3 + weight4,测试阶段确认该值恒为1即可
  • 如果后续需要新增更多任务类型的权重规则,可以将权重配置独立为嵌套的IF判断,或使用CASE语句实现,可读性更强

内容的提问来源于stack exchange,提问作者Chris Moretti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 23:39:00