跳到主要内容

LiteFlow 规则编辑器操作手册

核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 概览

本文档旨在帮助您快速上手 LiteFlow 规则编辑器。本工具提供了可视化的界面,让您可以像搭积木一样配置复杂的业务规则,而无需编写代码。


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 1. 界面概览

1. 界面概览

EL规则编辑器的界面概览:编辑器提供了两种视角的编辑模式,您可以根据喜好随时切换,数据是完全同步的。


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 1.1 树形模式(默认)

1.1 树形模式(默认)

EL规则编辑器的树形模式,适合习惯查看层级结构的用户。左侧以文件夹目录的形式展示规则结构,清晰地展现了条件之间的包含关系。

树形模式界面


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 1.2 图形模式

1.2 图形模式

EL规则编辑器的图形模式,适合习惯查看流程图的用户。以节点和连线的形式展示规则,逻辑流向一目了然。

图形模式界面

小提示:在图形模式下,将鼠标悬停在节点上,会出现快捷操作菜单(添加、包裹、删除)。

图形模式操作


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 2. 核心概念说明

2. 核心概念说明

EL规则编辑器的核心概念:在开始配置前,我们需要理解两个基础概念。别担心,这很简单!


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 2.1 条件 (Condition)

2.1 条件 (Condition)

EL规则中的条件概念,这是规则的最小单元,就是一个具体的判断。

  • 例如:“渠道 是 App Store”、“注册时间 早于 2024-01-01”。

核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 2.2 逻辑组 (Group)

2.2 逻辑组 (Group)

EL规则中的逻辑组概念,当我们需要组合多个条件时,就需要用到逻辑组。它就像一个容器,决定了里面的条件是如何生效的。主要有两种类型:

  • 全满足(AND 组)

    • 含义:组内的所有条件必须同时成立,规则才算通过。
    • 生活中的例子:密码登录。账号必须正确 且(AND) 密码必须正确,才能登录。
  • 任一满足(OR 组)

    • 含义:组内的条件只要有一个成立,规则就算通过。
    • 生活中的例子:进站检票。刷身份证 或(OR) 刷二维码 或(OR) 刷公交卡,任意一种方式都可以进站。

您可以在属性配置中轻松切换这两种逻辑:

AND/OR切换


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 2.3 综合示例(从业务到 EL 表达式)

2.3 综合示例(从业务到 EL 表达式)

例如,下面这条业务需求:

“渠道名称包含 2024,且 (SDK 版本以 rk 开头,或者激活时间在 2026-01-01 00:00:00 到 2026-01-30 00:00:00 之间)”。

在 EL 规则编辑器中完成配置后,会生成如下 EL 表达式:

IF(
AND(
OR(
startsWithCmp.tag("build").data("rk"),
betweenLInclCmp.tag("activationTime").data("2026-01-01 00:00:00,2026-01-30 00:00:00")
),
containsCmp.tag("channelName").data("2024")
),
deviceTrueCmp,
deviceFalseCmp
);

核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 3. 操作类型与字段说明

3. 操作类型与字段说明

EL规则编辑器的操作类型与字段:为了让您配置的规则更加精准,我们提供了丰富的操作类型和字段选项。


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 3.1 常见操作类型说明

3.1 常见操作类型说明

EL规则编辑器的常见操作类型:系统提供了多种判断逻辑(操作符),它们决定了“字段”和“值”是如何进行比对的。

3.1.1 基础比较

适用于数字、时间等可比较大小的字段。

  • 等于 / 不等于:精确匹配。例如:状态 等于 已激活
  • 大于 / 大于等于:例如:内存 大于 4GB
  • 小于 / 小于等于:例如:创建时间 早于 2023-01-01

3.1.2 范围比较

适用于判断数值或时间是否在某个区间内。

  • 在什么之间(含边界):包含起始值和结束值。例如:[1, 10] 包含 1 和 10。
  • 在什么之间(不含边界):不包含起始值和结束值。例如:(1, 10) 不包含 1 和 10。
  • 在什么之间(只含左/右边界):半开半闭区间。

3.1.3 列表匹配

适用于检查一个值是否属于某个集合。

  • 在如下列表中:相当于“是其中之一”。例如:地区 在 [中国, 巴西, 美国] 列表中
  • 不在如下列表中:相当于“排除这些值”。

3.1.4 字符串模糊匹配

适用于文本内容的灵活搜索,类似于搜索引擎的关键词匹配。

  • 包含字符串 / 不包含字符串:只要文本中出现了指定字符就算匹配。例如:设备型号 包含 "Pro"
  • 左模糊匹配 (以...开头):例如:订单号 以 "ORD" 开头
  • 右模糊匹配 (以...结尾):例如:邮箱 以 "@gmail.com" 结尾

核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 3.1.5 空值判断

3.1.5 空值判断

适用于所有字段,用于判断字段是否为空,字符串长度为0或者只有空格也算为空。


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 3.2 字段功能详解

3.2 字段功能详解

EL规则编辑器的字段功能详解:系统中的每个字段都有其特定的用途和支持的操作类型。

3.2.1 设备基础信息

这些字段描述了设备的硬件和系统属性。

  • MAC地址:设备的物理地址,支持精确匹配和模糊搜索。
  • 设备型号 / 型号ID:支持精确查找特定型号,或模糊搜索系列型号。
  • 品牌 / 主控型号 / PCB主板型号:用于筛选特定厂商或硬件方案的设备。
  • 系统版本 / SDK版本 / 构建版本:支持版本号的比较和筛选。
  • CPU型号 / 内存 (DDR) / 真实DDR / 真实Flash:用于筛选特定性能配置的设备。
  • 设备名称 / 备注:支持灵活的文本搜索。

3.2.2 业务相关信息

这些字段与具体的业务流程和归属相关。

  • 状态 (status)
    • 这是一个特殊的枚举字段
    • 您只能选择 已激活未激活,不能随意输入其他文本。
  • 渠道 (channelId) / 渠道名称
    • channelId选择型字段,您需要从下拉列表中选择具体的渠道(如 "AppStore", "GooglePlay"),系统会自动关联对应的ID。
    • channelName 支持对渠道名的文本搜索。
  • 地区 (regionId)
    • 选择型字段,请从下拉列表中选择具体的国家或省份(如 "China", "USA")。
  • 所属用户 / 所属公司:用于划分设备归属权,支持列表筛选(例如:属于公司A或公司B的设备)。
  • 订单号 / 编号 / 生产订单:用于追踪具体的生产或销售批次。
  • 入网认证码:设备的入网凭证,支持精确或模糊匹配。

3.2.3 网络与标识

  • 设备IP / IP地址:支持网段匹配(通过左模糊匹配实现,如 "192.168.")或精确IP查找。
  • Launcher包名:用于识别设备当前运行的主界面应用。

3.2.4 时间相关

所有时间字段均支持时间段筛选(在...之间)和时间点比较(早于/晚于)。

  • 激活时间:设备首次激活的时间。
  • 创建时间:设备信息录入系统的时间。
  • 更新时间:设备信息最后一次变更的时间。
  • 最近一次心跳时间:设备最后一次在线的时间。

核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 4. 详细操作指南

4. 详细操作指南

EL规则编辑器的详细操作指南:


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 4.1 选中与编辑

4.1 选中与编辑

EL规则编辑器的选中与编辑操作:点击左侧(树形或图形)中的任意节点,右侧面板会自动切换到属性配置页。


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 4.2 配置不同类型的条件

4.2 配置不同类型的条件

EL规则编辑器中配置不同类型条件的方法:编辑器会根据您选择的字段,自动提供最合适的输入方式:

  • 选择类(如渠道、地区): 直接在下拉框中选择,支持搜索。

    渠道选择

  • 时间类: 提供日历控件,支持选择单个时间点或时间范围。

    时间选择

  • 多值列表(在...之中 / 包含): 当判断条件涉及多个值时(例如:用户等级 [金牌, 银牌, 钻石] 之中),界面会提供标签式的输入框。

    • 输入方式:输入内容后按回车键,或点击添加按钮。
    • 删除方式:点击标签上的 x 号即可移除。

    文本列表示例: 字符串列表

    时间列表示例: 时间列表

    包含关系示例: 包含字符串


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 4.3 预览规则代码 (EL)

4.3 预览规则代码 (EL)

EL规则编辑器的代码预览功能:配置完成后,如果您需要查看生成的机器代码(EL表达式),或者需要将其复制给开发人员,可以查看右侧的 EL 预览 标签页。 点击顶部的 复制 EL 按钮可一键复制。

EL预览


核心概念:规则引擎 | LiteFlow 规则编辑器操作手册 | 5. 常见问题

5. 常见问题

EL规则编辑器的常见问题:

Q: 图形模式下的节点太小看不清怎么办? A: 图形画布支持缩放和拖拽。您可以滚动鼠标滚轮放大/缩小,按住鼠标左键拖动画布。

Q: 如何删除一个节点? A:

  • 树形模式:点击节点右侧的红色垃圾桶图标。
  • 图形模式:鼠标悬停在节点上,点击出现的红色垃圾桶图标。

Q: 如果我想表达“(A 且 B) 或 C”这样的复杂逻辑怎么办? A: 这正是“逻辑组”的用武之地!

  1. 首先建立一个 OR (或) 组作为最外层。
  2. 在这个 OR 组里,添加一个 AND (且) 组,放入条件 A 和 B。
  3. 同样在 OR 组里,直接添加条件 C。 这样就构成了:满足 (A且B) 或者 满足 (C) 均可。
AI 问答