条件分支 组件
条件分支组件(FlowCondition)用于流程中的条件判断,根据条件结果决定后续是否继续执行下游分支。
概述
条件分支相当于流程中的一道「闸门」:组件对自身配置的条件求值,条件成立时继续执行下游全部节点,条件不成立时当前分支就此终止,不产生任何输出。支持三种条件类型——实体数据条件、实体数据条件(旧版)与当前登录用户条件。
条件满足判断涉及「操作对象 + 条件项」与「数据匹配规则」,其中条件项由「字段 + 操作符 + 值」组成。
配置项
| 配置项 | 说明 |
|---|---|
| 条件类型 | 实体数据条件 / 实体数据条件(旧版)/ 当前登录用户条件,必填 |
条件类型取值
| 界面名称 | 值(ConditionType) | 说明 |
|---|---|---|
| 实体数据条件 | 2 | 轻量条件,按业务数据的字段值判断,需指定操作对象 |
| 实体数据条件(旧版) | 0 | 历史条件,通过拖拽组件树配置,已不再支持保存 |
| 当前登录用户条件 | 1 | 按当前登录用户的身份或 角色判断 |
实体数据条件(ConditionType = 2)
| 配置项 | 说明 |
|---|---|
| 操作对象 | 条件所依据的实体对象,必填 |
| 条件 | 条件项列表,每项由「字段 + 操作符 + 值」组成 |
| 数据匹配规则 | 全部数据满足:所有数据都要满足条件;任意一条数据满足:存在一条数据满足即可 |
条件项支持「满足全部条件(And)」与「满足任一条件(Or)」两种组合方式,可在条件区域右上角切换。条件项在属性面板中直接增删,不再弹出拖拽窗口:
- 选择字段,可选项来自操作对象的字段列表
- 选择操作符,可选项随字段类型变化,例如日期字段支持
=、≠、>、≥、<、≤,文本字段支持=、≠、包含 - 填写比较值,控件随字段类型变化,例如日期使用日期选择器、布尔使用是/否下拉、用户或组织使用对应数据源下拉;文本字段绑定数据源时既可自由输入也可快捷选择
每条条件行的取值方式可为「直接填值」或「Razor 表达式」,表达式方式在条件行以「Razor」标签标识。