# YUNCHEN低代码平台
**Repository Path**: xxf_0921/yunchen-low-code-platform
## Basic Information
- **Project Name**: YUNCHEN低代码平台
- **Description**: YUNCHEN 低代码平台,基于 SpringBoot2.6+Vue3+Element Plus 开发的企业级快速后台开发解决方案。支持可视化拖拽表单设计、一键生成前后端业务代码、内置自研审批工作流引擎,配套完整用户 / 角色 / 部门权限体系、在线系统监控。可快速搭建 OA、ERP、业务管理中台,提供一键部署脚本,开箱即用,支持二次开发与私有化部署。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 4
- **Forks**: 2
- **Created**: 2026-07-16
- **Last Updated**: 2026-07-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# YUNCHEN低代码平台
## 企业级开源低代码开发平台
**可视化表单 · 代码生成 · 跨部门工作流 · 权限体系 · 系统监控**
一套可私有化部署的后台底座,帮你少写 CRUD、快速交付管理系统
[](./LICENSE)
[](#技术栈)
[](#技术栈)
[](#技术栈)
[](#技术栈)
[](#技术栈)
[](#环境要求)
[](#作者与联系)
[](#作者与联系)
**⭐ 如果觉得项目有用,请点右上角 Star,这是对开源作者最直接的鼓励!**
**欢迎 Fork / Issue / PR · 商业定制请加微信 `xinfeng0921`**
---
## 目录
- [项目简介](#项目简介)
- [适用场景](#适用场景)
- [功能全景](#功能全景)
- [产品截图](#产品截图)
- [系统架构](#系统架构)
- [技术栈](#技术栈)
- [环境要求](#环境要求)
- [快速开始](#快速开始)
- [配置说明](#配置说明)
- [推荐体验路径](#推荐体验路径)
- [目录结构](#目录结构)
- [核心模块说明](#核心模块说明)
- [常见问题](#常见问题)
- [版本规划](#版本规划)
- [更新日志](#更新日志)
- [参与贡献](#参与贡献)
- [码云推荐建议](#码云仓库完善建议给作者)
- [开源协议](#开源协议)
- [作者与联系](#作者与联系)
---
## 项目简介
**YUNCHEN低代码平台** 是面向企业信息化与交付团队的开源低代码后台系统。
围绕「**设计 → 生成 → 发布 → 审批 → 运维**」闭环,提供:
1. **可视化表单设计器**(所见即所得)
2. **管理端 Vue3 + Java 接口代码生成**
3. **一键发布并挂载业务菜单**
4. **跨部门多人审批工作流(或签 / 会签)**
5. **完整 RBAC 权限与系统监控**
你可以把本项目当作:
- 企业内部管理系统底座
- 外包项目快速交付脚手架
- 学习 Vue3 + Spring Boot 低代码实现的实战仓库
> 关键词:低代码、表单设计、代码生成、工作流、审批流、权限管理、Spring Boot、Vue3、Element Plus、开源后台、私有化部署
---
## 适用场景
| 场景 | 说明 |
|------|------|
| 中小企业信息化 | 快速搭用户权限、业务表单、审批流 |
| OA / 行政审批 | 请假、报销、采购等多级跨部门审批 |
| ERP / 进销存原型 | 库表建模 + 表单发布 + CRUD |
| 外包交付 | 少写重复代码,提高交付效率 |
| 教学演示 | 低代码、工作流、权限完整可运行案例 |
---
## 功能全景
### 总览矩阵
| 模块 | 能力 | 状态 |
|------|------|------|
| 工作台 | 问候、统计卡片、快捷入口、待办提醒、使用指引 | ✅ |
| 表单设计 | 拖拽、绑表、属性、列表查询、富文本、预览 | ✅ |
| 代码生成 | Vue3 页面 / Java Controller·Service / 预览 | ✅ |
| 一键发布 | 落盘页面、注册菜单、业务模块可见 | ✅ |
| 库表管理 | 查看表结构、字段维护 | ✅ |
| 接口一览 | 平台 API 目录(含工作流) | ✅ |
| 动态业务 | 按表 CRUD、导入导出 | ✅ |
| 工作流定义 | 画布节点、连线、或签/会签、人员/部门 | ✅ |
| 流程待办 | 通过、驳回、已办、我发起的、撤销 | ✅ |
| 用户角色 | 用户、角色、菜单、部门 | ✅ |
| 字典存储 | 字典类型/数据、存储配置 | ✅ |
| 系统监控 | 在线用户、服务器、缓存、登录/操作日志 | ✅ |
| 登录体验 | 品牌登录页、全屏、刷新菜单、改密 | ✅ |
### 低代码表单(亮点)
- 三栏设计器:字段/组件 · 画布 · 属性
- 绑定 MySQL 业务表,支持「从表结构生成」
- 组件覆盖:输入、选择、日期、上传、富文本、子表等
- 列表页查询条件、列显示可配置
- 发布后自动出现在侧栏「业务模块」
### 工作流(亮点)
- 可视化流程:开始 → 审批 → 结束,拖拽连线
- **指定人员**(按部门分组多选)
- **指定部门**(可跨多部门,发起时展开在职人员)
- **或签**:任一人通过即可
- **会签**:全部通过才流转
- 驳回结束整单;发起人可撤销进行中流程
- 内置演示流程「请假审批」
### 权限与监控
- JWT 登录,菜单动态路由
- 部门树 + 角色菜单授权
- 在线用户强退、服务器信息、缓存监控
- 可选 **Redis** 缓存(字典/菜单/部门),未启用时自动本地内存
- 登录日志 / 操作日志可查可清
---
## 产品截图







```
本地默认访问:
| 项目 | 地址 / 账号 |
|------|-------------|
| 管理端 | http://127.0.0.1:5173 |
| API | http://127.0.0.1:8093 |
| 超管 | `admin` / `123456` |
| 演示 | `demo` / `123456` |
---
## 系统架构
```text
┌─────────────────────────────────────────────────────────┐
│ 浏览器管理端 admin │
│ Vue3 + Vite + Element Plus + Pinia │
└───────────────────────────┬─────────────────────────────┘
│ HTTP + JWT
┌───────────────────────────▼─────────────────────────────┐
│ Spring Boot API :8093 │
│ 系统 │ 低代码 │ 工作流 │ 动态业务 │ 监控 │ 存储上传 │
└───────────────────────────┬─────────────────────────────┘
│
┌───────────────────────────▼─────────────────────────────┐
│ MySQL · lowcode_platform (utf8mb4) │
│ sys_* · lc_* · wf_* · biz 业务表 │
└───────────────────────────┬─────────────────────────────┘
│ 可选
┌───────────────────────────▼─────────────────────────────┐
│ Redis(字典 / 菜单 / 部门缓存,可关闭) │
└─────────────────────────────────────────────────────────┘
```
```mermaid
flowchart LR
A[管理员登录] --> B[表单设计 / 绑表]
B --> C[预览与生成代码]
C --> D[一键发布挂菜单]
D --> E[业务模块 CRUD]
A --> F[流程定义]
F --> G[发起流程]
G --> H[待办或签/会签]
H --> I[通过 / 驳回 / 结束]
A --> J[权限与监控]
```
---
## 技术栈
| 层级 | 技术选型 | 说明 |
|------|----------|------|
| 前端 | Vue 3、Vite、Element Plus、Pinia、Vue Router | 现代管理端 |
| 富文本 | wangEditor 5 | 设计器 / 运行时 |
| 后端 | Spring Boot 2.6、MyBatis | 稳定易二次开发 |
| 安全 | JWT | 无状态登录 |
| 连接池 | HikariCP | 高性能连接池 |
| 数据库 | MySQL 5.7 / 8.0 | utf8mb4 |
| 缓存 | Redis(可选) | 字典/菜单/部门等;未启用时本地内存 |
| 工作流 | 自研串行引擎 | 轻量、易懂、可扩展 |
---
## 环境要求
| 软件 | 版本建议 |
|------|----------|
| JDK | 8+ |
| Maven | 3.6+ |
| Node.js | 18+ |
| MySQL | 5.7+(推荐 5.7 / 8.0) |
| Redis | 可选,5.0+(`lowcode.redis.enabled=true` 时需要) |
| 浏览器 | Chrome / Edge 最新版 |
---
## 快速开始
### 第一步:执行数据库表设计(SQL)
请使用 **Navicat / DBeaver / DataGrip / MySQL Workbench** 等工具,字符集选择 **utf8mb4**,按顺序执行:
#### 1)核心库表
| 文件 | 作用 |
|------|------|
| `lowcode_platform.sql` | 创建库 `lowcode_platform` + 核心表结构 |
#### 2)初始化数据
| 文件 | 作用 |
|------|------|
| `init_data.sql` | 部门、用户、角色、基础菜单等 |
默认账号:`admin` / `123456`
#### 3)功能增强(建议全部执行,脚本幂等可重复)
| 顺序 | 文件 | 说明 |
|:----:|------|------|
| 1 | `migration_publish_wx.sql` | 发布能力相关 |
| 2 | `migration_dbtable_menu.sql` | 库表管理菜单 |
| 3 | `migration_storage_enhance.sql` | 存储配置 / 接口一览 |
| 4 | `migration_dict_menu.sql` | 字典管理 |
| 5 | `migration_monitor.sql` | 系统监控 |
| 6 | `migration_workflow.sql` | **工作流表、菜单、演示流程** |
#### 4)演示业务(可选)
| 文件 | 说明 |
|------|------|
| `demo_product_manage.sql` | 商品管理演示 |
| `demo_product_sku.sql` | 商品 SKU 子表 |
#### 命令行示例
```bash
mysql -uroot -p --default-character-set=utf8mb4 < lowcode_platform.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < init_data.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_publish_wx.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_dbtable_menu.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_storage_enhance.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_dict_menu.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_monitor.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < migration_workflow.sql
# 可选演示
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < demo_product_manage.sql
mysql -uroot -p --default-character-set=utf8mb4 lowcode_platform < demo_product_sku.sql
```
> Windows 可将 `mysql` 换成安装目录下的 `mysql.exe`。
---
### 第二步:启动后端
修改数据源(如需要):
```text
api/src/main/resources/application.properties
```
启动:
```bash
cd api
mvn -DskipTests package
java -jar target/yunchen-Api-0.0.1-SNAPSHOT.jar
```
Windows:
```powershell
.\start-api.ps1
.\start-api.ps1 -Rebuild # 修改 Java 后
```
接口默认:`http://127.0.0.1:8093`
---
### 第三步:启动管理端
```bash
cd admin
npm install
npm run dev
```
打开 Vite 提示地址(默认 `http://127.0.0.1:5173`),使用 `admin / 123456` 登录。
---
## 配置说明
### 前端运行时 `admin/public/config.js`
```js
window.configs = {
BASE_URL: 'http://127.0.0.1:8093'
}
```
### 后端常用项 `application.properties`
| 配置 | 说明 |
|------|------|
| `server.port` | 默认 `8093` |
| `spring.datasource.*` | MySQL 连接 |
| `token-secret` | JWT 密钥 |
| `lowcode.online.single-login` | 同账号是否单点在线 |
| `lowcode.redis.enabled` | 是否启用 Redis(默认 `false`,无 Redis 也能启动) |
| `spring.redis.host/port` | Redis 地址,默认 `127.0.0.1:6379` |
| `spring.redis.database` | Redis DB,默认 `2` |
| `lowcode.redis.key-prefix` | 缓存 key 前缀,默认 `yunchen:cache:` |
| `lowcode.cache.dict-ttl-seconds` | 缓存 TTL(秒),默认 `600` |
启用 Redis 示例:先启动本机 Redis,再改 `application.properties`:
```properties
lowcode.redis.enabled=true
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=
spring.redis.database=2
```
启用后字典、菜单路由、部门树等优先走 Redis,并带约 30s 本地 L1;连接失败会自动回退本地缓存。监控页「服务器 / 缓存」可查看后端状态。
---
## 推荐体验路径
1. **登录** → 浏览工作台统计与快捷入口
2. **低代码 → 表单设计**:绑表 / 拖拽 → 保存 → **发布**
3. 侧栏 **业务模块** 打开页面,验证增删改查
4. **工作流 → 流程定义**:配置跨部门节点并发布 → 发起
5. **我的待办** 体验或签 / 会签、驳回
6. **系统管理 / 系统监控** 查看权限与运维数据
---
## 目录结构
```text
YUNCHEN低代码平台/
├─ api/ # Spring Boot 后端
│ └─ src/main/java/com/yunchen/server/
│ ├─ controller/ # 接口
│ ├─ service/ # 业务(含表单生成、工作流)
│ ├─ config/ # 跨域、拦截器、连接池
│ └─ AuthorInfo.java # 产品与作者信息
├─ admin/ # Vue3 管理端
│ ├─ public/config.js # 品牌与 API 地址
│ └─ src/
│ ├─ views/ # 业务页面
│ ├─ components/ # 流程设计器、富文本等
│ └─ constants/brand.js
├─ lowcode_platform.sql # ★ 建库 + 核心表设计
├─ init_data.sql # ★ 初始化数据
├─ migration_*.sql # 功能增强 / 工作流
├─ demo_*.sql # 演示业务数据
├─ start-api.ps1 # Windows 启动后端
├─ docs/images/ # 建议存放截图(请自建)
└─ README.md
```
---
## 核心模块说明
### 1. 系统管理
- 用户、角色、菜单、部门
- 字典类型 / 字典数据
- 存储配置(上传策略)
### 2. 低代码
- 表单列表、设计器、运行时预览
- 库表管理、接口一览
- 发布产物目录:`admin/src/views/generated/`
### 3. 工作流
| 页面 | 说明 |
|------|------|
| 流程定义 | 设计、保存、发布、发起 |
| 我的待办 | 审批通过 / 驳回 |
| 我的已办 | 历史任务 |
| 我发起的 | 进度查看 / 撤销 |
相关表:`wf_definition`、`wf_instance`、`wf_task`
### 4. 系统监控
- 在线用户(强退)
- 服务器运行信息
- 缓存查看 / 清理
- 登录日志、操作日志
---
## 常见问题
Q1:工作流菜单没有,或接口 500?
请确认已执行 `migration_workflow.sql`,并重新打包启动后端:
```powershell
.\start-api.ps1 -Rebuild
```
Q2:改了 Java,前端没变化?
前端热更新即可;后端必须重新 `mvn package` 后启动。
Q3:发布后侧栏没有新菜单?
点击顶栏「刷新菜单」图标,或重新登录。
Q4:如何配置跨部门审批?
流程节点选择「指定部门」可多选部门;或「指定人员」按部门分组多选,并设置或签 / 会签。
Q5:数据库脚本执行报错?
确认使用 `utf8mb4`,按 README 顺序执行;增强脚本设计为幂等,可重复执行。
`lowcode_platform.sql` 含建库语句,首次请完整执行。
Q6:能否商用 / 私有化?
开源协议为 Apache-2.0,可商用与私有化。需要定制开发请联系微信 `xinfeng0921`。
---
## 版本规划
| 版本 | 计划 |
|------|------|
| v1.0 | 表单设计、代码生成、发布、权限、监控、工作流(当前) |
| v1.1 | 流程条件分支、抄送、超时提醒 |
| v1.2 | 表单与流程深度绑定(业务单发起) |
| v1.3 | 报表看板、更多组件与主题 |
欢迎在 Issue 中投票你最想要的功能。
---
## 更新日志
### v1.0.0(2026-07)
- 管理端 Vue3 + Element Plus 完整后台
- 低代码表单设计、代码生成、一键发布
- 工作流可视化设计,跨部门或签 / 会签
- 系统管理、库表、接口一览、动态业务
- 系统监控、工作台、登录与品牌配置
---
## 参与贡献
欢迎提交 Issue / Pull Request:
1. Fork 本仓库
2. 新建分支:`feature/xxx` 或 `fix/xxx`
3. 提交变更(请保持 SQL 幂等、不影响默认账号)
4. 发起 PR 并说明动机与测试方式
贡献方向建议:
- Bug 修复与体验优化
- 工作流节点能力扩展
- 组件物料与文档完善
- 性能与安全加固
---
## 码云仓库完善建议(给作者)
想更容易被码云推荐,除 README 外建议同步完善:
1. **仓库简介**:`企业级开源低代码平台,表单设计/代码生成/跨部门工作流/权限监控,Vue3+SpringBoot,可私有化`
2. **项目标签**:`低代码` `表单设计` `工作流` `审批流` `Vue3` `SpringBoot` `ElementPlus` `开源后台` `代码生成`
3. **上传截图**:`docs/images/` 至少 4 张(登录、首页、设计器、工作流)
4. **选择开源许可**:Apache-2.0
5. **保持活跃**:定期提交、回复 Issue、发 Release
6. **首页置顶**:在码云项目设置中完善 README 展示与演示说明
---
## 开源协议
本项目基于 **Apache License 2.0** 开源(以仓库内 `LICENSE` 为准)。
- 允许商用、私有化、二次开发
- 保留版权与许可声明即可
- 深度定制 / 交付可联系作者
---
## 作者与联系
| 项目 | 内容 |
|------|------|
| 产品名称 | **YUNCHEN低代码平台** |
| 作者单位 | **武汉云晨科技有限公司** |
| 微信号 | **xinfeng0921** |
| 交流方向 | 低代码落地、审批流、企业后台定制与私有化 |
---
### ⭐ 感谢每一位 Star 的朋友
**YUNCHEN低代码平台** · 让后台交付更简单
武汉云晨科技有限公司 · 微信 **xinfeng0921**
[回到顶部](#yunchen低代码平台)