feat: dispatch NamedAction and NamedCondition by key
Hosts register one bean per action/condition; Spring wires the dispatcher when no facade is defined, and REST catalog projects from those beans. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -21,14 +21,14 @@
|
||||
- 线性或多步图:`StepTransition` + 内置谓词 / 宿主 `RoutingCondition`
|
||||
- 会签/或签:`ApprovalPolicy.ALL` / `ANY`(多候选人)
|
||||
- 结构化并行:`kind: PARALLEL` 块(一层、join ALL)
|
||||
- ACTION 步骤:事务提交后调用宿主 `ActionHandler`
|
||||
- ACTION 步骤:事务提交后调用宿主 `ActionHandler`(可经 `NamedAction` 分发)
|
||||
- 发起人撤回:`WITHDRAWN`,待办任务 `SKIPPED`
|
||||
- 管理员/系统取消:`cancel` → `CANCELLED`,待办任务 `SKIPPED`(引擎不鉴权角色)
|
||||
- 任务转派:当前办理人 `reassign`,审计 `TASK_REASSIGNED`
|
||||
- 到期升级:步骤 `due` + `processDue`,审计 `TASK_ESCALATED`
|
||||
- 分页查询:任务 / 实例 / 流程定义
|
||||
- 审计时间线:`ProcessEvent` + `queryHistory`
|
||||
- 扩展点:`AssigneeResolver`、`RoutingCondition`、`ActionHandler`、`OrdoEventListener`
|
||||
- 扩展点:`AssigneeResolver`、`RoutingCondition`、`ActionHandler`、`NamedCondition`、`NamedAction`、`OrdoEventListener`
|
||||
|
||||
开发计划:可选 REST + 目录 SPI。设计器为独立产品(不进本仓库),待 REST 与目录之后。多租户 **暂不在计划中**。见 [docs/roadmap.md](docs/roadmap.md)。
|
||||
|
||||
@@ -112,8 +112,9 @@ ordo:
|
||||
| Bean | 默认 |
|
||||
|---|---|
|
||||
| `AssigneeResolver` | 候选人即办理人 |
|
||||
| `RoutingCondition` | 始终匹配(`ref` 边;宿主可按 key+args 分发) |
|
||||
| `ActionHandler` | 空操作 |
|
||||
| `NamedCondition` / `NamedAction` | 可多个;无对应门面时按 key 分发 |
|
||||
| `RoutingCondition` | 无具名 condition 时始终匹配;有则未知 `ref` 为 false |
|
||||
| `ActionHandler` | 无具名 action 时空操作;有则未知 key 抛错 |
|
||||
| `OrdoEventListener` | 可注册多个,提交后按顺序调用 |
|
||||
|
||||
## 运行时约定
|
||||
|
||||
Reference in New Issue
Block a user