feat(backend+web): 自定义规则每条独立 tab + 默认名「自定义规则N」
两个用户反馈:
1) 自定义规则命中明细:原来 N 条规则塞进 1 个 tab,规则一多翻不到。
改为每条规则单独占 1 个 tab:
- key = custom_value_check_<idx>(idx 从 1 开始,与前端卡片顺序一致)
- title = <rule_name>(<table>.<column>)
- summary alert:成功显示"本规则命中 N 行";失败显示"执行失败:**错误**"(红 alert)
- table source = this.matches_rule_<idx>(扁平命名)
失败规则也出 tab(alert 显示错误),用户能直接看到为什么失败。
2) 新建自定义规则时输入框默认「自定义规则N」,N 从已用编号集合里找最小可用,
用户手动改名后 N 仍递增不会撞名。
数据 / 前端配套:
- 后端 data 顶层加 matches_rule_<idx> / error_rule_<idx> / matched_rule_<idx> 三组扁平字段
- 为什么不走 dict 索引(this.by_rule['rule_X']):前端 evalPathExpr 是简单属性路径
(this.x.y.z),不识别 [key] 语法,扁平命名最干净
- 前端 flatResultRows 识别 custom_value_check_<idx> 前缀的 tab:命中数从
matched_rule_<idx> 取,检查数固定 1(每条规则 = 1 个字段)
静态验证(mock 两条规则,1 ok + 1 ORA-00933 失败)已通过:
tabs: [
{key:custom_value_check_1, type:info, vars:{matched:this.matched_rule_1}},
{key:custom_value_check_2, type:error, vars:{error:this.error_rule_2}}
]
WORKLOG 待用户在 Oracle 端实跑自定义规则验证后追加(不阻塞提交)
Showing
Please register or sign in to comment