(二十二)「JVS-Rules规则引擎 V2.5」— 交叉决策表节点

核心概念

交叉决策表是规则引擎中一种特殊类型的决策表,它通过行和列的交叉维度来定义规则,适用于需要同时考虑两个或多个独立条件维度(例如用户属性、产品类型、场景状态等)组合的场景。其核心思想是将不同维度的条件分别放在行和列上,通过交叉点的单元格直接定义结果,从而简化复杂条件的组合逻辑。

交叉决策表 vs 普通决策表

|----------|-----------------------|------------------------------|
| 对比维度 | 普通决策表 | 交叉决策表 |
| 结构 | 所有条件在同一行中组合(单维度条件) | 行和列分别代表不同维度的条件(多维度交叉) |
| 适用场景 | 单一维度的条件组合(如用户等级+订单金额) | 两个或多个独立维度的条件组合(如用户等级 × 产品类型) |
| 复杂度 | 规则数量随条件数量线性增长 | 规则数量随维度交叉组合数增长(可能更高效) |
| 可读性 | 适合简单条件组合 | 适合多维条件交叉,直观展示复杂逻辑 |

核心功能意义

  1. 直观表达多维逻辑:将多个独立维度的条件分离到行和列,避免普通决策表中冗长的条件组合,直接简化为交叉点。
  2. 减少规则冗余:例如,普通决策表中需要为每个用户等级和产品类别的组合单独写一条规则,而交叉表通过行和列自动覆盖所有组合。
  3. 便于动态扩展:新增维度只需扩展列,无需修改其他规则。
  4. 业务友好:类似 Excel 的二维表格形式,非技术人员也能快速理解并维护。

配置步骤

通过决策流设计器,可以轻松配置交叉决策表节点:

1. 拖入节点并连接

从左侧的组件列表中,将 "交叉决策表" 节点拖入右侧的画布中,并将其与决策流的开始节点或上游节点连接起来。

2. 进入配置界面

点击画布上的 "交叉决策表" 节点,右侧会显示其配置面板。

3. 配置变量

在配置面板的"变量设置"区域,您可以根据实际需求 添加变量,这些变量将作为行、列条件的判断依据或结果。

4. 新增行和列(横向与纵向)

在"交叉决策表配置"区域,点击 【+横向】【+纵向】 按钮,即可分别增加一行或一列的配置。多点几次,就会多新增几行或几列。行和列分别代表两个不同维度的条件。

5. 编辑条件

点击行或列中的 【编辑条件】 区域,即可配置该行或列所对应的条件:

  • 选择变量/节点/入参:选择要用作该维度判断依据的变量。
  • 设置条件组 :添加具体的判断条件,例如:​test2 不为空​​入参空​​等于决策测试​等。

6. 配置结果

在行与列交叉的单元格中,配置条件满足时的输出结果。结果可为以下三种类型:

  • 固定值:输出一个手动输入的常量。
  • 变量值:输出决策流中其他已定义的变量值。
  • 节点值:输出决策流中某个节点的执行结果。
  • **入参值:**输出自定义入参值。

总结

通过以上配置,您可以将复杂的多维业务逻辑清晰地组织为一个二维表格,高效地实现多条件组合的业务规则。其核心优势在于直观呈现多维逻辑、便于动态增删维度且易于非技术人员理解与维护。

相关推荐
码农学院1 分钟前
零售电商GEO踩坑复盘:商品列表页懒加载让 AI 爬虫只抓到八分之一的商品,前端改造全程记录
人工智能·geo优化·ai优化aio
IT_陈寒1 分钟前
Java序列化坑了我三天,原来问题出在这个默认方法
前端·人工智能·后端
YOLO数据集集合18 分钟前
渔船船只检测数据集 | 船只检测 渔船识别 拖船检测 海事监管 目标检测 YOLO格式 深度学习数据集 计算机视觉9076期
人工智能·深度学习·yolo·目标检测·计算机视觉
stereohomology19 分钟前
一个可能有用的经验:api key在Workbuddy或Trae IDE上使用
人工智能·llm·薅羊毛
小刘快学习24 分钟前
企业提示词资产如何集中治理:AI网关的提示词管理能力
人工智能
刘天远25 分钟前
Agent最小权限实现:策略表、临时令牌与撤权回归
java·jvm·人工智能·sqlite
液态不合群35 分钟前
信通院认证实锤:信创低代码,撕开企业数字化转型的虚假繁荣
人工智能·低代码·数字化
71777740 分钟前
能源行业 DevOps 平台选型与 Gitee 企业版适配性梳理
人工智能·gitee
宁渡AI大模型2 小时前
河南宁渡科技有限公司|宁渡课堂 AI 全栈面试分享,RAG 项目面试深挖问题解析
人工智能·机器学习·rag
锋行天下9 小时前
LangGraph 1.2+ 新特性:set_node_defaults,批量统一节点策略
人工智能