1. 内置节点
专属集成平台
  • 快速开始
    • 集成平台概览
  • 身份与用户管理
    • 用户管理
      • 用户与组织架构管理
    • 角色管理
      • 角色管理配置说明
    • 属性管理
      • 属性管理配置说明
      • IDAAS 扩展物理字段使用说明
    • 上游身份数据集成
      • 通讯录身份集成概述
      • 集成连接器配置指南
        • 通讯录集成-泛微
        • 通讯录集成-飞书
        • 通讯录集成-企业微信
        • 通讯录集成-AD
        • 通讯录集成-睿人事
        • 通讯录集成-北森
        • 通讯录集成-SCIM
        • 通讯录集成-用友EHR
        • 通讯录集成-Azure AD
        • 通讯录集成-致远
        • 通讯录集成-LDAP
        • 通讯录集成-数据库
        • 通讯录集成-钉钉
          • 基础说明
          • 钉钉集成连接器如何配置属性映射
      • 通过连接流实现身份集成
        • 在连接流画布中完成身份集成配置
      • 身份集成常见问题
        • 常见问题 & 排错指南
    • 下游身份数据同步
      • 通讯录同步概述
      • 同步连接器配置指南
        • 通讯录同步-企业微信
        • 通讯录同步-AD
        • 通讯录同步-用友U8C
        • 通讯录同步-钉钉
          • 基础说明
          • 如何配置部门职位扩展字段
      • 通过连接流实现身份同步
        • 使用连接流实现身份下游同步
      • 身份同步常见问题
        • 常见问题 & 排错指南
        • 使用代理网关进行身份同步
  • 认证源管理
    • 认证源基础说明
      • 认证源选型说明
      • 认证源管理概述
    • 认证源配置指南
      • 基础协议配置
        • 认证源-CAS协议
        • 认证源-OIDC协议
        • 认证源-OAuth2协议
      • 三方认证源配置手册
        • 认证源-钉钉
        • 认证源-AD
        • 认证源-飞书
        • 认证源-LDAP
        • 认证源-微信
        • 认证源-微信公众号
        • 认证源-Google Workspace
        • 认证源-AD Azure
        • 认证源-美云智数
        • 认证源-企业微信
  • 应用管理
    • 基础说明
      • 应用管理概述
      • 应用创建与配置
    • 应用单点登录
      • 单点登录概述
      • 单点登录配置
      • 单点登出配置
      • 授权范围配置
      • 自定义集成单点登录配置说明
      • 应用密码代填
      • 应用网关
      • 单点登录配置指南
        • 单点登录-OIDC
        • 单点登录-SAML协议
        • 单点登录-OAuth2
        • 单点登录-CAS协议
        • 单点登录-钉钉SSO
        • 单点登录-分贝通
        • 单点登录-用友NCC
        • 单点登录-宜搭
        • 单点登录-泛微OA
        • 单点登录-致远OA
        • 单点登录-金蝶云星空
        • 单点登录-中国电子云邮箱
        • 单点登录-阿里云控制台(RAM)
        • 单点登录-纷享销客应用
        • 单点登录-纷享销客待办
        • 单点登录-Exchange
        • Exchange-双入口配置指南
    • 应用授权管理
      • 应用授权概述
      • 基于组织架构和用户授权
      • 基于角色授权(RBAC)
      • 基于用户属性授权(ABAC)
      • 用户自主申请应用(OA审批授权)权限
    • 应用分发
      • 企业应用分发
      • ABM应用分发
    • 使用应用调用集成平台 OPENAPI
      • M2M接口授权
      • 接口调用权限配置说明
  • 连接中心
    • 产品概述
      • 什么是 AI 连接流
      • AI 连接流的典型使用场景
    • 基础功能
      • 流程运行日志
      • 功能概览
      • 如何创建 AI 工作流
      • 授权凭证管理
      • 错误处理
    • 节点说明
      • 节点基础类型说明
      • 数据处理节点
        • 文本处理节点
        • 数组处理
        • 数据集合节点
      • 文件处理节点
        • 「Base64 转 URL」动作说明
        • 「PPT分页切割」动作说明
      • 应用节点
        • Teambition
        • 金蝶云 K3Cloud
      • 内置节点
        • 子流程调用
        • 缓存处理
        • 分支节点
        • 循环执行
        • MYSQL 触发动作说明
        • 数字签名
        • Webhook触发
        • 缓存列表处理
        • 条件分支
        • FTP
        • 延时节点
        • 模型子节点
        • MCP SERVER 工具
        • 邮件发送
        • 存储子节点
        • 工具子节点
        • HTTP 请求
        • 变量节点
        • 加解密节点
        • 返回变量
      • 运维管理节点
        • 数据校验节点
      • AI节点
        • 构建你的第一个 AI Agent
        • AI 浏览器操作节点
        • AI Agent节点使用指南
        • AI 消息对话节点 & 组件嵌入
  • 审计日志
    • 管理员行为日志
    • 用户变更日志
    • 接口调用日志
    • 用户行为日志
    • 消息发送日志
  • 权限中心
    • 管理员账号管理
    • 管理员角色管理
  • 品牌设置
    • 登录页设置
      • 登录页面配置
      • 登录页CSS自定义页面样式
      • CSS定制页面内容:样式修改指南及故障排除
    • 短信设置
      • 短信模板配置
      • 短信服务使用及签名修改使用指南
      • 短信服务-自定义连接流配置
      • 阿里云短信网关配置指引
    • 邮件设置
      • 邮件模板配置
      • 通过自定义连接流发送邮件
      • SMTP 配置与测试支持文档
    • 企业消息设置
      • 企业消息配置
      • 企业消息(钉钉_飞书)配置
    • 分发页面设置
      • 分发页面设置
  • 平台设置
    • 功能概述
    • 授权管理
    • 代理网关
    • 授权信息
    • 登录策略配置
      • 弱密码检测功能说明
      • 登录流程配置
      • 自动登录功能配置
    • MFA 配置
      • MFA基础配置
      • 使用连接流自定义 MFA 策略
    • 运维日志
      • 运维日志下载
  • 最佳实践
    • AD-LDAP接入指南
    • 第三方平台应用创建指南
      • 钉钉
        • 钉钉全套集成指南
        • 创建钉钉开放平台应用
      • 飞书
        • 飞书全套集成指南
        • 创建飞书开放平台应用
      • 企微
        • 企业微信全套集成指南
        • 创建企业微信开放平台应用
  • 开放接口
    • 鉴权认证
      • 获取access_token(请求体方式)
      • 获取access_token(Basic认证方式)
    • 用户管理
      • 查询用户
      • 创建用户
      • 根据多个条件过滤并查询用户信息
      • 根据用户帐号获取用户信息
      • 修改用户
      • 启用/禁用用户
      • 删除用户
      • 修改用户密码
    • 组织部门
      • 获取组/部门的列表
      • 创建组/部门
      • 根据组/部门ID获取组/部门的信息
      • 修改组/部门
      • 删除组/部门
      • 根据组/部门ID获取下级组/部门信息
      • 过滤部门信息
    • 角色管理
      • 创建角色
      • 获取单个角色详情
      • 修改角色
      • 删除角色
      • 查询角色列表
      • 根据应用ID和用户ID获取角色列表
      • 查看角色所对应的用户列表
      • 给多个用户添加静态角色
      • 删除用户静态角色
      • 获取用户的角色信息
    • 连接中心
      • Webhook启动连接流
    • 事件通知
      • 连接器事件通知
  1. 内置节点

条件分支

概述#

条件分支控制节点,支持复杂的条件判断逻辑。通过配置条件参数,可以实现流程的分支执行,根据不同的条件结果选择不同的执行路径。

功能特性#

复杂条件逻辑:支持AND/OR组合的条件判断
多种操作符:支持等于、大小比较、包含等13种操作符
分支控制:根据条件结果执行不同分支
动态变量:支持使用流程变量进行条件判断
嵌套结构:支持多层条件组合

节点结构#

条件参数层次#

ConditionParam
├── orList: List<ConditionGroup>  // OR逻辑组
    ├── ConditionGroup
    │   ├── andList: List<ConditionItem>  // AND逻辑条件
    │       ├── ConditionItem
    │       │   ├── query: Object  // 条件变量
    │       │   ├── operator: OperatorEnum  // 操作符
    │       │   └── value: Object  // 比较值

执行逻辑#

OR逻辑:多个ConditionGroup之间是OR关系,只要一个组满足即可
AND逻辑:单个ConditionGroup内的ConditionItem之间是AND关系,所有条件都需满足
分支选择:条件为真时执行"true"分支,假时执行"false"分支

配置参数#

条件组#

orList:条件组列表,类型为List<ConditionGroup>

条件项#

andList:条件项列表,类型为List<ConditionItem>

条件配置采纳数#

query:条件变量,支持字符串、数字、变量引用
operator:操作符,从OperatorEnum枚举选择
value:比较值,支持字符串、数字、数组等

支持的操作符#

操作符描述示例
eq等于query == value
ne不等于query != value
sw开头等于query.startsWith(value)
nsw开头不等于!query.startsWith(value)
ew结尾等于query.endsWith(value)
ewn结尾不等于!query.endsWith(value)
gt大于query > value
ge大于或等于query >= value
lt小于query < value
le小于或等于query <= value
co包含query.contains(value)
nco不包含!query.contains(value)
in在集合内value.contains(query)
nin不在集合内!value.contains(query)

使用方法#

1. 配置简单条件#

单个条件判断:
{
  "orList": [
    {
      "andList": [
        {
          "query": "${user.age}",
          "operator": "ge",
          "value": 18
        }
      ]
    }
  ]
}

2. 配置复合条件#

AND条件(所有条件都要满足):
{
  "orList": [
    {
      "andList": [
        {
          "query": "${user.status}",
          "operator": "eq",
          "value": "active"
        },
        {
          "query": "${user.role}",
          "operator": "in",
          "value": ["admin", "manager"]
        }
      ]
    }
  ]
}

3. 配置OR条件#

OR条件(任一条件满足即可):
{
  "orList": [
    {
      "andList": [
        {
          "query": "${user.role}",
          "operator": "eq",
          "value": "admin"
        }
      ]
    },
    {
      "andList": [
        {
          "query": "${user.department}",
          "operator": "eq",
          "value": "IT"
        }
      ]
    }
  ]
}

4. 配置复杂条件#

组合AND和OR:
{
  "orList": [
    {
      "andList": [
        {
          "query": "${user.role}",
          "operator": "eq",
          "value": "admin"
        },
        {
          "query": "${user.level}",
          "operator": "ge",
          "value": 3
        }
      ]
    },
    {
      "andList": [
        {
          "query": "${user.department}",
          "operator": "eq",
          "value": "HR"
        },
        {
          "query": "${user.experience}",
          "operator": "gt",
          "value": 5
        }
      ]
    }
  ]
}

变量引用#

支持的变量格式#

流程变量:${variableName}
嵌套变量:${user.profile.name}
数组变量:${list[0].name}
上下文变量:${context.requestId}

变量类型转换#

系统会自动进行类型转换:
字符串比较:自动转为字符串
数字比较:自动转为数字
日期比较:支持日期字符串格式

执行流程#

条件求值过程#

1.
遍历orList中的每个ConditionGroup
2.
对每个ConditionGroup,检查其andList中的所有ConditionItem
3.
对每个ConditionItem,执行query operator value的比较
4.
如果ConditionGroup中所有ConditionItem都为true,则该组为true
5.
如果任意ConditionGroup为true,则整体条件为true
6.
根据结果选择true分支或false分支继续执行

分支执行#

true分支:条件满足时执行的后续节点
false分支:条件不满足时执行的后续节点
默认分支:如果未配置对应分支,则流程结束

高级功能#

动态条件构建#

支持运行时动态构建条件:
{
  "orList": [
    {
      "andList": [
        {
          "query": "${dynamic.field}",
          "operator": "eq",
          "value": "${dynamic.value}"
        }
      ]
    }
  ]
}

条件模板#

可预定义常用条件模板:
{
  "templates": {
    "user_check": {
      "andList": [
        {
          "query": "${user.status}",
          "operator": "eq",
          "value": "active"
        }
      ]
    }
  }
}

错误处理#

常见错误情况#

1.
变量不存在:引用的变量未定义
2.
类型不匹配:变量类型与操作符不兼容
3.
格式错误:条件配置格式不正确

错误处理策略#

变量不存在:条件项跳过,记录警告
类型不匹配:尝试类型转换,失败则条件为false
配置错误:节点执行失败,抛出异常

性能优化#

条件求值优化#

短路求值:AND条件中一旦有false立即返回
缓存结果:相同条件的重复求值使用缓存
并行求值:独立条件可并行计算

大数据处理#

支持集合操作的优化算法
避免全量遍历的性能问题

最佳实践#

1. 条件设计原则#

保持条件简洁,避免过度复杂的嵌套
使用有意义的变量名和比较值
优先使用AND条件,减少OR复杂度

2. 变量管理#

确保条件中使用的变量已被正确赋值
使用类型一致的变量和比较值
避免使用可能为null的变量

3. 分支设计#

为每个分支设计明确的业务逻辑
避免分支间的业务耦合
考虑异常情况的处理分支

4. 测试验证#

为复杂条件编写测试用例
验证边界条件和异常情况
确保分支覆盖率

调试和监控#

条件求值日志#

记录每个条件的求值过程
输出变量值和比较结果
标记求值耗时

性能监控#

条件求值平均耗时
缓存命中率
错误率统计

常见问题#

Q: 如何处理null值比较?#

A: 系统会将null值视为false。对于需要检查null的场景,使用专门的null检查操作符或转换为字符串比较。

Q: 支持正则表达式匹配吗?#

A: 目前不支持正则表达式,可使用sw/ew等字符串操作符,或通过自定义函数实现正则匹配。

Q: 条件求值的顺序是怎样的?#

A: AND条件按配置顺序求值,OR条件也是按顺序。建议将最可能失败的条件放在前面以提高性能。

Q: 如何实现多层嵌套条件?#

A: 通过组合多个Condition节点实现嵌套,每个节点的输出作为下一个节点的输入变量。

Q: 支持动态修改条件吗?#

A: 运行时不支持动态修改,但可以通过变量传递动态值来实现条件的变化。
修改于 2026-05-07 01:44:57
上一页
缓存列表处理
下一页
FTP
Built with