少写90%重复代码!SpringBoot3+Vue3+UniApp企业管理平台:Flowable审批、多租户、代码生成,开箱即用
🌐 文档地址:https://ruoyioffice.com
👇👇👇 文章底部获取源码和演示地址 👇👇👇
💬 微信:17156169080(获取产品咨询)
做企业管理系统的人,多半有过这种体验:新项目立项,第一周在搭用户、角色、菜单、部门;第二周在接审批流;第三周发现客户要手机上审批,又得起一个 App 工程;第四周客户说"我们有三家子公司要分开管",多租户从头补。
真正的业务需求,往往到第二个月才开始写。
RuoYi Office 就是把这前四周的活一次做完的那套东西。
简介
RuoYi Office 是一套 Spring Boot 3 + Vue 3 + UniApp 的企业管理一体化平台,后端一个工程、PC 与 App 两个前端,同一份代码既能单体一键启动,也能切成 Nacos + Gateway 的微服务部署。
底座里已经装好了:RBAC 权限、数据权限、SaaS 多租户、Flowable 审批引擎、bpmn-js 流程设计器、form-create 表单设计器、代码生成器、文件存储、消息中心、操作日志、OAuth2 单点登录。业务层里已经放好了:OA 协同、人力资源、CRM、进销存、合同、项目、资产、财务、WMS、MES、即时通讯、AI 大模型。
技术栈全部是主流选型,controller / service / dal 分层规范,TypeScript 全量覆盖,自己改、让 AI 改,都有章可循。
功能清单
一、系统底座
- 组织与权限
:公司 / 部门 / 岗位树,用户可挂多组织并切换;菜单、按钮、接口三级鉴权;数据权限按部门、本人、自定义规则下推到 SQL。 - SaaS 多租户
:租户套餐决定每个租户能看到的菜单集合;数据自动按租户隔离,新租户开通时自动初始化管理员、角色、字典和基础数据。 - 登录与安全
:账号密码、短信验证码、第三方登录;OAuth2 授权码 / 密码模式;接口签名、AES + RSA 参数加密、XSS 过滤、限流、幂等。 - 基础设施
:文件配置支持本地 / S3 / OSS / MinIO 多存储切换;字典管理;定时任务(XXL-Job);API 访问日志与错误日志;Redis 监控;多数据源与读写分离。 - 消息中心
:站内信、短信、邮件、企业微信统一场景配置,WebSocket 实时推送,消息点开直达业务单据。
二、流程审批(Flowable 8)
- 两种设计器
:bpmn-js 画标准 BPMN;仿钉钉的简易设计器给业务人员拖拽用。 - 审批方式齐全
:依次签、会签、或签、随机一人;加签、减签、转办、委派、退回到任意节点、撤回后重提。 - 候选人策略
:指定用户 / 角色 / 部门负责人 / 发起人自选 / 上级多级 / 表达式 / 脚本。 - 异常处理
:审批人为空自动跳过或转管理员;任务超时提醒 / 自动通过 / 自动驳回;抄送、评论、流程图高亮、审批打印模板。 - 业务表单绑定
:既支持 form-create 动态表单,也支持自定义业务页面绑定流程,一个流程 Key 打通 PC 与 App。
三、业务模块
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
四、多端同一套后端
- PC 管理端
:Vue 3 + Vben Admin 5 + Ant Design Vue,多标签页、主题切换、全局搜索、锁屏、国际化。 - 移动端 App / H5 / 小程序
:UniApp + unibest + Wot UI,一套代码出微信小程序、支付宝小程序、H5、Android / iOS。 - 待办打通
:PC 发起的审批,手机上看到的是同一条待办、同一张表单、同一个审批轨迹。 - 数据大屏
:内置 GoView 大屏设计器,经营数据可视化拖拽出图。
五、工程化与二次开发
- 代码生成器
:单表 / 树表 / 主子表,配置一次生成前后端 CRUD、菜单 SQL、权限标识、单元测试。 - 表单设计器
:form-create 拖拽出动态表单,字段联动、校验、节点级字段权限直接配。 - 单据打印
:积木报表模板,审批单、合同、台账一键打印导出。 - 双模部署
: -P boot单体打一个 jar;-P cloud切微服务,Nacos 注册 + Gateway 网关,代码不改。 - 信创适配
:MySQL / PostgreSQL / Oracle / 达梦 / 人大金仓,切数据源即可。 - AI 二开友好
:规范分层 + 完整可读源码 + 配套提示词与 Skills 包,用 Cursor 加一个模块的速度明显快于从零写。
功能截图
▲ 工作台:待办、通知、日程、应用中心一屏收口,顶部按业务域切换 OA / 人力 / 合同 / CRM / ERP / 项目。
▲ 发起流程:按业务域分组的流程目录,用车、用印、入职、转正、报销、开票,点一下就进对应表单。
▲ 待办任务:所有业务单据的审批汇聚到一张待办表,支持批量审批。
▲ 流程模型:每个业务单据对应一个流程 Key,版本、分类、表单绑定、发布状态一目了然。
▲ 代码生成:导入表结构,预览即生成 Controller / Service / Mapper / VO 与前端 list / info 页面。
▲ 企业云盘:Word / Excel / PPT 在线编辑,共享、收藏、版本历史,不用离开系统。
▲ 即时通讯:单聊群聊、图片文件、消息同步,审批结果直接推到会话里。
▲ 绩效驾驶舱:进行中批次、完成率、逾期待办、风险人数,管理者一眼看全。
▲ CRM 客户管理:线索、客户、公海、商机、合同、回款一条链。
▲ AI 对话:DeepSeek、通义、智谱、GPT 多模型切换,知识库与 MCP 工具可挂到对话里。
项目结构
ruoyi-office/ # 后端 · Java 17 · Maven 多模块├── server/ # 单体启动入口(-P boot)├── gateway/ # 微服务网关(-P cloud)├── framework/ # 公共 Starter:安全 / 多租户 / 数据权限 / MyBatis / Redis / MQ / WebSocket / Excel├── dependencies/ # 统一 BOM 版本管理├── module-system/ # 用户 / 角色 / 菜单 / 租户 / 字典 / 通知 / OAuth2├── module-infra/ # 代码生成 / 文件 / 配置 / 定时任务 / 日志 / 数据源├── module-bpm/ # Flowable 流程引擎 / 设计器 / 审批任务├── module-oa/ # 用车 / 用印 / 会议室 / 公文 / 云盘 / 工单 / 报销├── module-hrm/ # 员工 / 考勤 / 薪资 / 绩效 / 招聘 / 培训├── module-crm/ erp/ wms/ mes/ contract/ project/ asset/ finance/ im/ ai/ ...└── 每个模块 = xxx-api(接口与枚举) + xxx-server(controller / service / dal / convert / vo)ruoyi-office-vben/ # PC 管理端 · pnpm + Turbo Monorepo└── apps/web-antd/src/├── api/{module}/{feature}/ # 与后端模块同构的 API 层├── views/{module}/{feature}/ # list / info 页面├── components/ # 上传 / 富文本 / 字典标签 / form-create / bpmn 设计器└── adapter/ router/ store/ layouts/ruoyi-office-uniapp/ # 移动端 · UniApp + unibest└── src/├── pages-bpm/ # 审批详情、待办、流程公共能力├── pages-oa/ pages-hrm/ ... # 各业务域表单与列表└── api/ http/ store/ config/bpm-menu-config.ts
技术栈
后端
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PC 管理端
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
移动端
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
工程化:ESLint + Prettier + Stylelint,Husky + lint-staged + commitlint,Turbo 增量构建,MapStruct 编译期转换,SkyWalking 链路追踪,Spring Boot Admin 监控。
8 步跑起来
1、环境:JDK 17、Maven 3.9、MySQL 8 / PostgreSQL 14、Redis 6、Node 22 / 24、pnpm 11。
java -versionnode -v && pnpm -v
2、初始化数据库:执行数据库仓库 dump/latest/ 下的 schema_*.sql 与 static_data_*.sql,建表并导入菜单、字典、租户套餐等静态数据。
3、改配置:启动模块 server/src/main/resources/application-local.yaml 里改数据库与 Redis 连接。
4、启动后端(单体):
cd ruoyi-officemvn -P boot -DskipTests packagejava -jar server/target/*.jar --spring.profiles.active=local
默认端口 48080,接口文档 http://127.0.0.1:48080/doc.html。
5、启动 PC 前端:
cd ruoyi-office-vbenpnpm installpnpm dev:antd
浏览器打开 http://localhost:5800,admin / admin123 登录。
6、开一个新租户:系统管理 → 租户套餐,勾选这个客户能用的菜单;租户列表新增租户,管理员、角色、字典自动初始化完成。
7、生成第一个业务模块:基础设施 → 代码生成 → 导入表 → 预览 → 生成代码,把前后端文件放进对应模块,执行生成的菜单 SQL,刷新即见。
8、给它挂一条审批流:流程中心 → 流程模型 → 新建 → 选简易设计器拖三个节点 → 绑定刚生成的业务表单 → 发布。发起、审批、抄送,PC 与手机同步可见。
需要微服务部署时,把 -P boot 换成 -P cloud,起 Nacos 与 Gateway 即可,业务代码不改一行。
如果这篇对你有用,点个「在看」或收藏。
🌐 演示地址
https://ruoyioffice.com/web
📦 GitHub 源码
https://github.com/yuqing2026/ruoyi-office
📦 Gitee 源码
https://gitee.com/yqzy1688/ruoyi-office
💬 微信:17156169080(获取产品咨询)
点「阅读原文」直接查看系统。

