Files
ruoyi-vue-pro/project_architecture_and_features_zh.md
T
2025-11-22 22:17:51 +08:00

70 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 项目架构与功能分析报告 (ruoyi-vue-pro)
## 1. 项目概述
**项目名称**ruoyi-vue-pro (芋道)
**项目定位**:企业级 Java 快速开发平台
**核心特点**:基于 Spring Boot 多模块架构,提供全套的 SaaS 多租户、工作流、商城、ERP、CRM 等解决方案。代码完全开源(MIT 协议)。
## 2. 系统架构 (System Architecture)
本项目采用标准的 **前后端分离** 架构,后端基于 Spring Boot 进行模块化拆分。
### 2.1 后端架构 (Backend)
* **核心框架**Spring Boot 2.7.18 (JDK 8) / Spring Boot 3.2 (JDK 17/21)
* **模块化设计**
* `yudao-dependencies`: 统一依赖管理 (BOM)。
* `yudao-framework`: 框架核心组件(封装了 MyBatis, Redis, Web, Security 等通用逻辑)。
* `yudao-server`: 主启动模块,负责组装各个业务模块。
* `yudao-module-*`: 独立的业务模块(如 system, infra, bpm, mall 等),模块间通过 API 解耦。
* **数据存储**
* MySQL 5.7/8.0+: 关系型数据库。
* Redis 5/6/7: 缓存与消息队列。
* **中间件**
* Flowable 6.8.0: 工作流引擎。
* Redisson: 分布式锁与缓存客户端。
* SkyWalking: 链路追踪。
* Spring Boot Admin: 服务监控。
### 2.2 前端架构 (Frontend)
项目提供多种前端实现,适配不同场景:
* **管理后台 (Vue3)**: `yudao-ui-admin-vue3`,基于 Vue 3 + Element Plus + Vite。
* **管理后台 (Vue3 Vben)**: `yudao-ui-admin-vben`,基于 Vue 3 + Ant Design Vue (Vben Admin)。
* **移动端**: `yudao-ui-admin-uniapp` (管理后台) 和 `yudao-mall-uniapp` (商城),基于 uni-app,支持微信小程序、H5、App。
## 3. 核心功能 (Core Features)
### 3.1 通用支撑模块
* **系统功能 (`module-system`)**:
* 用户、角色、部门、岗位管理。
* **SaaS 多租户**:支持多租户数据隔离与套餐管理。
* **权限控制**:RBAC 模型,支持菜单、按钮、数据权限。
* OAuth2 单点登录。
* **基础设施 (`module-infra`)**:
* **代码生成器**:一键生成前后端代码 (CRUD)。
* **文件服务**:支持 MinIO, 阿里云, 腾讯云, 七牛云等。
* **API 日志与监控**:集成 Swagger, SkyWalking, Spring Boot Admin。
* 定时任务、数据库文档生成。
### 3.2 业务系统模块
* **工作流程 (`module-bpm`)**:
* **双设计器**:仿钉钉/飞书设计器 (Simple) + BPMN 标准设计器。
* **丰富流程逻辑**:会签、或签、依次审批、抄送、驳回、转办、委派、加签/减签。
* **流程表单**:拖拽式表单设计。
* **商城系统 (`module-mall`)**:
* 完整的 B2C 商城功能:商品、订单、购物车、营销(优惠券、拼团、秒杀)。
* 会员中心:积分、等级、签到。
* **支付系统 (`module-pay`)**:
* 聚合支付:对接支付宝、微信支付。
* 支持支付、退款、回调通知。
* **ERP 系统 (`module-erp`)**:
* 进销存管理:采购、销售、库存、财务。
* **CRM 系统 (`module-crm`)**:
* 客户关系管理:线索、客户、商机、合同、回款。
* **AI 大模型 (`module-ai`)**:
* 集成主流大模型能力(聊天、绘画等)。
* **微信开发 (`module-mp`)**:
* 公众号管理:粉丝、消息、素材、自动回复。
## 4. 总结
ruoyi-vue-pro 是一个功能极度丰富、架构成熟的 Java 开源项目。它不仅提供了基础的 RBAC 权限管理,还内置了完整的工作流、商城、ERP 等复杂业务系统,非常适合作为企业级项目的启动脚手架或学习参考。