refactor: 将 RuoYi 标记替换为 HZHub

This commit is contained in:
2026-03-27 06:42:14 +00:00
parent 849adec937
commit f115a793a7
988 changed files with 4836 additions and 4590 deletions

View File

@@ -1,6 +1,6 @@
# HZHub 汇智中台
> 基于 RuoYi-AI 构建的企业级业务中台系统
> 基于 HZHub-AI 构建的企业级业务中台系统
## 项目简介
@@ -56,12 +56,12 @@ HZHub汇智中台是面向企业级市场的业务中台系统集成 AI
```
hzhub/
├── hzhub-ai/ # AI服务复用ruoyi-ai
├── hzhub-ai/ # AI服务复用hzhub-ai
├── hzhub-erp/ # ERP服务新建
├── hzhub-gateway/ # API网关新建
├── hzhub-admin/ # 管理后台(复用ruoyi-admin
├── hzhub-portal-company/ # 公司门户(复用ruoyi-web
├── hzhub-portal-dealer/ # 经销商门户(复用ruoyi-web
├── hzhub-admin/ # 管理后台(复用hzhub-admin
├── hzhub-portal-company/ # 公司门户(复用hzhub-portal
├── hzhub-portal-dealer/ # 经销商门户(复用hzhub-portal
├── hzhub-deploy/ # 部署配置
│ └── docker-compose.yml
└── docs/ # 项目文档
@@ -71,9 +71,9 @@ hzhub/
│ ├── hzhub-architecture.png
│ └── hzhub-architecture-cn.png
└── learnings/
├── 01-ruoyi-ai-backend-review.md
├── 02-ruoyi-admin-frontend-review.md
├── 03-ruoyi-web-user-frontend-review.md
├── 01-hzhub-ai-backend-review.md
├── 02-hzhub-admin-frontend-review.md
├── 03-hzhub-portal-user-frontend-review.md
└── 04-summary-analysis.md
```
@@ -145,7 +145,7 @@ docker-compose up -d
```bash
# AI服务
cd hzhub-ai/ruoyi-admin
cd hzhub-ai/hzhub-admin
mvn spring-boot:run -Dspring-boot.run.profiles=dev
```

View File

@@ -1,6 +1,6 @@
# HZHub 汇智中台
> 基于 RuoYi-AI 构建的企业级业务中台系统
> 基于 HZHub-AI 构建的企业级业务中台系统
## 项目概述
@@ -56,7 +56,7 @@ HZHub汇智中台是面向企业级市场的业务中台系统集成 AI
```
foshanhuiya/hzhub/
├── hzhub-ai/ # AI服务基于ruoyi-aiSpring Boot 4.0
├── hzhub-ai/ # AI服务基于hzhub-aiSpring Boot 4.0
├── hzhub-erp/ # ERP服务Spring Boot 4.0
├── hzhub-gateway/ # API网关Spring Boot 4.0
├── hzhub-admin/ # 管理后台前端

View File

@@ -4,7 +4,7 @@
### 1.1 项目背景
HZHub汇智中台是基于 RuoYi-AI 构建的企业级业务中台系统,旨在:
HZHub汇智中台是基于 HZHub-AI 构建的企业级业务中台系统,旨在:
- 对内包装对接 ERP 系统
- 对外打通企业微信
- 提供 AI 能力赋能业务
@@ -90,7 +90,7 @@ public interface ErpApi {
### 4.2 AI 服务接口
复用 ruoyi-ai 提供的接口,通过网关暴露。
复用 hzhub-ai 提供的接口,通过网关暴露。
## 5. 部署架构
@@ -115,7 +115,7 @@ public interface ErpApi {
|------|------|---------|
| SQL Server 2008 R2 驱动兼容性 | ERP 服务无法启动 | 预留双数据源,可切换 |
| Spring Boot 4.0 较新 | 第三方库适配问题 | 优先使用官方 starter |
| ruoyi-ai 早期阶段 | API 可能变化 | 复制代码而非 fork自主可控 |
| hzhub-ai 早期阶段 | API 可能变化 | 复制代码而非 fork自主可控 |
## 7. 后续待办

View File

@@ -1,7 +1,7 @@
# RuoYi-AI 后端项目审查报告
# HZHub-AI 后端项目审查报告
> 审查时间2026-03-26
> 项目路径:/data/ruoyi-ai/ruoyi-ai/
> 项目路径:/data/hzhub-ai/hzhub-ai/
---
@@ -11,7 +11,7 @@
| 属性 | 内容 |
|------|------|
| 项目名称 | RuoYi-AI |
| 项目名称 | HZHub-AI |
| 定位 | 企业级AI助手平台 |
| 版本 | 3.0.0 |
| 技术栈 | Spring Boot 3.5.8 + Spring AI + LangChain4j |
@@ -33,20 +33,20 @@
### 2.1 整体架构
```
ruoyi-ai/
hzhub-ai/
├── pom.xml # 父POM版本统一管理
├── ruoyi-admin/ # 管理后台模块Spring Boot启动类
├── ruoyi-common/ # 公共组件库25个子模块
│ ├── ruoyi-common-core # 核心工具类
│ ├── ruoyi-common-chat # AI相关公共类
│ ├── ruoyi-common-satoken # Sa-Token认证
│ ├── ruoyi-common-redis # Redis封装
│ ├── ruoyi-common-mybatis # MyBatis Plus封装
├── hzhub-admin/ # 管理后台模块Spring Boot启动类
├── hzhub-common/ # 公共组件库25个子模块
│ ├── hzhub-common-core # 核心工具类
│ ├── hzhub-common-chat # AI相关公共类
│ ├── hzhub-common-satoken # Sa-Token认证
│ ├── hzhub-common-redis # Redis封装
│ ├── hzhub-common-mybatis # MyBatis Plus封装
│ └── ... # 其他公共模块
├── ruoyi-extend/ # 扩展模块
└── ruoyi-modules/ # 业务模块
├── hzhub-extend/ # 扩展模块
└── hzhub-modules/ # 业务模块
├── ruoyi-chat/ # AI核心模块聊天、知识库、MCP
├── ruoyi-aiflow/ # 流程编排模块
├── hzhub-aiflow/ # 流程编排模块
├── ruoyi-workflow/ # 工作流模块
├── ruoyi-system/ # 系统管理模块
└── ruoyi-generator/ # 代码生成器
@@ -55,9 +55,9 @@ ruoyi-ai/
### 2.2 模块依赖关系
```
ruoyi-admin (启动模块)
├── ruoyi-modules/* (业务模块)
│ └── ruoyi-common/* (公共组件)
hzhub-admin (启动模块)
├── hzhub-modules/* (业务模块)
│ └── hzhub-common/* (公共组件)
```
**设计特点**
@@ -149,7 +149,7 @@ public interface SqlAgent extends Agent {
2. **工具声明**:明确可用工具及其使用顺序
3. **类型安全**:通过接口定义输入输出
### 4.2 ruoyi-aiflow 模块(流程编排)
### 4.2 hzhub-aiflow 模块(流程编排)
#### 4.2.1 架构设计
@@ -256,7 +256,7 @@ MCP工具类型
```xml
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
<artifactId>hzhub-common-tenant</artifactId>
</dependency>
```
@@ -266,7 +266,7 @@ MCP工具类型
### 7.1 架构设计借鉴
| 方面 | RuoYi-AI实践 | HZHub应用 |
| 方面 | HZHub-AI实践 | HZHub应用 |
|------|-------------|-----------|
| 模块化 | 25个common子模块 | 提取ERP适配公共组件 |
| 多模块 | modules独立部署 | AI/ERP/Gateway分离 |
@@ -298,7 +298,7 @@ hzhub-ai/
├── modules/
│ ├── hzhub-chat/ # AI聊天复用ruoyi-chat
│ ├── hzhub-erp/ # ERP服务新增
│ └── hzhub-aiflow/ # 流程编排(复用ruoyi-aiflow
│ └── hzhub-aiflow/ # 流程编排(复用hzhub-aiflow
└── hzhub-admin/ # 启动模块
```
@@ -316,7 +316,7 @@ hzhub-ai/
### 8.2 升级建议
1. **保持RuoYi-AI版本**使用当前稳定版3.5.8
1. **保持HZHub-AI版本**使用当前稳定版3.5.8
2. **独立ERP服务**:避免双数据源复杂性
3. **逐步迁移**先复用chat模块再扩展ERP功能
@@ -334,7 +334,7 @@ hzhub-ai/
### 9.2 下一步行动
1. 复用 `ruoyi-chat` 模块作为 `hzhub-ai` 基础
2. 复用 `ruoyi-aiflow` 模块作为流程编排引擎
2. 复用 `hzhub-aiflow` 模块作为流程编排引擎
3. 开发 `hzhub-erp` 模块参考SQL Agent模式
4. 整合三个模块构建HZHub完整后端

View File

@@ -1,7 +1,7 @@
# RuoYi-Admin 管理后台审查报告
# HZHub-Admin 管理后台审查报告
> 审查时间2026-03-26
> 项目路径:/data/ruoyi-ai/ruoyi-admin/
> 项目路径:/data/hzhub-ai/hzhub-admin/
---
@@ -11,7 +11,7 @@
| 属性 | 内容 |
|------|------|
| 项目名称 | RuoYi-AI Admin |
| 项目名称 | HZHub-AI Admin |
| 定位 | 企业级AI助手平台 - 管理后台 |
| 技术栈 | Vue 3 + Vben Admin + Ant Design Vue |
| 构建工具 | Vite + pnpm + Turbo |
@@ -32,7 +32,7 @@
### 2.1 Monorepo架构
```
ruoyi-admin/ # 根目录
hzhub-admin/ # 根目录
├── apps/ # 应用目录
│ └── web-antd/ # Ant Design Vue版本主应用
├── packages/ # 共享包目录
@@ -254,7 +254,7 @@ const [BasicTable, tableApi] = useVbenVxeGrid({
### 6.1 架构设计借鉴
| 方面 | RuoYi-Admin实践 | HZHub应用 |
| 方面 | HZHub-Admin实践 | HZHub应用 |
|------|-----------------|-----------|
| Monorepo | pnpm workspace + Turbo | hzhub-admin采用同样结构 |
| 组件封装 | useVbenVxeGrid通用表格 | 复用或参考实现ERP表格 |
@@ -344,7 +344,7 @@ pnpm check:type
1. **复用Vben生态**:直接使用@vben/*包,减少重复开发
2. **渐进式迁移**先复用系统管理再扩展ERP功能
3. **保持结构一致**:遵循ruoyi-admin的目录规范
3. **保持结构一致**:遵循hzhub-admin的目录规范
---
@@ -359,7 +359,7 @@ pnpm check:type
### 9.2 下一步行动
1. 复用 `ruoyi-admin` 作为 `hzhub-admin` 基础
1. 复用 `hzhub-admin` 作为 `hzhub-admin` 基础
2. 保留系统管理、权限控制等通用功能
3. 改造AI管理模块为ERP管理模块
4. 复用流程编排设计器增加ERP业务节点

View File

@@ -1,7 +1,7 @@
# RuoYi-Web 用户前端审查报告
# HZHub-Web 用户前端审查报告
> 审查时间2026-03-26
> 项目路径:/data/ruoyi-ai/ruoyi-web/
> 项目路径:/data/hzhub-ai/hzhub-portal/
---
@@ -11,7 +11,7 @@
| 属性 | 内容 |
|------|------|
| 项目名称 | RuoYi-Web |
| 项目名称 | HZHub-Web |
| 定位 | 企业级AI助手平台 - 用户前端 |
| 技术栈 | Vue 3 + TypeScript + Element Plus X |
| 构建工具 | Vite 6.x |
@@ -32,7 +32,7 @@
### 2.1 整体架构
```
ruoyi-web/
hzhub-portal/
├── src/
│ ├── api/ # API接口定义
│ ├── assets/ # 静态资源
@@ -74,7 +74,7 @@ ruoyi-web/
### 2.2 与Admin的差异
| 方面 | ruoyi-admin | ruoyi-web |
| 方面 | hzhub-admin | hzhub-portal |
|------|-------------|-----------|
| 架构 | Monorepo (多包) | Single Repo (单包) |
| UI库 | Ant Design Vue | Element Plus X |
@@ -266,7 +266,7 @@ async function runWorkflow() {
### 6.1 架构设计借鉴
| 方面 | RuoYi-Web实践 | HZHub应用 |
| 方面 | HZHub-Web实践 | HZHub应用 |
|------|---------------|-----------|
| 单包架构 | 简单清晰,适合用户端 | hzhub-portal采用同样结构 |
| 组件封装 | ModelSelect、FilesSelect等 | 复用或参考实现ERP组件 |
@@ -379,7 +379,7 @@ pnpm lint
### 9.2 下一步行动
1. 复用 `ruoyi-web` 的组件和模式
1. 复用 `hzhub-portal` 的组件和模式
2. 改造AI聊天为ERP智能助手对话
3. 开发公司门户和经销商门户
4. 集成AI能力到业务流程中

View File

@@ -1,7 +1,7 @@
# RuoYi-AI 三项目综合分析报告
# HZHub-AI 三项目综合分析报告
> 分析时间2026-03-26
> 分析对象:ruoyi-ai后端ruoyi-admin管理后台ruoyi-web(用户前端)
> 分析对象:hzhub-ai后端hzhub-admin管理后台hzhub-portal(用户前端)
---
@@ -11,9 +11,9 @@
```
┌─────────────────────────────────────────────────────────────────┐
RuoYi-AI 生态系统 │
HZHub-AI 生态系统 │
├─────────────────┬─────────────────┬─────────────────────────────┤
ruoyi-webruoyi-admin │ ruoyi-ai │
hzhub-portalhzhub-admin │ hzhub-ai │
│ (用户前端) │ (管理后台) │ (后端服务) │
├─────────────────┼─────────────────┼─────────────────────────────┤
│ · AI对话界面 │ · 系统管理 │ · 多模型接入 │
@@ -34,7 +34,7 @@
### 1.2 技术栈对比
| 层级 | ruoyi-web | ruoyi-admin | ruoyi-ai |
| 层级 | hzhub-portal | hzhub-admin | hzhub-ai |
|------|-----------|-------------|----------|
| **框架** | Vue 3 | Vue 3 | Spring Boot 3.5.8 |
| **UI库** | Element Plus X | Ant Design Vue | - |
@@ -49,7 +49,7 @@
## 二、各项目深度分析
### 2.1 ruoyi-ai后端- 核心引擎
### 2.1 hzhub-ai后端- 核心引擎
**架构评分**⭐⭐⭐⭐⭐5/5
@@ -68,11 +68,11 @@
| 模块 | 价值 | HZHub复用度 |
|------|------|-------------|
| ruoyi-chat | AI聊天、知识库、MCP | 90% |
| ruoyi-aiflow | 流程编排引擎 | 90% |
| hzhub-aiflow | 流程编排引擎 | 90% |
| ruoyi-system | 系统管理 | 80% |
| ruoyi-common | 公共组件库 | 85% |
| hzhub-common | 公共组件库 | 85% |
### 2.2 ruoyi-admin管理后台- 配置中心
### 2.2 hzhub-admin管理后台- 配置中心
**架构评分**⭐⭐⭐⭐⭐5/5
@@ -95,7 +95,7 @@
| 知识库管理 | 文档、片段管理 | 85% |
| MCP工具管理 | 工具、市场 | 80% |
### 2.3 ruoyi-web(用户前端)- 交互界面
### 2.3 hzhub-portal(用户前端)- 交互界面
**架构评分**⭐⭐⭐⭐4/5
@@ -124,13 +124,13 @@
### 3.1 复用矩阵
| RuoYi资产 | HZHub目标 | 复用策略 | 工作量 |
| HZHub资产 | HZHub目标 | 复用策略 | 工作量 |
|-----------|-----------|----------|--------|
| ruoyi-chat模块 | hzhub-ai | 直接复用 | 低 |
| ruoyi-aiflow模块 | hzhub-ai | 直接复用 | 低 |
| hzhub-aiflow模块 | hzhub-ai | 直接复用 | 低 |
| ruoyi-system模块 | hzhub-admin | 直接复用 | 低 |
| ruoyi-admin整体 | hzhub-admin | 改造AI模块为ERP模块 | 中 |
| ruoyi-web组件 | hzhub-portal-* | 复用组件,改造业务 | 中 |
| hzhub-admin整体 | hzhub-admin | 改造AI模块为ERP模块 | 中 |
| hzhub-portal组件 | hzhub-portal-* | 复用组件,改造业务 | 中 |
| SQL Agent | hzhub-erp | 改造为SQL Server版 | 高 |
### 3.2 推荐技术路线
@@ -139,25 +139,25 @@
HZHub 技术栈决策:
后端 (hzhub-ai / hzhub-erp / hzhub-gateway)
├── Spring Boot 3.5.8(与ruoyi-ai一致暂不用4.0
├── Spring Boot 3.5.8(与hzhub-ai一致暂不用4.0
├── LangChain4j 1.11.0
├── MyBatis Plus 3.5.14
├── Sa-Token 1.44.0
└── 复用ruoyi-ai的common模块
└── 复用hzhub-ai的common模块
管理后台 (hzhub-admin)
├── Vue 3 + TypeScript
├── Vben Admin复用ruoyi-admin架构
├── Vben Admin复用hzhub-admin架构
├── Ant Design Vue
├── pnpm workspace + Turbo
└── 复用ruoyi-admin的packages
└── 复用hzhub-admin的packages
门户前端 (hzhub-portal-company / hzhub-portal-dealer)
├── Vue 3 + TypeScript
├── Element Plus X复用ruoyi-web组件)
├── Element Plus X复用hzhub-portal组件)
├── UnoCSS
├── Pinia
└── 复用ruoyi-web的组件模式
└── 复用hzhub-portal的组件模式
```
### 3.3 开发优先级
@@ -165,7 +165,7 @@ HZHub 技术栈决策:
| 优先级 | 模块 | 依赖 | 预计工期 |
|--------|------|------|----------|
| P0 | hzhub-ai | 复用ruoyi-chat | 1周 |
| P0 | hzhub-admin | 复用ruoyi-admin | 1周 |
| P0 | hzhub-admin | 复用hzhub-admin | 1周 |
| P1 | hzhub-erp | 自研SQL Server适配 | 2-3周 |
| P1 | hzhub-portal-company | 复用+改造 | 2周 |
| P2 | hzhub-portal-dealer | 复用+改造 | 2周 |
@@ -178,7 +178,7 @@ HZHub 技术栈决策:
### 4.1 后端架构决策
**决策1Spring Boot版本**
- 选择3.5.8(与ruoyi-ai一致
- 选择3.5.8(与hzhub-ai一致
- 理由稳定性优先4.0升级成本未知
**决策2ERP服务独立**
@@ -197,7 +197,7 @@ HZHub 技术栈决策:
**决策2门户前端框架**
- 选择Element Plus X
- 理由:ruoyi-web组件可直接复用
- 理由:hzhub-portal组件可直接复用
**决策3样式方案**
- 选择Admin用Tailwind门户用UnoCSS
@@ -207,7 +207,7 @@ HZHub 技术栈决策:
**决策1向量数据库**
- 选择Milvus
- 理由:ruoyi-ai原生支持性能优秀
- 理由:hzhub-ai原生支持性能优秀
**决策2ERP数据源**
- 选择直连SQL Server 2008 R2
@@ -244,8 +244,8 @@ HZHub 技术栈决策:
**任务**
1. 创建Gitea仓库初始化项目结构
2. 复制ruoyi-ai代码到hzhub-ai
3. 复制ruoyi-admin代码到hzhub-admin
2. 复制hzhub-ai代码到hzhub-ai
3. 复制hzhub-admin代码到hzhub-admin
4. 验证基础功能运行
**产出**
@@ -298,7 +298,7 @@ HZHub 技术栈决策:
## 七、总结
### 7.1 RuoYi-AI价值评估
### 7.1 HZHub-AI价值评估
| 维度 | 评分 | 说明 |
|------|------|------|
@@ -308,17 +308,17 @@ HZHub 技术栈决策:
| 可复用性 | ⭐⭐⭐⭐⭐ | 模块化设计,易于复用 |
| 社区活跃度 | ⭐⭐⭐⭐ | 较新项目,发展迅速 |
**总体评价**RuoYi-AI是构建HZHub的**理想基础**可以大幅缩短开发周期估计节省3-4个月
**总体评价**HZHub-AI是构建HZHub的**理想基础**可以大幅缩短开发周期估计节省3-4个月
### 7.2 HZHub建设路径
```
基于RuoYi-AI构建HZHub的核心策略
基于HZHub-AI构建HZHub的核心策略
1. 复用为主70%
- 直接复用ruoyi-chat、ruoyi-aiflow
- 直接复用ruoyi-admin系统管理
- 复用ruoyi-web组件
- 直接复用ruoyi-chat、hzhub-aiflow
- 直接复用hzhub-admin系统管理
- 复用hzhub-portal组件
2. 改造为辅20%
- 改造AI模块为ERP模块
@@ -334,7 +334,7 @@ HZHub 技术栈决策:
### 7.3 下一步行动
1. **立即执行**创建Gitea仓库初始化项目
2. **本周完成**:复制ruoyi-ai和ruoyi-admin代码
2. **本周完成**:复制hzhub-ai和hzhub-admin代码
3. **下周开始**ERP服务开发
4. **持续进行**:文档更新和团队培训

View File

@@ -26,7 +26,7 @@
- 数据存储层MySQL + Milvus + SQL Server
**变更原因**
项目启动,基于RuoYi-AI三项目进行架构设计。
项目启动,基于HZHub-AI三项目进行架构设计。
**技术选型**
- 后端Spring Boot 3.5.8 + LangChain4j 1.11.0

View File

@@ -57,8 +57,8 @@
**任务清单**
- [x] 创建Gitea仓库
- [x] 初始化hzhub-ai复用ruoyi-ai
- [x] 初始化hzhub-admin复用ruoyi-admin
- [x] 初始化hzhub-ai复用hzhub-ai
- [x] 初始化hzhub-admin复用hzhub-admin
- [ ] 配置开发环境
- [ ] 启动基础设施MySQL、Redis、Milvus
- [ ] 验证AI服务运行

View File

@@ -112,7 +112,7 @@ Day 11-14: 测试和文档(依赖前端)
| 风险 | 可能性 | 影响 | 对策 |
|------|--------|------|------|
| Milvus部署失败 | 中 | 高 | 使用Docker Compose简化部署 |
| ruoyi-ai启动失败 | 中 | 高 | 检查依赖版本,查看日志 |
| hzhub-ai启动失败 | 中 | 高 | 检查依赖版本,查看日志 |
| 端口冲突 | 高 | 中 | 提前规划端口,准备备用端口 |
| 网络问题 | 中 | 中 | 准备离线安装包 |

View File

@@ -11,7 +11,7 @@
| 任务 | 计划 | 实际 | 状态 |
|------|------|------|------|
| RuoYi-AI三项目审查 | 3.26 | 3.26 | ✅ 已完成 |
| HZHub-AI三项目审查 | 3.26 | 3.26 | ✅ 已完成 |
| 架构设计文档 | 3.26 | 3.26 | ✅ 已完成 |
| 系统架构图 | 3.26 | 3.26 | ✅ 已完成 |
| 代码初始化 | 3.26 | 3.26 | ✅ 已完成 |
@@ -20,22 +20,22 @@
### 关键成果
1. **完成三项目深度审查**
- ruoyi-ai后端Spring Boot + LangChain4jAI能力完整
- ruoyi-admin管理后台Vue 3 + Vben Admin组件丰富
- ruoyi-web用户前端Vue 3 + Element Plus X流式处理成熟
- hzhub-ai后端Spring Boot + LangChain4jAI能力完整
- hzhub-admin管理后台Vue 3 + Vben Admin组件丰富
- hzhub-portal用户前端Vue 3 + Element Plus X流式处理成熟
2. **确定技术路线**
- 复用70% + 改造20% + 自研10%
- Spring Boot 3.5.8(与ruoyi-ai一致
- Spring Boot 3.5.8(与hzhub-ai一致
- 管理后台Vben Admin + Ant Design Vue
- 门户Element Plus X
3. **完成代码初始化**
- hzhub-ai复用ruoyi-ai
- hzhub-admin复用ruoyi-admin
- hzhub-ai复用hzhub-ai
- hzhub-admin复用hzhub-admin
- hzhub-erp新建
- hzhub-gateway新建
- hzhub-portal-company/dealer复用ruoyi-web
- hzhub-portal-company/dealer复用hzhub-portal
4. **建立项目管理文档**
- 总体计划8周4个阶段

View File

@@ -1,14 +1,14 @@
# RuoYi-AI 管理端
# HZHub-AI 管理端
<div align="center">
<img src="https://github.com/ageerle/ruoyi-ai/raw/main/docs/image/logo.png" alt="RuoYi AI Logo" width="120" height="120">
<img src="https://github.com/ageerle/hzhub-ai/raw/main/docs/image/logo.png" alt="HZHub AI Logo" width="120" height="120">
### 企业级AI助手平台 - 管理后台
*RuoYi-AI 的管理后台,提供系统管理、模型配置、知识库管理、流程编排等功能*
*HZHub-AI 的管理后台,提供系统管理、模型配置、知识库管理、流程编排等功能*
**[在线体验](https://admin.pandarobot.chat)** | **[后端服务](https://github.com/ageerle/ruoyi-ai)** | **[用户端](https://github.com/ageerle/ruoyi-web)**
**[在线体验](https://admin.pandarobot.chat)** | **[后端服务](https://github.com/ageerle/hzhub-ai)** | **[用户端](https://github.com/ageerle/hzhub-portal)**
</div>
@@ -28,8 +28,8 @@
```bash
# 克隆后端仓库
git clone https://github.com/ageerle/ruoyi-ai.git
cd ruoyi-ai
git clone https://github.com/ageerle/hzhub-ai.git
cd hzhub-ai
# 启动所有服务(从镜像仓库拉取预构建镜像)
docker-compose -f docker-compose-all.yaml up -d
@@ -47,7 +47,7 @@ docker-compose -f docker-compose-all.yaml up -d
```bash
# 进入后端项目目录
cd ruoyi-ai
cd hzhub-ai
# 启动后端服务(源码编译构建)
docker-compose up -d --build
@@ -60,7 +60,7 @@ docker-compose logs -f backend
```bash
# 进入管理端项目目录
cd ruoyi-admin
cd hzhub-admin
# 构建并启动管理端
docker-compose up -d --build
@@ -73,7 +73,7 @@ docker-compose up -d --build
```bash
# 进入用户端项目目录
cd ruoyi-web
cd hzhub-portal
# 构建并启动用户端
docker-compose up -d --build
@@ -107,9 +107,9 @@ crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai
- `redis:6.2` - Redis 缓存
- `weaviate:1.30.0` - 向量数据库
- `minio:latest` - 对象存储
- `ruoyi-ai-backend:latest` - 后端服务
- `ruoyi-ai-admin:latest` - 管理端前端
- `ruoyi-ai-web:latest` - 用户端前端
- `hzhub-ai-backend:latest` - 后端服务
- `hzhub-ai-admin:latest` - 管理端前端
- `hzhub-ai-web:latest` - 用户端前端
## 本地开发
@@ -142,8 +142,8 @@ A: 一键启动使用预构建的镜像,部署速度快;分步部署从源
<div align="center">
**[⭐ 点个Star支持一下](https://github.com/ageerle/ruoyi-admin)** • **[Fork 开始贡献](https://github.com/ageerle/ruoyi-admin/fork)**
**[⭐ 点个Star支持一下](https://github.com/ageerle/hzhub-admin)** • **[Fork 开始贡献](https://github.com/ageerle/hzhub-admin/fork)**
*用 ❤️ 打造,由 RuoYi AI 开源社区维护*
*用 ❤️ 打造,由 HZHub AI 开源社区维护*
</div>

View File

@@ -1,20 +1,20 @@
services:
# ==================== RuoYi-AI 前端服务 ====================
# ==================== HZHub-AI 前端服务 ====================
frontend:
image: ruoyi-ai-admin:latest
image: hzhub-ai-admin:latest
build:
context: ../..
dockerfile: apps/web-antd/Dockerfile
tags:
- ruoyi-ai-admin:latest
container_name: ruoyi-ai-admin
- hzhub-ai-admin:latest
container_name: hzhub-ai-admin
restart: always
ports:
- "5666:5666"
environment:
# 后端 API 地址 - 运行时动态配置(无需重新构建镜像)
# 使用后端容器名和内部端口(容器内端口是 6039
UPSTREAM_HOST: ${UPSTREAM_HOST:-ruoyi-ai-backend:6039}
UPSTREAM_HOST: ${UPSTREAM_HOST:-hzhub-ai-backend:6039}
# 资源限制 - 防止 CPU 和内存耗尽
deploy:
resources:
@@ -31,5 +31,5 @@ services:
networks:
# 使用后端服务的网络,实现容器间通信
ruoyi-net:
name: ruoyi-ai_ruoyi-net
name: hzhub-ai_ruoyi-net
external: true

View File

@@ -101,7 +101,7 @@ async function handleClosed() {
<template #message>
私有桶(minio)使用自定义域名需要参考
<a
href="https://gitee.com/dromara/RuoYi-Vue-Plus/issues/IBQIKC"
href="https://gitee.com/dromara/HZHub-Vue-Plus/issues/IBQIKC"
target="_blank"
class="text-primary"
>

View File

@@ -1,4 +1,4 @@
# RuoYi-AI 一键启动全部服务
# HZHub-AI 一键启动全部服务
# 使用方式: docker-compose up -d
#
# 包含服务:
@@ -6,9 +6,9 @@
# - Redis 6.2 (缓存)
# - Weaviate (向量数据库)
# - MinIO (对象存储)
# - RuoYi-Backend (后端服务)
# - RuoYi-Admin (管理端前端)
# - RuoYi-Web (用户端前端)
# - HZHub-Backend (后端服务)
# - HZHub-Admin (管理端前端)
# - HZHub-Web (用户端前端)
#
# 镜像仓库地址: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai
@@ -19,13 +19,13 @@ services:
mysql:
# 阿里云镜像地址包含初始化SQL
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/mysql:v3
container_name: ruoyi-ai-mysql
container_name: hzhub-ai-mysql
restart: always
ports:
- "23306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ruoyi-ai-agent
MYSQL_DATABASE: hzhub-ai-agent
TZ: Asia/Shanghai
volumes:
- mysql-data:/var/lib/mysql
@@ -41,7 +41,7 @@ services:
# ==================== Redis 缓存 ====================
redis:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/redis:6.2
container_name: ruoyi-ai-redis
container_name: hzhub-ai-redis
restart: always
ports:
- "26379:6379"
@@ -59,7 +59,7 @@ services:
# ==================== Weaviate 向量数据库 ====================
weaviate:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/weaviate:1.30.0
container_name: ruoyi-ai-weaviate
container_name: hzhub-ai-weaviate
restart: always
ports:
- "28080:8080"
@@ -78,7 +78,7 @@ services:
# ==================== MinIO 对象存储 ====================
minio:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/minio:latest
container_name: ruoyi-ai-minio
container_name: hzhub-ai-minio
restart: always
ports:
- "29000:9000"
@@ -92,10 +92,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 后端服务 ====================
# ==================== HZHub-AI 后端服务 ====================
backend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-backend:latest
container_name: ruoyi-ai-backend
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-backend:latest
container_name: hzhub-ai-backend
restart: always
ports:
- "26039:6039"
@@ -104,7 +104,7 @@ services:
# MySQL 配置
SPRING_DATASOURCE_DYNAMIC_PRIMARY: master
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_DRIVERCLASSNAME: com.mysql.cj.jdbc.Driver
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/ruoyi-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/hzhub-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: root
# Redis 配置
@@ -126,10 +126,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 管理端前端 ====================
# ==================== HZHub-AI 管理端前端 ====================
admin-frontend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-admin:latest
container_name: ruoyi-ai-admin
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-admin:latest
container_name: hzhub-ai-admin
restart: always
ports:
- "25666:5666"
@@ -152,10 +152,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 用户端前端 ====================
# ==================== HZHub-AI 用户端前端 ====================
web-frontend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-web:latest
container_name: ruoyi-ai-web
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-web:latest
container_name: hzhub-ai-web
restart: always
ports:
- "25137:5137"

View File

@@ -30,10 +30,10 @@ async function viteLicensePlugin(
handler: (_options: NormalizedOutputOptions, bundle: OutputBundle) => {
const date = dateUtil().format('YYYY-MM-DD ');
const copyrightText = `/*!
* ruoyi-ai Admin
* hzhub-ai Admin
* Version: ${version}
* Author: ageer
* Copyright (C) 2026 ruoyi-ai
* Copyright (C) 2026 hzhub-ai
* License: MIT License
* Description: ${description}
* Date Created: ${date}

View File

@@ -41,8 +41,8 @@ const defaultPreferences: Preferences = {
styleType: 'normal',
},
copyright: {
companyName: 'ruoyi-ai',
companySiteLink: 'https://gitee.com/ageerle/ruoyi-ai',
companyName: 'hzhub-ai',
companySiteLink: 'https://gitee.com/ageerle/hzhub-ai',
date: '2026',
enable: true,
icp: '',

View File

@@ -1,4 +1,4 @@
# RuoYi AI
# HZHub AI
<div align="center">
@@ -15,14 +15,14 @@
</a>
</p>
<img src="docs/image/logo.png" alt="RuoYi AI Logo" width="120" height="120">
<img src="docs/image/logo.png" alt="HZHub AI Logo" width="120" height="120">
### 企业级AI助手平台
*开箱即用的全栈AI平台支持多智能体协同、Supervisor模式编排、多种决策模式、RAG技术和流程编排能力*
**[English](README_EN.md)** | **[📖 使用文档](https://doc.pandarobot.chat)** |
**[🚀 在线体验](https://web.pandarobot.chat)** | **[🐛 问题反馈](https://github.com/ageerle/ruoyi-ai/issues)** | **[💡 功能建议](https://github.com/ageerle/ruoyi-ai/issues)**
**[🚀 在线体验](https://web.pandarobot.chat)** | **[🐛 问题反馈](https://github.com/ageerle/hzhub-ai/issues)** | **[💡 功能建议](https://github.com/ageerle/hzhub-ai/issues)**
</div>
@@ -50,9 +50,9 @@
| 项目模块 | GitHub 仓库 | Gitee 仓库 | GitCode 仓库 |
|----------|-------------------------------------------------------|------------------------------------------------------|--------------------------------------------------------|
| 🔧 后端服务 | [ruoyi-ai](https://github.com/ageerle/ruoyi-ai) | [ruoyi-ai](https://gitee.com/ageerle/ruoyi-ai) | [ruoyi-ai](https://gitcode.com/ageerle/ruoyi-ai) |
| 🎨 用户前端 | [ruoyi-web](https://github.com/ageerle/ruoyi-web) | [ruoyi-web](https://gitee.com/ageerle/ruoyi-web) | [ruoyi-web](https://gitcode.com/ageerle/ruoyi-web) |
| 🛠️ 管理后台 | [ruoyi-admin](https://github.com/ageerle/ruoyi-admin) | [ruoyi-admin](https://gitee.com/ageerle/ruoyi-admin) | [ruoyi-admin](https://gitcode.com/ageerle/ruoyi-admin) |
| 🔧 后端服务 | [hzhub-ai](https://github.com/ageerle/hzhub-ai) | [hzhub-ai](https://gitee.com/ageerle/hzhub-ai) | [hzhub-ai](https://gitcode.com/ageerle/hzhub-ai) |
| 🎨 用户前端 | [hzhub-portal](https://github.com/ageerle/hzhub-portal) | [hzhub-portal](https://gitee.com/ageerle/hzhub-portal) | [hzhub-portal](https://gitcode.com/ageerle/hzhub-portal) |
| 🛠️ 管理后台 | [hzhub-admin](https://github.com/ageerle/hzhub-admin) | [hzhub-admin](https://gitee.com/ageerle/hzhub-admin) | [hzhub-admin](https://gitcode.com/ageerle/hzhub-admin) |
### 合作项目
| 项目名称 | GitHub 仓库 | Gitee 仓库
@@ -82,8 +82,8 @@
```bash
# 克隆仓库
git clone https://github.com/ageerle/ruoyi-ai.git
cd ruoyi-ai
git clone https://github.com/ageerle/hzhub-ai.git
cd hzhub-ai
# 启动所有服务(从镜像仓库拉取预构建镜像)
docker-compose -f docker-compose-all.yaml up -d
@@ -105,7 +105,7 @@ docker-compose -f docker-compose-all.yaml ps
```bash
# 进入后端项目目录
cd ruoyi-ai
cd hzhub-ai
# 启动后端服务(源码编译构建)
docker-compose up -d --build
@@ -118,7 +118,7 @@ docker-compose logs -f backend
```bash
# 进入管理端项目目录
cd ruoyi-admin
cd hzhub-admin
# 构建并启动管理端
docker-compose up -d --build
@@ -131,7 +131,7 @@ docker-compose up -d --build
```bash
# 进入用户端项目目录
cd ruoyi-web
cd hzhub-portal
# 构建并启动用户端
docker-compose up -d --build
@@ -166,9 +166,9 @@ crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai
- `redis:6.2` - Redis 缓存
- `weaviate:1.30.0` - 向量数据库
- `minio:latest` - 对象存储
- `ruoyi-ai-backend:latest` - 后端服务
- `ruoyi-ai-admin:latest` - 管理端前端
- `ruoyi-ai-web:latest` - 用户端前端
- `hzhub-ai-backend:latest` - 后端服务
- `hzhub-ai-admin:latest` - 管理端前端
- `hzhub-ai-web:latest` - 用户端前端
### 常用命令
@@ -219,12 +219,12 @@ docker-compose -f docker-compose-all.yaml restart [服务名]
- [Spring AI Alibaba Copilot](https://github.com/spring-ai-alibaba/copilot) - 基于spring-ai-alibaba
的智能编码助手
- [Langchain4j](https://github.com/langchain4j/langchain4j) - 强大的 Java LLM 开发框架
- [RuoYi-Vue-Plus](https://gitee.com/dromara/RuoYi-Vue-Plus) - 成熟的企业级快速开发框架
- [HZHub-Vue-Plus](https://gitee.com/dromara/HZHub-Vue-Plus) - 成熟的企业级快速开发框架
- [Vben Admin](https://github.com/vbenjs/vue-vben-admin) - 现代化的 Vue 后台管理模板
## 🌐 生态伙伴
- [PPIO 派欧云](https://ppinfra.com/user/register?invited_by=P8QTUY&utm_source=github_ruoyi-ai) - 提供高性价比的 GPU
- [PPIO 派欧云](https://ppinfra.com/user/register?invited_by=P8QTUY&utm_source=github_hzhub-ai) - 提供高性价比的 GPU
算力和模型 API 服务
- [优云智算](https://www.compshare.cn/?ytag=GPU_YY-gh_ruoyi) - 万卡RTX40系GPU+海内外主流模型API服务秒级响应按量计费新客免费用。
@@ -253,30 +253,30 @@ docker-compose -f docker-compose-all.yaml restart [服务名]
---
<div align="center">
**[⭐ 点个Star支持一下](https://github.com/ageerle/ruoyi-ai)** • **[ Fork 开始贡献](https://github.com/ageerle/ruoyi-ai/fork)** • **[📚 English](README_EN.md)** • **[📖 查看完整文档](https://doc.pandarobot.chat)**
**[⭐ 点个Star支持一下](https://github.com/ageerle/hzhub-ai)** • **[ Fork 开始贡献](https://github.com/ageerle/hzhub-ai/fork)** • **[📚 English](README_EN.md)** • **[📖 查看完整文档](https://doc.pandarobot.chat)**
*用 ❤️ 打造,由 RuoYi AI 开源社区维护*
*用 ❤️ 打造,由 HZHub AI 开源社区维护*
</div>
<!-- Badge Links -->
[contributors-shield]: https://img.shields.io/github/contributors/ageerle/ruoyi-ai.svg?style=flat-square
[contributors-shield]: https://img.shields.io/github/contributors/ageerle/hzhub-ai.svg?style=flat-square
[contributors-url]: https://github.com/ageerle/ruoyi-ai/graphs/contributors
[contributors-url]: https://github.com/ageerle/hzhub-ai/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/ageerle/ruoyi-ai.svg?style=flat-square
[forks-shield]: https://img.shields.io/github/forks/ageerle/hzhub-ai.svg?style=flat-square
[forks-url]: https://github.com/ageerle/ruoyi-ai/network/members
[forks-url]: https://github.com/ageerle/hzhub-ai/network/members
[stars-shield]: https://img.shields.io/github/stars/ageerle/ruoyi-ai.svg?style=flat-square
[stars-shield]: https://img.shields.io/github/stars/ageerle/hzhub-ai.svg?style=flat-square
[stars-url]: https://github.com/ageerle/ruoyi-ai/stargazers
[stars-url]: https://github.com/ageerle/hzhub-ai/stargazers
[issues-shield]: https://img.shields.io/github/issues/ageerle/ruoyi-ai.svg?style=flat-square
[issues-shield]: https://img.shields.io/github/issues/ageerle/hzhub-ai.svg?style=flat-square
[issues-url]: https://github.com/ageerle/ruoyi-ai/issues
[issues-url]: https://github.com/ageerle/hzhub-ai/issues
[license-shield]: https://img.shields.io/github/license/ageerle/ruoyi-ai.svg?style=flat-square
[license-shield]: https://img.shields.io/github/license/ageerle/hzhub-ai.svg?style=flat-square
[license-url]: https://github.com/ageerle/ruoyi-ai/blob/main/LICENSE
[license-url]: https://github.com/ageerle/hzhub-ai/blob/main/LICENSE

View File

@@ -1,5 +1,5 @@
# RuoYi AI
# HZHub AI
<div align="center">
@@ -16,14 +16,14 @@
</a>
</p>
<img src="docs/image/logo.png" alt="RuoYi AI Logo" width="120" height="120">
<img src="docs/image/logo.png" alt="HZHub AI Logo" width="120" height="120">
### Enterprise-Grade AI Assistant Platform
*An out-of-the-box full-stack AI platform supporting multi-agent collaboration, Supervisor mode orchestration, and multiple decision models, with advanced RAG technology and visual workflow orchestration capabilities*
**[中文](README.md)** | **[📖 Documentation](https://doc.pandarobot.chat)** |
**[🚀 Live Demo](https://web.pandarobot.chat)** | **[🐛 Report Issues](https://github.com/ageerle/ruoyi-ai/issues)** | **[💡 Feature Requests](https://github.com/ageerle/ruoyi-ai/issues)**
**[🚀 Live Demo](https://web.pandarobot.chat)** | **[🐛 Report Issues](https://github.com/ageerle/hzhub-ai/issues)** | **[💡 Feature Requests](https://github.com/ageerle/hzhub-ai/issues)**
</div>
@@ -53,9 +53,9 @@
| Module | GitHub Repository | Gitee Repository | GitCode Repository |
|----------|-------------------------------------------------------|------------------------------------------------------|--------------------------------------------------------|
| 🔧 Backend | [ruoyi-ai](https://github.com/ageerle/ruoyi-ai) | [ruoyi-ai](https://gitee.com/ageerle/ruoyi-ai) | [ruoyi-ai](https://gitcode.com/ageerle/ruoyi-ai) |
| 🎨 User Frontend | [ruoyi-web](https://github.com/ageerle/ruoyi-web) | [ruoyi-web](https://gitee.com/ageerle/ruoyi-web) | [ruoyi-web](https://gitcode.com/ageerle/ruoyi-web) |
| 🛠️ Admin Panel | [ruoyi-admin](https://github.com/ageerle/ruoyi-admin) | [ruoyi-admin](https://gitee.com/ageerle/ruoyi-admin) | [ruoyi-admin](https://gitcode.com/ageerle/ruoyi-admin) |
| 🔧 Backend | [hzhub-ai](https://github.com/ageerle/hzhub-ai) | [hzhub-ai](https://gitee.com/ageerle/hzhub-ai) | [hzhub-ai](https://gitcode.com/ageerle/hzhub-ai) |
| 🎨 User Frontend | [hzhub-portal](https://github.com/ageerle/hzhub-portal) | [hzhub-portal](https://gitee.com/ageerle/hzhub-portal) | [hzhub-portal](https://gitcode.com/ageerle/hzhub-portal) |
| 🛠️ Admin Panel | [hzhub-admin](https://github.com/ageerle/hzhub-admin) | [hzhub-admin](https://gitee.com/ageerle/hzhub-admin) | [hzhub-admin](https://gitcode.com/ageerle/hzhub-admin) |
### Partner Projects
| Project Name | GitHub Repository | Gitee Repository |
@@ -85,8 +85,8 @@ Use `docker-compose-all.yaml` to start all services at once (including backend,
```bash
# Clone the repository
git clone https://github.com/ageerle/ruoyi-ai.git
cd ruoyi-ai
git clone https://github.com/ageerle/hzhub-ai.git
cd hzhub-ai
# Start all services (pull pre-built images from registry)
docker-compose -f docker-compose-all.yaml up -d
@@ -108,7 +108,7 @@ If you need to build backend services from source, follow these steps:
```bash
# Enter backend project directory
cd ruoyi-ai
cd hzhub-ai
# Start backend service (build from source)
docker-compose up -d --build
@@ -121,7 +121,7 @@ docker-compose logs -f backend
```bash
# Enter admin panel project directory
cd ruoyi-admin
cd hzhub-admin
# Build and start admin panel
docker-compose up -d --build
@@ -134,7 +134,7 @@ docker-compose up -d --build
```bash
# Enter user frontend project directory
cd ruoyi-web
cd hzhub-portal
# Build and start user frontend
docker-compose up -d --build
@@ -169,9 +169,9 @@ Available images:
- `redis:6.2` - Redis cache
- `weaviate:1.30.0` - Vector database
- `minio:latest` - Object storage
- `ruoyi-ai-backend:latest` - Backend service
- `ruoyi-ai-admin:latest` - Admin frontend
- `ruoyi-ai-web:latest` - User frontend
- `hzhub-ai-backend:latest` - Backend service
- `hzhub-ai-admin:latest` - Admin frontend
- `hzhub-ai-web:latest` - User frontend
### Common Commands
@@ -221,12 +221,12 @@ This project is licensed under the **MIT License**. See the [LICENSE](LICENSE) f
Thanks to the following excellent open-source projects for their support:
- [Spring AI Alibaba Copilot](https://github.com/spring-ai-alibaba/copilot) - Intelligent coding assistant based on spring-ai-alibaba
- [Langchain4j](https://github.com/langchain4j/langchain4j) - Powerful Java LLM development framework
- [RuoYi-Vue-Plus](https://gitee.com/dromara/RuoYi-Vue-Plus) - Mature enterprise-level rapid development framework
- [HZHub-Vue-Plus](https://gitee.com/dromara/HZHub-Vue-Plus) - Mature enterprise-level rapid development framework
- [Vben Admin](https://github.com/vbenjs/vue-vben-admin) - Modern Vue admin template
## 🌐 Ecosystem Partners
- [PPIO Cloud](https://ppinfra.com/user/register?invited_by=P8QTUY&utm_source=github_ruoyi-ai) - Provides cost-effective GPU computing and model API services
- [PPIO Cloud](https://ppinfra.com/user/register?invited_by=P8QTUY&utm_source=github_hzhub-ai) - Provides cost-effective GPU computing and model API services
- [Youyun Intelligent Computing](https://www.compshare.cn/?ytag=GPU_YY-gh_ruoyi) - Thousands of RTX40 series GPUs + mainstream models API services, second-level response, pay-per-use, free for new customers.
@@ -243,30 +243,30 @@ https://t.me/+LqooQAc5HxRmYmE1)**
<div align="center">
**[⭐ Star to Support](https://github.com/ageerle/ruoyi-ai)** • **[Fork to Contribute](https://github.com/ageerle/ruoyi-ai/fork)** • **[📚 中文](README.md)** • **[📖 Complete Documentation](https://doc.pandarobot.chat)**
**[⭐ Star to Support](https://github.com/ageerle/hzhub-ai)** • **[Fork to Contribute](https://github.com/ageerle/hzhub-ai/fork)** • **[📚 中文](README.md)** • **[📖 Complete Documentation](https://doc.pandarobot.chat)**
*Built with ❤️, maintained by the RuoYi AI open-source community*
*Built with ❤️, maintained by the HZHub AI open-source community*
</div>
<!-- Badge Links -->
[contributors-shield]: https://img.shields.io/github/contributors/ageerle/ruoyi-ai.svg?style=flat-square
[contributors-shield]: https://img.shields.io/github/contributors/ageerle/hzhub-ai.svg?style=flat-square
[contributors-url]: https://github.com/ageerle/ruoyi-ai/graphs/contributors
[contributors-url]: https://github.com/ageerle/hzhub-ai/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/ageerle/ruoyi-ai.svg?style=flat-square
[forks-shield]: https://img.shields.io/github/forks/ageerle/hzhub-ai.svg?style=flat-square
[forks-url]: https://github.com/ageerle/ruoyi-ai/network/members
[forks-url]: https://github.com/ageerle/hzhub-ai/network/members
[stars-shield]: https://img.shields.io/github/stars/ageerle/ruoyi-ai.svg?style=flat-square
[stars-shield]: https://img.shields.io/github/stars/ageerle/hzhub-ai.svg?style=flat-square
[stars-url]: https://github.com/ageerle/ruoyi-ai/stargazers
[stars-url]: https://github.com/ageerle/hzhub-ai/stargazers
[issues-shield]: https://img.shields.io/github/issues/ageerle/ruoyi-ai.svg?style=flat-square
[issues-shield]: https://img.shields.io/github/issues/ageerle/hzhub-ai.svg?style=flat-square
[issues-url]: https://github.com/ageerle/ruoyi-ai/issues
[issues-url]: https://github.com/ageerle/hzhub-ai/issues
[license-shield]: https://img.shields.io/github/license/ageerle/ruoyi-ai.svg?style=flat-square
[license-shield]: https://img.shields.io/github/license/ageerle/hzhub-ai.svg?style=flat-square
[license-url]: https://github.com/ageerle/ruoyi-ai/blob/main/LICENSE
[license-url]: https://github.com/ageerle/hzhub-ai/blob/main/LICENSE

View File

@@ -1,4 +1,4 @@
# RuoYi-AI 一键启动全部服务
# HZHub-AI 一键启动全部服务
# 使用方式: docker-compose up -d
#
# 包含服务:
@@ -6,9 +6,9 @@
# - Redis 6.2 (缓存)
# - Weaviate (向量数据库)
# - MinIO (对象存储)
# - RuoYi-Backend (后端服务)
# - RuoYi-Admin (管理端前端)
# - RuoYi-Web (用户端前端)
# - HZHub-Backend (后端服务)
# - HZHub-Admin (管理端前端)
# - HZHub-Web (用户端前端)
#
# 镜像仓库地址: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai
@@ -19,13 +19,13 @@ services:
mysql:
# 阿里云镜像地址包含初始化SQL
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/mysql:v3
container_name: ruoyi-ai-mysql
container_name: hzhub-ai-mysql
restart: always
ports:
- "23306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ruoyi-ai-agent
MYSQL_DATABASE: hzhub-ai-agent
TZ: Asia/Shanghai
volumes:
- mysql-data:/var/lib/mysql
@@ -41,7 +41,7 @@ services:
# ==================== Redis 缓存 ====================
redis:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/redis:6.2
container_name: ruoyi-ai-redis
container_name: hzhub-ai-redis
restart: always
ports:
- "26379:6379"
@@ -59,7 +59,7 @@ services:
# ==================== Weaviate 向量数据库 ====================
weaviate:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/weaviate:1.30.0
container_name: ruoyi-ai-weaviate
container_name: hzhub-ai-weaviate
restart: always
ports:
- "28080:8080"
@@ -78,7 +78,7 @@ services:
# ==================== MinIO 对象存储 ====================
minio:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/minio:latest
container_name: ruoyi-ai-minio
container_name: hzhub-ai-minio
restart: always
ports:
- "29000:9000"
@@ -92,10 +92,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 后端服务 ====================
# ==================== HZHub-AI 后端服务 ====================
backend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-backend:latest
container_name: ruoyi-ai-backend
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-backend:latest
container_name: hzhub-ai-backend
restart: always
ports:
- "26039:6039"
@@ -104,7 +104,7 @@ services:
# MySQL 配置
SPRING_DATASOURCE_DYNAMIC_PRIMARY: master
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_DRIVERCLASSNAME: com.mysql.cj.jdbc.Driver
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/ruoyi-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/hzhub-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: root
# Redis 配置
@@ -126,10 +126,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 管理端前端 ====================
# ==================== HZHub-AI 管理端前端 ====================
admin-frontend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-admin:latest
container_name: ruoyi-ai-admin
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-admin:latest
container_name: hzhub-ai-admin
restart: always
ports:
- "25666:5666"
@@ -151,10 +151,10 @@ services:
networks:
- ruoyi-net
# ==================== RuoYi-AI 用户端前端 ====================
# ==================== HZHub-AI 用户端前端 ====================
web-frontend:
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/ruoyi-ai-web:latest
container_name: ruoyi-ai-web
image: crpi-31mraxd99y2gqdgr.cn-beijing.personal.cr.aliyuncs.com/ruoyi_ai/hzhub-ai-web:latest
container_name: hzhub-ai-web
restart: always
ports:
- "25137:5137"

View File

@@ -1,4 +1,4 @@
# RuoYi-AI 一键启动后端服务
# HZHub-AI 一键启动后端服务
# 使用方式: docker-compose up -d --build
#
# 包含服务:
@@ -6,23 +6,23 @@
# - Redis 6.2 (缓存)
# - Weaviate (向量数据库)
# - MinIO (对象存储)
# - RuoYi-Backend (后端服务,源码编译)
# - HZHub-Backend (后端服务,源码编译)
services:
# MySQL 数据库
mysql:
image: mysql:8.0.33
container_name: ruoyi-ai-mysql
container_name: hzhub-ai-mysql
restart: always
ports:
- "23306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: ruoyi-ai-agent
MYSQL_DATABASE: hzhub-ai-agent
TZ: Asia/Shanghai
volumes:
- ./docs/script/docker/mysql/init/init-db.sh:/docker-entrypoint-initdb.d/init-db.sh:ro
- ./docs/script/sql/ruoyi-ai-v3_mysql8.sql:/docker-entrypoint-initdb.d/ruoyi-ai-v3_mysql8.sql:ro
- ./docs/script/sql/hzhub-ai-v3_mysql8.sql:/docker-entrypoint-initdb.d/hzhub-ai-v3_mysql8.sql:ro
- mysql-data:/var/lib/mysql
command:
--default-authentication-plugin=mysql_native_password
@@ -43,7 +43,7 @@ services:
# Redis 缓存
redis:
image: redis:6.2
container_name: ruoyi-ai-redis
container_name: hzhub-ai-redis
restart: always
ports:
- "6379:6379"
@@ -61,7 +61,7 @@ services:
# Weaviate 向量数据库
weaviate:
image: semitechnologies/weaviate:1.30.0
container_name: ruoyi-ai-weaviate
container_name: hzhub-ai-weaviate
restart: always
ports:
- "28080:8080"
@@ -80,7 +80,7 @@ services:
# MinIO 对象存储
minio:
image: minio/minio
container_name: ruoyi-ai-minio
container_name: hzhub-ai-minio
restart: always
ports:
- "9000:9000"
@@ -94,12 +94,12 @@ services:
networks:
- ruoyi-net
# RuoYi-AI 后端服务 (源码编译)
# HZHub-AI 后端服务 (源码编译)
backend:
build:
context: .
dockerfile: Dockerfile.backend
container_name: ruoyi-ai-backend
container_name: hzhub-ai-backend
restart: always
ports:
- "26039:6039"
@@ -108,7 +108,7 @@ services:
# MySQL 配置
SPRING_DATASOURCE_DYNAMIC_PRIMARY: master
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_DRIVERCLASSNAME: com.mysql.cj.jdbc.Driver
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/ruoyi-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_URL: jdbc:mysql://mysql:3306/hzhub-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_USERNAME: root
SPRING_DATASOURCE_DYNAMIC_DATASOURCE_MASTER_PASSWORD: root
# Redis 配置

View File

@@ -4,12 +4,12 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-ai</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-ai</artifactId>
<version>${revision}</version>
<name>ruoyi-ai</name>
<url>>https://gitee.com/ageerle/ruoyi-ai</url>
<name>hzhub-ai</name>
<url>>https://gitee.com/ageerle/hzhub-ai</url>
<description>全栈式AI开发平台</description>
<properties>
@@ -151,8 +151,8 @@
<!-- common 的依赖配置-->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-bom</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-bom</artifactId>
<version>${revision}</version>
<type>pom</type>
<scope>import</scope>
@@ -358,34 +358,34 @@
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-system</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-generator</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-chat</artifactId>
<version>${revision}</version>
</dependency>
<!-- 工作流模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-workflow</artifactId>
<version>${revision}</version>
</dependency>
<!-- AI流程编排模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-aiflow</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-aiflow</artifactId>
<version>${revision}</version>
</dependency>
@@ -407,10 +407,10 @@
</dependencyManagement>
<modules>
<module>ruoyi-admin</module>
<module>ruoyi-common</module>
<module>ruoyi-extend</module>
<module>ruoyi-modules</module>
<module>hzhub-admin</module>
<module>hzhub-common</module>
<module>hzhub-extend</module>
<module>hzhub-modules</module>
</modules>
<packaging>pom</packaging>

View File

@@ -3,13 +3,13 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>ruoyi-ai</artifactId>
<groupId>org.ruoyi</groupId>
<artifactId>hzhub-ai</artifactId>
<groupId>org.hzhub</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>ruoyi-admin</artifactId>
<artifactId>hzhub-admin</artifactId>
<description>
web服务入口
@@ -46,51 +46,51 @@
<!-- </dependency>-->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-doc</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-doc</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-social</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-social</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-ratelimiter</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-ratelimiter</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-mail</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-mail</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-system</artifactId>
</dependency>
<!-- 代码生成-->
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-generator</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-chat</artifactId>
</dependency>
<!-- 工作流模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<groupId>org.hzhub</groupId>
<artifactId>ruoyi-workflow</artifactId>
</dependency>
<!-- AI流程编排模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-aiflow</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-aiflow</artifactId>
</dependency>

View File

@@ -1,4 +1,4 @@
package org.ruoyi;
package org.hzhub;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -10,13 +10,13 @@ import org.springframework.boot.context.metrics.buffering.BufferingApplicationSt
* @author Lion Li
*/
@SpringBootApplication
public class RuoYiAIApplication {
public class HZHubAIApplication {
public static void main(String[] args) {
SpringApplication application = new SpringApplication(RuoYiAIApplication.class);
SpringApplication application = new SpringApplication(HZHubAIApplication.class);
application.setApplicationStartup(new BufferingApplicationStartup(2048));
application.run(args);
System.out.println("(♥◠‿◠)ノ゙ RuoYi-AI启动成功 ლ(´ڡ`ლ)゙");
System.out.println("(♥◠‿◠)ノ゙ HZHub-AI启动成功 ლ(´ڡ`ლ)゙");
}
}

View File

@@ -1,4 +1,4 @@
package org.ruoyi;
package org.hzhub;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
@@ -8,11 +8,11 @@ import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
*
* @author Lion Li
*/
public class RuoYiAIServletInitializer extends SpringBootServletInitializer {
public class HZHubAIServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(RuoYiAIApplication.class);
return application.sources(HZHubAIApplication.class);
}
}

View File

@@ -1,4 +1,4 @@
package org.ruoyi.config;
package org.hzhub.config;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -32,8 +32,8 @@ public class MapperConflictResolver implements BeanDefinitionRegistryPostProcess
log.info("Found mapper bean: {} -> {}", beanName, beanClassName);
// 如果是 org.ruoyi.domain.bo.chat 包下的(冲突的),移除它
if (beanClassName != null && beanClassName.startsWith("org.ruoyi.domain.bo.chat")) {
// 如果是 org.hzhub.domain.bo.chat 包下的(冲突的),移除它
if (beanClassName != null && beanClassName.startsWith("org.hzhub.domain.bo.chat")) {
log.warn("Removing conflicting bean definition: {} ({})", beanName, beanClassName);
registry.removeBeanDefinition(beanName);
}

View File

@@ -1,4 +1,4 @@
package org.ruoyi.controller;
package org.hzhub.controller;
import cn.dev33.satoken.annotation.SaIgnore;
import cn.dev33.satoken.exception.NotLoginException;
@@ -13,26 +13,26 @@ import me.zhyd.oauth.model.AuthResponse;
import me.zhyd.oauth.model.AuthUser;
import me.zhyd.oauth.request.AuthRequest;
import me.zhyd.oauth.utils.AuthStateUtils;
import org.ruoyi.common.core.constant.SystemConstants;
import org.ruoyi.common.core.domain.R;
import org.ruoyi.common.core.domain.model.LoginBody;
import org.ruoyi.common.core.domain.model.RegisterBody;
import org.ruoyi.common.core.domain.model.SocialLoginBody;
import org.ruoyi.common.core.utils.*;
import org.ruoyi.common.encrypt.annotation.ApiEncrypt;
import org.ruoyi.common.json.utils.JsonUtils;
import org.ruoyi.common.ratelimiter.annotation.RateLimiter;
import org.ruoyi.common.ratelimiter.enums.LimitType;
import org.ruoyi.common.satoken.utils.LoginHelper;
import org.ruoyi.common.social.config.properties.SocialLoginConfigProperties;
import org.ruoyi.common.social.config.properties.SocialProperties;
import org.ruoyi.common.social.utils.SocialUtils;
import org.ruoyi.common.sse.dto.SseMessageDto;
import org.ruoyi.common.sse.utils.SseMessageUtils;
import org.ruoyi.common.tenant.helper.TenantHelper;
import org.ruoyi.system.domain.bo.SysTenantBo;
import org.ruoyi.system.domain.vo.*;
import org.ruoyi.system.service.*;
import org.hzhub.common.core.constant.SystemConstants;
import org.hzhub.common.core.domain.R;
import org.hzhub.common.core.domain.model.LoginBody;
import org.hzhub.common.core.domain.model.RegisterBody;
import org.hzhub.common.core.domain.model.SocialLoginBody;
import org.hzhub.common.core.utils.*;
import org.hzhub.common.encrypt.annotation.ApiEncrypt;
import org.hzhub.common.json.utils.JsonUtils;
import org.hzhub.common.ratelimiter.annotation.RateLimiter;
import org.hzhub.common.ratelimiter.enums.LimitType;
import org.hzhub.common.satoken.utils.LoginHelper;
import org.hzhub.common.social.config.properties.SocialLoginConfigProperties;
import org.hzhub.common.social.config.properties.SocialProperties;
import org.hzhub.common.social.utils.SocialUtils;
import org.hzhub.common.sse.dto.SseMessageDto;
import org.hzhub.common.sse.utils.SseMessageUtils;
import org.hzhub.common.tenant.helper.TenantHelper;
import org.hzhub.system.domain.bo.SysTenantBo;
import org.hzhub.system.domain.vo.*;
import org.hzhub.system.service.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -102,7 +102,7 @@ public class AuthController {
Long userId = LoginHelper.getUserId();
scheduledExecutorService.schedule(() -> {
SseMessageDto dto = new SseMessageDto();
dto.setMessage("欢迎登录ruoyi-ai后台管理系统");
dto.setMessage("欢迎登录hzhub-ai后台管理系统");
dto.setUserIds(List.of(userId));
SseMessageUtils.publishMessage(dto);
}, 5, TimeUnit.SECONDS);

View File

@@ -1,4 +1,4 @@
package org.ruoyi.controller;
package org.hzhub.controller;
import cn.dev33.satoken.annotation.SaIgnore;
import cn.hutool.captcha.AbstractCaptcha;
@@ -8,24 +8,24 @@ import cn.hutool.core.util.RandomUtil;
import jakarta.validation.constraints.NotBlank;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.ruoyi.common.core.constant.Constants;
import org.ruoyi.common.core.constant.GlobalConstants;
import org.ruoyi.common.core.domain.R;
import org.ruoyi.common.core.exception.ServiceException;
import org.ruoyi.common.core.utils.SpringUtils;
import org.ruoyi.common.core.utils.StringUtils;
import org.ruoyi.common.core.utils.reflect.ReflectUtils;
import org.ruoyi.common.mail.config.properties.MailProperties;
import org.ruoyi.common.mail.utils.MailUtils;
import org.ruoyi.common.ratelimiter.annotation.RateLimiter;
import org.ruoyi.common.ratelimiter.enums.LimitType;
import org.ruoyi.common.redis.utils.RedisUtils;
import org.ruoyi.common.web.config.properties.CaptchaProperties;
import org.ruoyi.common.web.enums.CaptchaType;
import org.hzhub.common.core.constant.Constants;
import org.hzhub.common.core.constant.GlobalConstants;
import org.hzhub.common.core.domain.R;
import org.hzhub.common.core.exception.ServiceException;
import org.hzhub.common.core.utils.SpringUtils;
import org.hzhub.common.core.utils.StringUtils;
import org.hzhub.common.core.utils.reflect.ReflectUtils;
import org.hzhub.common.mail.config.properties.MailProperties;
import org.hzhub.common.mail.utils.MailUtils;
import org.hzhub.common.ratelimiter.annotation.RateLimiter;
import org.hzhub.common.ratelimiter.enums.LimitType;
import org.hzhub.common.redis.utils.RedisUtils;
import org.hzhub.common.web.config.properties.CaptchaProperties;
import org.hzhub.common.web.enums.CaptchaType;
import org.dromara.sms4j.api.SmsBlend;
import org.dromara.sms4j.api.entity.SmsResponse;
import org.dromara.sms4j.core.factory.SmsFactory;
import org.ruoyi.system.domain.vo.CaptchaVo;
import org.hzhub.system.domain.vo.CaptchaVo;
import org.springframework.expression.Expression;
import org.springframework.expression.ExpressionParser;
import org.springframework.expression.spel.standard.SpelExpressionParser;

View File

@@ -1,9 +1,9 @@
package org.ruoyi.controller;
package org.hzhub.controller;
import cn.dev33.satoken.annotation.SaIgnore;
import lombok.RequiredArgsConstructor;
import org.ruoyi.common.core.utils.SpringUtils;
import org.ruoyi.common.core.utils.StringUtils;
import org.hzhub.common.core.utils.SpringUtils;
import org.hzhub.common.core.utils.StringUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

View File

@@ -118,7 +118,7 @@ redisson:
# 单节点配置
singleServerConfig:
# 客户端名称 不能用中文
clientName: ruoyi-ai
clientName: hzhub-ai
# 最小空闲连接数
connectionMinimumIdleSize: 8
# 连接池大小

View File

@@ -58,7 +58,7 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://127.0.0.1:3306/ruoyi-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
url: jdbc:mysql://127.0.0.1:3306/hzhub-ai-agent?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
username: root
password: root
# agent:
@@ -118,7 +118,7 @@ redisson:
# 单节点配置
singleServerConfig:
# 客户端名称 不能用中文
clientName: ruoyi-ai
clientName: hzhub-ai
# 最小空闲连接数
connectionMinimumIdleSize: 8
# 连接池大小

View File

@@ -35,7 +35,7 @@ captcha:
# 日志配置
logging:
level:
org.ruoyi: @logging.level@
org.hzhub: @logging.level@
org.springframework: warn
org.mybatis.spring.mapper: error
org.apache.fury: warn
@@ -52,7 +52,7 @@ user:
# Spring配置
spring:
application:
name: ruoyi-ai
name: hzhub-ai
# ⚠️ 禁用 Spring Boot 的 Neo4j 自动配置
# 默认情况下,如果类路径上存在 neo4j-java-driverSpring Boot 会尝试自动配置
# 这会导致应用在启动时尝试连接到 Neo4j即使我们没有需要它
@@ -147,12 +147,12 @@ tenant:
mybatis-plus:
# 自定义配置 是否全局开启逻辑删除 关闭后 所有逻辑删除功能将失效
enableLogicDelete: true
# 多包名使用 例如 org.ruoyi.**.mapper,org.xxx.**.mapper
mapperPackage: org.ruoyi.**.mapper
# 多包名使用 例如 org.hzhub.**.mapper,org.xxx.**.mapper
mapperPackage: org.hzhub.**.mapper
# 对应的 XML 文件位置
mapperLocations: classpath*:mapper/**/*Mapper.xml
# 实体扫描多个package用逗号或者分号分隔
typeAliasesPackage: org.ruoyi.**.domain
typeAliasesPackage: org.hzhub.**.domain
global-config:
dbConfig:
# 主键类型
@@ -193,7 +193,7 @@ springdoc:
enabled: true
info:
# 标题
title: '标题:ruoyi-ai管理系统_接口文档'
title: '标题:hzhub-ai管理系统_接口文档'
# 描述
description: '描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...'
# 版本
@@ -202,22 +202,22 @@ springdoc:
contact:
name: ageerle
email: ageerle@163.com
url: https://gitee.com/ageerle/ruoyi-ai
url: https://gitee.com/ageerle/hzhub-ai
#这里定义了两个分组,可定义多个,也可以不定义
group-configs:
- group: 1.演示模块
packages-to-scan: org.ruoyi.demo
packages-to-scan: org.hzhub.demo
- group: 2.通用模块
packages-to-scan: org.ruoyi.web
packages-to-scan: org.hzhub.web
- group: 3.系统模块
packages-to-scan: org.ruoyi.system
packages-to-scan: org.hzhub.system
- group: 4.代码生成模块
packages-to-scan: org.ruoyi.generator
packages-to-scan: org.hzhub.generator
- group: 5.工作流模块
packages-to-scan: org.ruoyi.workflow
packages-to-scan: org.hzhub.workflow
- group: 6.MCP模块
packages-to-scan: org.ruoyi.mcp
packages-to-scan: org.hzhub.mcp
# 防止XSS攻击
xss:

View File

@@ -3,41 +3,41 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>ruoyi-ai</artifactId>
<groupId>org.ruoyi</groupId>
<artifactId>hzhub-ai</artifactId>
<groupId>org.hzhub</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<modules>
<module>ruoyi-common-bom</module>
<module>ruoyi-common-chat</module>
<module>ruoyi-common-social</module>
<module>ruoyi-common-core</module>
<module>ruoyi-common-doc</module>
<module>ruoyi-common-excel</module>
<module>ruoyi-common-idempotent</module>
<module>ruoyi-common-job</module>
<module>ruoyi-common-log</module>
<module>ruoyi-common-mail</module>
<module>ruoyi-common-mybatis</module>
<module>ruoyi-common-oss</module>
<module>ruoyi-common-ratelimiter</module>
<module>ruoyi-common-redis</module>
<module>ruoyi-common-satoken</module>
<module>ruoyi-common-security</module>
<module>ruoyi-common-sms</module>
<module>ruoyi-common-web</module>
<module>ruoyi-common-translation</module>
<module>ruoyi-common-sensitive</module>
<module>ruoyi-common-json</module>
<module>ruoyi-common-encrypt</module>
<module>ruoyi-common-tenant</module>
<module>ruoyi-common-websocket</module>
<module>ruoyi-common-sse</module>
<module>hzhub-common-bom</module>
<module>hzhub-common-chat</module>
<module>hzhub-common-social</module>
<module>hzhub-common-core</module>
<module>hzhub-common-doc</module>
<module>hzhub-common-excel</module>
<module>hzhub-common-idempotent</module>
<module>hzhub-common-job</module>
<module>hzhub-common-log</module>
<module>hzhub-common-mail</module>
<module>hzhub-common-mybatis</module>
<module>hzhub-common-oss</module>
<module>hzhub-common-ratelimiter</module>
<module>hzhub-common-redis</module>
<module>hzhub-common-satoken</module>
<module>hzhub-common-security</module>
<module>hzhub-common-sms</module>
<module>hzhub-common-web</module>
<module>hzhub-common-translation</module>
<module>hzhub-common-sensitive</module>
<module>hzhub-common-json</module>
<module>hzhub-common-encrypt</module>
<module>hzhub-common-tenant</module>
<module>hzhub-common-websocket</module>
<module>hzhub-common-sse</module>
</modules>
<artifactId>ruoyi-common</artifactId>
<artifactId>hzhub-common</artifactId>
<packaging>pom</packaging>
<description>

View File

@@ -4,13 +4,13 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-bom</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-bom</artifactId>
<version>${revision}</version>
<packaging>pom</packaging>
<description>
ruoyi-common-bom common依赖项
hzhub-common-bom common依赖项
</description>
<properties>
@@ -21,168 +21,168 @@
<dependencies>
<!-- 核心模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-core</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-core</artifactId>
<version>${revision}</version>
</dependency>
<!-- 对话模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-chat</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-chat</artifactId>
<version>${revision}</version>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-doc</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-doc</artifactId>
<version>${revision}</version>
</dependency>
<!-- excel -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-excel</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-excel</artifactId>
<version>${revision}</version>
</dependency>
<!-- 幂等 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-idempotent</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-idempotent</artifactId>
<version>${revision}</version>
</dependency>
<!-- 调度模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-job</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-job</artifactId>
<version>${revision}</version>
</dependency>
<!-- 日志记录 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-log</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-log</artifactId>
<version>${revision}</version>
</dependency>
<!-- 邮件服务 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-mail</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-mail</artifactId>
<version>${revision}</version>
</dependency>
<!-- 数据库服务 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-mybatis</artifactId>
<version>${revision}</version>
</dependency>
<!-- OSS -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-oss</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-oss</artifactId>
<version>${revision}</version>
</dependency>
<!-- 限流 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-ratelimiter</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-ratelimiter</artifactId>
<version>${revision}</version>
</dependency>
<!-- 缓存服务 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-redis</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-redis</artifactId>
<version>${revision}</version>
</dependency>
<!-- satoken -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-satoken</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-satoken</artifactId>
<version>${revision}</version>
</dependency>
<!-- 安全模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-security</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-security</artifactId>
<version>${revision}</version>
</dependency>
<!-- 短信模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-sms</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-sms</artifactId>
<version>${revision}</version>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-social</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-social</artifactId>
<version>${revision}</version>
</dependency>
<!-- web服务 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-web</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-web</artifactId>
<version>${revision}</version>
</dependency>
<!-- 翻译模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-translation</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-translation</artifactId>
<version>${revision}</version>
</dependency>
<!-- 脱敏模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-sensitive</artifactId>
<version>${revision}</version>
</dependency>
<!-- 序列化模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-json</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-json</artifactId>
<version>${revision}</version>
</dependency>
<!-- 数据库加解密模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-encrypt</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-encrypt</artifactId>
<version>${revision}</version>
</dependency>
<!-- 租户模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-tenant</artifactId>
<version>${revision}</version>
</dependency>
<!-- WebSocket模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-websocket</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-websocket</artifactId>
<version>${revision}</version>
</dependency>
<!-- SSE模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-sse</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-sse</artifactId>
<version>${revision}</version>
</dependency>

View File

@@ -3,16 +3,16 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-common-chat</artifactId>
<artifactId>hzhub-common-chat</artifactId>
<description>
ruoyi-common-chat chat服务
hzhub-common-chat chat服务
</description>
<dependencies>
@@ -28,13 +28,13 @@
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-core</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-sse</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-sse</artifactId>
</dependency>
<dependency>
@@ -43,8 +43,8 @@
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-excel</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-excel</artifactId>
</dependency>
<dependency>
@@ -54,13 +54,13 @@
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common-tenant</artifactId>
</dependency>
<dependency>

View File

@@ -1,14 +1,14 @@
package org.ruoyi.common.chat.base;
package org.hzhub.common.chat.base;
import cn.dev33.satoken.stp.StpUtil;
import org.apache.commons.lang3.StringUtils;
import org.ruoyi.common.chat.entity.User;
import org.ruoyi.common.chat.enums.UserStatusEnum;
import org.ruoyi.common.core.domain.model.LoginUser;
import org.ruoyi.common.core.exception.base.BaseException;
import org.ruoyi.common.satoken.utils.LoginHelper;
import org.hzhub.common.chat.entity.User;
import org.hzhub.common.chat.enums.UserStatusEnum;
import org.hzhub.common.core.domain.model.LoginUser;
import org.hzhub.common.core.exception.base.BaseException;
import org.hzhub.common.satoken.utils.LoginHelper;
import static org.ruoyi.common.chat.enums.ErrorEnum.A_USER_NOT_FOUND;
import static org.hzhub.common.chat.enums.ErrorEnum.A_USER_NOT_FOUND;
/**
* 线程上下文适配器,统一接入 Sa-Token 登录态。

View File

@@ -1,13 +1,13 @@
package org.ruoyi.common.chat.domain.bo.chat;
package org.hzhub.common.chat.domain.bo.chat;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.chat.entity.chat.ChatMessage;
import org.ruoyi.common.core.validate.AddGroup;
import org.ruoyi.common.core.validate.EditGroup;
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
import org.hzhub.common.chat.entity.chat.ChatMessage;
import org.hzhub.common.core.validate.AddGroup;
import org.hzhub.common.core.validate.EditGroup;
import org.hzhub.common.mybatis.core.domain.BaseEntity;
/**

View File

@@ -1,12 +1,12 @@
package org.ruoyi.common.chat.domain.bo.chat;
package org.hzhub.common.chat.domain.bo.chat;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.chat.entity.chat.ChatModel;
import org.ruoyi.common.core.validate.EditGroup;
import org.ruoyi.common.mybatis.core.domain.BaseEntity;
import org.hzhub.common.chat.entity.chat.ChatModel;
import org.hzhub.common.core.validate.EditGroup;
import org.hzhub.common.mybatis.core.domain.BaseEntity;
/**
* 模型管理业务对象 chat_model

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.domain.dto.request;
package org.hzhub.common.chat.domain.dto.request;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.domain.dto.request;
package org.hzhub.common.chat.domain.dto.request;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.domain.dto.request;
package org.hzhub.common.chat.domain.dto.request;
import com.fasterxml.jackson.databind.node.ObjectNode;
import lombok.Data;

View File

@@ -1,10 +1,10 @@
package org.ruoyi.common.chat.domain.vo.chat;
package org.hzhub.common.chat.domain.vo.chat;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.ruoyi.common.chat.entity.chat.ChatMessage;
import org.hzhub.common.chat.entity.chat.ChatMessage;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,11 +1,11 @@
package org.ruoyi.common.chat.domain.vo.chat;
package org.hzhub.common.chat.domain.vo.chat;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.ruoyi.common.chat.entity.chat.ChatModel;
import org.hzhub.common.chat.entity.chat.ChatModel;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.entity;
package org.hzhub.common.chat.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;

View File

@@ -1,11 +1,11 @@
package org.ruoyi.common.chat.entity;
package org.hzhub.common.chat.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.chat.enums.UserStatusEnum;
import org.hzhub.common.chat.enums.UserStatusEnum;
import java.time.LocalDateTime;

View File

@@ -1,10 +1,10 @@
package org.ruoyi.common.chat.entity.chat;
package org.hzhub.common.chat.entity.chat;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.tenant.core.TenantEntity;
import org.hzhub.common.tenant.core.TenantEntity;
import java.io.Serial;

View File

@@ -1,10 +1,10 @@
package org.ruoyi.common.chat.entity.chat;
package org.hzhub.common.chat.entity.chat;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.tenant.core.TenantEntity;
import org.hzhub.common.tenant.core.TenantEntity;
import java.io.Serial;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.entity.image;
package org.hzhub.common.chat.entity.image;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
@@ -6,7 +6,7 @@ import jakarta.validation.constraints.NotNull;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.chat.domain.vo.chat.ChatModelVo;
import org.hzhub.common.chat.domain.vo.chat.ChatModelVo;
/**
* 文生图对话上下文对象

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.enums;
package org.hzhub.common.chat.enums;
import com.baomidou.mybatisplus.annotation.IEnum;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.enums;
package org.hzhub.common.chat.enums;
import lombok.Getter;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.enums;
package org.hzhub.common.chat.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.chat.enums;
package org.hzhub.common.chat.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@@ -1,6 +1,6 @@
package org.ruoyi.common.chat.factory;
package org.hzhub.common.chat.factory;
import org.ruoyi.common.chat.service.image.IImageGenerationService;
import org.hzhub.common.chat.service.image.IImageGenerationService;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;

View File

@@ -1,9 +1,9 @@
package org.ruoyi.common.chat.service.chat;
package org.hzhub.common.chat.service.chat;
import org.ruoyi.common.chat.domain.bo.chat.ChatModelBo;
import org.ruoyi.common.chat.domain.vo.chat.ChatModelVo;
import org.ruoyi.common.mybatis.core.page.PageQuery;
import org.ruoyi.common.mybatis.core.page.TableDataInfo;
import org.hzhub.common.chat.domain.bo.chat.ChatModelBo;
import org.hzhub.common.chat.domain.vo.chat.ChatModelVo;
import org.hzhub.common.mybatis.core.page.PageQuery;
import org.hzhub.common.mybatis.core.page.TableDataInfo;
import java.util.Collection;
import java.util.List;

View File

@@ -1,8 +1,8 @@
package org.ruoyi.common.chat.service.chat;
package org.hzhub.common.chat.service.chat;
import dev.langchain4j.model.chat.response.StreamingChatResponseHandler;
import jakarta.validation.Valid;
import org.ruoyi.common.chat.domain.dto.request.ChatRequest;
import org.hzhub.common.chat.domain.dto.request.ChatRequest;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
/**

View File

@@ -1,7 +1,7 @@
package org.ruoyi.common.chat.service.image;
package org.hzhub.common.chat.service.image;
import jakarta.validation.Valid;
import org.ruoyi.common.chat.entity.image.ImageContext;
import org.hzhub.common.chat.entity.image.ImageContext;
/**
* 公共文生图接口

View File

@@ -1,7 +1,7 @@
package org.ruoyi.common.chat.service.workFlow;
package org.hzhub.common.chat.service.workFlow;
import com.fasterxml.jackson.databind.node.ObjectNode;
import org.ruoyi.common.chat.entity.User;
import org.hzhub.common.chat.entity.User;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import java.util.List;

View File

@@ -3,16 +3,16 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common</artifactId>
<groupId>org.hzhub</groupId>
<artifactId>hzhub-common</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-common-core</artifactId>
<artifactId>hzhub-common-core</artifactId>
<description>
ruoyi-common-core 核心模块
hzhub-common-core 核心模块
</description>
<dependencies>

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.config;
package org.hzhub.common.core.config;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;

View File

@@ -1,10 +1,10 @@
package org.ruoyi.common.core.config;
package org.hzhub.common.core.config;
import jakarta.annotation.PreDestroy;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.ruoyi.common.core.config.properties.ThreadPoolProperties;
import org.ruoyi.common.core.utils.SpringUtils;
import org.hzhub.common.core.config.properties.ThreadPoolProperties;
import org.hzhub.common.core.utils.SpringUtils;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.config;
package org.hzhub.common.core.config;
import jakarta.validation.Validator;
import org.hibernate.validator.HibernateValidator;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.config.properties;
package org.hzhub.common.core.config.properties;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 缓存的key 常量

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 缓存组名称常量

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 通用常量信息

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 全局的key常量 (业务无关的key)

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 返回状态码

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
import cn.hutool.core.lang.RegexPool;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 系统常量信息

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.constant;
package org.hzhub.common.core.constant;
/**
* 租户常量信息

View File

@@ -1,6 +1,6 @@
package org.ruoyi.common.core.domain;
package org.hzhub.common.core.domain;
import org.ruoyi.common.core.constant.HttpStatus;
import org.hzhub.common.core.constant.HttpStatus;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import cn.hutool.core.util.ObjectUtil;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,9 +1,9 @@
package org.ruoyi.common.core.domain.dto;
package org.hzhub.common.core.domain.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.ruoyi.common.core.domain.model.LoginUser;
import org.hzhub.common.core.domain.model.LoginUser;
import java.io.Serial;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.event;
package org.hzhub.common.core.domain.event;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.event;
package org.hzhub.common.core.domain.event;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.event;
package org.hzhub.common.core.domain.event;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,9 +1,9 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.ruoyi.common.core.domain.dto.PostDTO;
import org.ruoyi.common.core.domain.dto.RoleDTO;
import org.hzhub.common.core.domain.dto.PostDTO;
import org.hzhub.common.core.domain.dto.RoleDTO;
import java.io.Serial;
import java.io.Serializable;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

View File

@@ -1,4 +1,4 @@
package org.ruoyi.common.core.domain.model;
package org.hzhub.common.core.domain.model;
import lombok.Data;
import lombok.EqualsAndHashCode;

View File

@@ -1,10 +1,10 @@
package org.ruoyi.common.core.enums;
package org.hzhub.common.core.enums;
import cn.hutool.core.util.StrUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;
import org.ruoyi.common.core.exception.ServiceException;
import org.ruoyi.common.core.utils.StringUtils;
import org.hzhub.common.core.exception.ServiceException;
import org.hzhub.common.core.utils.StringUtils;
import java.util.Arrays;
import java.util.List;

Some files were not shown because too many files have changed in this diff Show More