# @pubinfo/module-process-engine

Pubinfo 的流程引擎模块，覆盖流程定义、流程设计、流程发起、待办/已办/抄送、流程实例与任务管理等页面能力。

## 它在做什么

- 提供 `processEngine()` 模块注册函数
- 缓存业务侧的 `request` 实例和 `yewuPages` 动态页面映射
- 内置流程中心页面：
  - 发起流程
  - 我的流程
  - 待办 / 已办 / 抄送
  - 流程任务与流程实例管理
- 内置流程设计能力：
  - 流程模型列表
  - 流程定义
  - 表达式、监听器、流程分类
  - BPMN / LogicFlow 设计器
- 支持业务表单动态注册和流程详情联动展示

## 基本用法

```ts
import { processEngine } from '@pubinfo/module-process-engine';

const yewuPages = import.meta.glob('./pages/**/*.vue');

export function setupProcessEngine() {
  return processEngine({
    request: basic,
    yewuPages,
  });
}
```

## `yewuPages` 是什么

模块内部有一个 `registerComponent()`，会从 `yewuPages` 里按路径匹配业务表单组件。因此如果你的流程发起页、审批详情页需要渲染业务自定义表单，就需要把这些页面文件通过 `import.meta.glob()` 传进来。

## 模块内容概览

- `pages/flow-center`: 发起流程、我的流程
- `pages/approve-center`: 待办、已办、抄送
- `pages/flow-manage`: 流程实例、流程任务、流程详情
- `pages/flow-create`: 流程模型设计器、监听器、表达式、流程类型
- `pages/yewu` / `pages/process/yewu`: 业务表单发起与流程关联页

## 主要依赖特征

从代码看，这个模块明显依赖：

- `alova` 风格请求实例
- `@pubinfo/module-rbac` 权限体系
- `LogicFlow` 和 `bpmn-js` 流程设计能力
- Pubinfo 约定的页面路由与组件体系

## 适用场景

适合已经基于 Pubinfo 搭建后台系统，并且需要“流程建模 + 流程审批 + 业务表单驱动”的一体化流程模块的项目。
