345 lines
10 KiB
Markdown
345 lines
10 KiB
Markdown
# HZHub-AI 三项目综合分析报告
|
||
|
||
> 分析时间:2026-03-26
|
||
> 分析对象:hzhub-ai(后端)、hzhub-admin(管理后台)、hzhub-portal(用户前端)
|
||
|
||
---
|
||
|
||
## 一、整体架构总览
|
||
|
||
### 1.1 三项目关系图
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ HZHub-AI 生态系统 │
|
||
├─────────────────┬─────────────────┬─────────────────────────────┤
|
||
│ hzhub-portal │ hzhub-admin │ hzhub-ai │
|
||
│ (用户前端) │ (管理后台) │ (后端服务) │
|
||
├─────────────────┼─────────────────┼─────────────────────────────┤
|
||
│ · AI对话界面 │ · 系统管理 │ · 多模型接入 │
|
||
│ · 知识库问答 │ · 模型配置 │ · RAG知识库 │
|
||
│ · 工作流执行 │ · 知识库管理 │ · MCP工具框架 │
|
||
│ · 智能体交互 │ · 流程编排设计 │ · 流程编排引擎 │
|
||
│ │ · MCP工具管理 │ · 多智能体框架 │
|
||
│ │ · 工作流管理 │ · 企业微信SDK │
|
||
└─────────────────┴─────────────────┴─────────────────────────────┘
|
||
│ │ │
|
||
└────────────────┴────────────────────┘
|
||
│
|
||
┌─────────┴─────────┐
|
||
│ 数据存储层 │
|
||
│ MySQL + Milvus │
|
||
└───────────────────┘
|
||
```
|
||
|
||
### 1.2 技术栈对比
|
||
|
||
| 层级 | hzhub-portal | hzhub-admin | hzhub-ai |
|
||
|------|-----------|-------------|----------|
|
||
| **框架** | Vue 3 | Vue 3 | Spring Boot 3.5.8 |
|
||
| **UI库** | Element Plus X | Ant Design Vue | - |
|
||
| **样式** | UnoCSS | Tailwind CSS | - |
|
||
| **状态** | Pinia | Pinia | - |
|
||
| **请求** | hook-fetch | @vben/request | Spring AI |
|
||
| **AI** | SSE流式 | 流程设计器 | LangChain4j |
|
||
| **构建** | Vite | Vite + Turbo | Maven |
|
||
| **架构** | Single Repo | Monorepo | 多模块Maven |
|
||
|
||
---
|
||
|
||
## 二、各项目深度分析
|
||
|
||
### 2.1 hzhub-ai(后端)- 核心引擎
|
||
|
||
**架构评分**:⭐⭐⭐⭐⭐(5/5)
|
||
|
||
**优势**:
|
||
- 模块化设计清晰(25个common子模块)
|
||
- AI能力完整(模型接入、RAG、Agent、工作流)
|
||
- 技术栈先进(LangChain4j、Spring AI)
|
||
- 扩展性强(MCP协议、流程编排)
|
||
|
||
**不足**:
|
||
- Spring Boot版本实际为3.5.8(非宣称的4.0)
|
||
- SQL Server支持需自行开发
|
||
- 文档有些地方不够详细
|
||
|
||
**核心资产**:
|
||
| 模块 | 价值 | HZHub复用度 |
|
||
|------|------|-------------|
|
||
| ruoyi-chat | AI聊天、知识库、MCP | 90% |
|
||
| hzhub-aiflow | 流程编排引擎 | 90% |
|
||
| ruoyi-system | 系统管理 | 80% |
|
||
| hzhub-common | 公共组件库 | 85% |
|
||
|
||
### 2.2 hzhub-admin(管理后台)- 配置中心
|
||
|
||
**架构评分**:⭐⭐⭐⭐⭐(5/5)
|
||
|
||
**优势**:
|
||
- Monorepo架构先进(pnpm + Turbo)
|
||
- Vben生态丰富(@vben/*包)
|
||
- 组件封装规范(useVbenVxeGrid等)
|
||
- 权限控制完善
|
||
|
||
**不足**:
|
||
- 学习曲线较陡(Vben生态复杂)
|
||
- 构建依赖较多
|
||
- 定制需要理解Monorepo机制
|
||
|
||
**核心资产**:
|
||
| 功能 | 价值 | HZHub复用度 |
|
||
|------|------|-------------|
|
||
| 系统管理 | 用户、角色、菜单 | 95% |
|
||
| 流程编排设计器 | @vue-flow/core | 90% |
|
||
| 知识库管理 | 文档、片段管理 | 85% |
|
||
| MCP工具管理 | 工具、市场 | 80% |
|
||
|
||
### 2.3 hzhub-portal(用户前端)- 交互界面
|
||
|
||
**架构评分**:⭐⭐⭐⭐(4/5)
|
||
|
||
**优势**:
|
||
- 架构简洁(Single Repo)
|
||
- Element Plus X组件专业(Sender等)
|
||
- 流式响应处理成熟
|
||
- 代码易于理解
|
||
|
||
**不足**:
|
||
- 功能相对单一(主要是聊天)
|
||
- 单包架构扩展性有限
|
||
- 与Admin技术栈不一致(Element Plus vs Ant Design)
|
||
|
||
**核心资产**:
|
||
| 组件 | 价值 | HZHub复用度 |
|
||
|------|------|-------------|
|
||
| ModelSelect | 模型选择器 | 90% |
|
||
| FilesSelect | 文件选择器 | 90% |
|
||
| Sender | 聊天输入组件 | 85% |
|
||
| 流式处理 | SSE实现 | 95% |
|
||
|
||
---
|
||
|
||
## 三、HZHub整合策略
|
||
|
||
### 3.1 复用矩阵
|
||
|
||
| HZHub资产 | HZHub目标 | 复用策略 | 工作量 |
|
||
|-----------|-----------|----------|--------|
|
||
| ruoyi-chat模块 | hzhub-ai | 直接复用 | 低 |
|
||
| hzhub-aiflow模块 | hzhub-ai | 直接复用 | 低 |
|
||
| ruoyi-system模块 | hzhub-admin | 直接复用 | 低 |
|
||
| hzhub-admin整体 | hzhub-admin | 改造AI模块为ERP模块 | 中 |
|
||
| hzhub-portal组件 | hzhub-portal-* | 复用组件,改造业务 | 中 |
|
||
| SQL Agent | hzhub-erp | 改造为SQL Server版 | 高 |
|
||
|
||
### 3.2 推荐技术路线
|
||
|
||
```
|
||
HZHub 技术栈决策:
|
||
|
||
后端 (hzhub-ai / hzhub-erp / hzhub-gateway)
|
||
├── Spring Boot 3.5.8(与hzhub-ai一致,暂不用4.0)
|
||
├── LangChain4j 1.11.0
|
||
├── MyBatis Plus 3.5.14
|
||
├── Sa-Token 1.44.0
|
||
└── 复用hzhub-ai的common模块
|
||
|
||
管理后台 (hzhub-admin)
|
||
├── Vue 3 + TypeScript
|
||
├── Vben Admin(复用hzhub-admin架构)
|
||
├── Ant Design Vue
|
||
├── pnpm workspace + Turbo
|
||
└── 复用hzhub-admin的packages
|
||
|
||
门户前端 (hzhub-portal-company / hzhub-portal-dealer)
|
||
├── Vue 3 + TypeScript
|
||
├── Element Plus X(复用hzhub-portal组件)
|
||
├── UnoCSS
|
||
├── Pinia
|
||
└── 复用hzhub-portal的组件模式
|
||
```
|
||
|
||
### 3.3 开发优先级
|
||
|
||
| 优先级 | 模块 | 依赖 | 预计工期 |
|
||
|--------|------|------|----------|
|
||
| P0 | hzhub-ai | 复用ruoyi-chat | 1周 |
|
||
| P0 | hzhub-admin | 复用hzhub-admin | 1周 |
|
||
| P1 | hzhub-erp | 自研SQL Server适配 | 2-3周 |
|
||
| P1 | hzhub-portal-company | 复用+改造 | 2周 |
|
||
| P2 | hzhub-portal-dealer | 复用+改造 | 2周 |
|
||
| P2 | 流程编排ERP节点 | 扩展aiflow | 1周 |
|
||
|
||
---
|
||
|
||
## 四、关键设计决策
|
||
|
||
### 4.1 后端架构决策
|
||
|
||
**决策1:Spring Boot版本**
|
||
- 选择:3.5.8(与hzhub-ai一致)
|
||
- 理由:稳定性优先,4.0升级成本未知
|
||
|
||
**决策2:ERP服务独立**
|
||
- 选择:独立hzhub-erp服务
|
||
- 理由:隔离SQL Server 2008 R2兼容性风险
|
||
|
||
**决策3:AI服务复用**
|
||
- 选择:直接复用ruoyi-chat
|
||
- 理由:功能完整,改造成本低
|
||
|
||
### 4.2 前端架构决策
|
||
|
||
**决策1:管理后台框架**
|
||
- 选择:Vben Admin(Ant Design Vue)
|
||
- 理由:功能强大,生态完善
|
||
|
||
**决策2:门户前端框架**
|
||
- 选择:Element Plus X
|
||
- 理由:hzhub-portal组件可直接复用
|
||
|
||
**决策3:样式方案**
|
||
- 选择:Admin用Tailwind,门户用UnoCSS
|
||
- 理由:与各自复用源码保持一致
|
||
|
||
### 4.3 数据库决策
|
||
|
||
**决策1:向量数据库**
|
||
- 选择:Milvus
|
||
- 理由:hzhub-ai原生支持,性能优秀
|
||
|
||
**决策2:ERP数据源**
|
||
- 选择:直连SQL Server 2008 R2
|
||
- 理由:无WebService接口,需JDBC直连
|
||
|
||
---
|
||
|
||
## 五、风险评估
|
||
|
||
### 5.1 技术风险
|
||
|
||
| 风险 | 等级 | 缓解措施 |
|
||
|------|------|----------|
|
||
| SQL Server 2008 R2兼容性 | 高 | 预留双数据源,可切换 |
|
||
| LangChain4j API变化 | 中 | 锁定版本1.11.0 |
|
||
| 前端技术栈不一致 | 中 | 文档化两套UI规范 |
|
||
| 企业微信多实体对接 | 中 | 抽象配置层 |
|
||
|
||
### 5.2 项目风险
|
||
|
||
| 风险 | 等级 | 缓解措施 |
|
||
|------|------|----------|
|
||
| 工期估算不准 | 中 | 分阶段交付,每阶段验收 |
|
||
| ERP数据结构不明 | 高 | 先做数据架构调研 |
|
||
| 团队学习成本 | 中 | 文档+培训 |
|
||
|
||
---
|
||
|
||
## 六、实施建议
|
||
|
||
### 6.1 第一阶段(1-2周)
|
||
|
||
**目标**:搭建基础框架
|
||
|
||
**任务**:
|
||
1. 创建Gitea仓库,初始化项目结构
|
||
2. 复制hzhub-ai代码到hzhub-ai
|
||
3. 复制hzhub-admin代码到hzhub-admin
|
||
4. 验证基础功能运行
|
||
|
||
**产出**:
|
||
- 可运行的基础框架
|
||
- 开发环境搭建文档
|
||
|
||
### 6.2 第二阶段(3-4周)
|
||
|
||
**目标**:ERP服务开发
|
||
|
||
**任务**:
|
||
1. 开发hzhub-erp服务(SQL Server连接)
|
||
2. 实现基础数据查询API
|
||
3. 开发SQL Agent(SQL Server版)
|
||
4. 集成到hzhub-admin
|
||
|
||
**产出**:
|
||
- ERP服务可用
|
||
- 基础数据查询功能
|
||
|
||
### 6.3 第三阶段(5-6周)
|
||
|
||
**目标**:门户开发
|
||
|
||
**任务**:
|
||
1. 开发hzhub-portal-company
|
||
2. 开发hzhub-portal-dealer
|
||
3. 集成AI组件到门户
|
||
4. 企业微信对接
|
||
|
||
**产出**:
|
||
- 公司门户可用
|
||
- 经销商门户可用
|
||
|
||
### 6.4 第四阶段(7-8周)
|
||
|
||
**目标**:流程编排与优化
|
||
|
||
**任务**:
|
||
1. 扩展流程编排ERP节点
|
||
2. 性能优化
|
||
3. 安全加固
|
||
4. 文档完善
|
||
|
||
**产出**:
|
||
- 完整业务流程跑通
|
||
- 上线准备就绪
|
||
|
||
---
|
||
|
||
## 七、总结
|
||
|
||
### 7.1 HZHub-AI价值评估
|
||
|
||
| 维度 | 评分 | 说明 |
|
||
|------|------|------|
|
||
| 技术先进性 | ⭐⭐⭐⭐⭐ | Spring AI、LangChain4j、流程编排 |
|
||
| 代码质量 | ⭐⭐⭐⭐⭐ | 规范清晰,文档完善 |
|
||
| 功能完整性 | ⭐⭐⭐⭐⭐ | AI能力全覆盖 |
|
||
| 可复用性 | ⭐⭐⭐⭐⭐ | 模块化设计,易于复用 |
|
||
| 社区活跃度 | ⭐⭐⭐⭐ | 较新项目,发展迅速 |
|
||
|
||
**总体评价**:HZHub-AI是构建HZHub的**理想基础**,可以大幅缩短开发周期(估计节省3-4个月)。
|
||
|
||
### 7.2 HZHub建设路径
|
||
|
||
```
|
||
基于HZHub-AI构建HZHub的核心策略:
|
||
|
||
1. 复用为主(70%)
|
||
- 直接复用ruoyi-chat、hzhub-aiflow
|
||
- 直接复用hzhub-admin系统管理
|
||
- 复用hzhub-portal组件
|
||
|
||
2. 改造为辅(20%)
|
||
- 改造AI模块为ERP模块
|
||
- 改造SQL Agent为SQL Server版
|
||
- 改造门户为业务门户
|
||
|
||
3. 自研补充(10%)
|
||
- ERP数据适配层
|
||
- 企业微信多实体对接
|
||
- 业务流程节点
|
||
```
|
||
|
||
### 7.3 下一步行动
|
||
|
||
1. **立即执行**:创建Gitea仓库,初始化项目
|
||
2. **本周完成**:复制hzhub-ai和hzhub-admin代码
|
||
3. **下周开始**:ERP服务开发
|
||
4. **持续进行**:文档更新和团队培训
|
||
|
||
---
|
||
|
||
**分析完成时间**:2026-03-26 09:15 UTC
|
||
**分析师**:大壮
|