# process-design-engine **Repository Path**: esun0922/process-design-engine ## Basic Information - **Project Name**: process-design-engine - **Description**: 流程引擎 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-12 - **Last Updated**: 2026-10-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 流程引擎 基于 Flowable 7、Spring Boot 3 和 React 18 的独立流程设计与运行平台。项目用于承载流程建模、流程发布、表单绑定、任务办理、流程追踪、人员组织、审计和外部系统对接等能力。 当前 `master` 和 `develop` 均已对齐到第一阶段版本:`流程引擎第一阶段整改`。后续日常开发以 `develop` 为主,阶段稳定版本再合并到 `master`。 ## 第一阶段能力 - 流程设计:支持 BPMN 可视化设计、流程分类、节点属性配置、候选用户/候选组、条件表达式、多实例、抄送节点等配置。 - 流程发布与运行:支持模型保存、部署、流程定义查询、流程启动、流程实例管理、挂起/激活/终止。 - 表单能力:支持设计器内联表单、内联表单管理、版本发布、归档、复制、旧版表单导入和运行时表单渲染。 - 个人工作台:支持待我处理、已签收、我已办理、我的申请、草稿、流程标题、发起人、关键字段与搜索。 - 任务办理:支持签收、取消签收、办理、转办、前加签、后加签、退回上一节点、退回指定节点和审批意见。 - 申请操作:支持保存草稿、作废、收回、撤回、撤销、催办和流程追踪。 - 运行监控:支持监控大盘、流程实例列表、流程图、审批轨迹、历史任务和历史实例。 - 组织权限:支持本地 Flowable 用户/组,也支持通过配置接入三员系统作为身份和权限来源。 - 审计与通知:支持审计日志、任务托管、我的抄送和抄送消息已读。 - API 文档:前端内置接口说明页面,覆盖认证、模型、表单、任务、实例、历史、监控、身份、审计、托管和抄送接口。 ## 技术栈 | 模块 | 技术 | | --- | --- | | 后端 | Java 17、Spring Boot 3.2.5、Flowable 7.0.1、Maven | | 数据库 | PostgreSQL、H2 开发模式 | | 前端 | React 18、Vite、Ant Design 5、bpmn-js、Vitest | | 可选对接 | 独立表单引擎、三员管理系统 | ## 目录结构 ```text . |-- backend/ # Spring Boot + Flowable 后端服务 |-- frontend/ # React + Vite 前端工程 |-- form-engine-demo/ # 独立表单引擎演示服务 |-- docs/ # 需求、设计和阶段实施文档 |-- scripts/ # 辅助脚本 |-- start-all.bat # Windows 本地一键启动脚本 |-- README.md # 中文说明 `-- README.en.md # 英文说明 ``` ## 快速启动 ### 环境要求 - JDK 17+ - Maven 3.8+ - Node.js 18+ - npm 9+ - PostgreSQL 14+,或使用 H2 开发模式 ### 一键启动 Windows 本地开发可直接运行: ```bat start-all.bat ``` 默认启动 H2 开发模式: - 后端:http://localhost:8090/flowable-api - 前端:http://localhost:5174 ### 手动启动后端 使用 H2: ```bash cd backend mvn spring-boot:run -Dspring-boot.run.profiles=h2 ``` 使用 PostgreSQL: ```bash cd backend mvn spring-boot:run -Dspring-boot.run.profiles=pg ``` PostgreSQL 连接信息位于 `backend/src/main/resources/application-pg.yml`。生产或共享环境请改用环境变量或外部配置管理数据库密码、三员 `app-secret` 等敏感信息。 ### 手动启动前端 ```bash cd frontend npm install npm run dev ``` Vite 开发服务固定使用 `5174` 端口,并将 `/flowable-api` 代理到 `http://localhost:8090`。 ## 默认账号 本地模式启动后会初始化管理员账号: ```text 用户名:admin 密码:admin ``` 演示用户可在系统的“用户/组”或内置 API 文档中查看和维护。管理员可重置普通用户密码,默认重置密码为 `123456`。 ## 常用命令 后端测试: ```bash cd backend mvn test ``` 前端测试: ```bash cd frontend npm test ``` 前端构建: ```bash cd frontend npm run build ``` ## 配置说明 - `spring.profiles.active` 默认配置在 `backend/src/main/resources/application.yml`。 - `h2` 配置用于本地无 PostgreSQL 的快速开发,数据文件位于 `backend/data/`。 - `pg` 配置用于连接 PostgreSQL,连接参数在 `application-pg.yml`。 - `flowable.form-engine.enabled=false` 时使用流程引擎内置表单能力;设置为 `true` 时可接入独立表单服务。 - `sanyuan.enabled=false` 时使用本地用户/组;设置为 `true` 时通过三员系统同步和校验身份数据。 ## 分支约定 - `develop`:日常开发分支,后续功能和修复优先提交到这里。 - `master`:阶段稳定分支,当前作为第一阶段基线版本。 - `codex/*`:历史功能开发分支或本地工作树分支,已合入 `develop` 的代码由 `develop/master` 承载。 当前远端仓库: ```text https://gitee.com/handong-liu/process-design-engine.git ```