|
@@ -22,7 +22,8 @@ src/client/
|
|
|
│ ├── pages/ # 页面组件
|
|
│ ├── pages/ # 页面组件
|
|
|
│ │ ├── Dashboard.tsx # 仪表板
|
|
│ │ ├── Dashboard.tsx # 仪表板
|
|
|
│ │ ├── Login.tsx # 登录页面
|
|
│ │ ├── Login.tsx # 登录页面
|
|
|
-│ │ └── Users.tsx # 用户管理
|
|
|
|
|
|
|
+│ │ ├── Users.tsx # 用户管理
|
|
|
|
|
+│ │ └── Files.tsx # 文件管理页面
|
|
|
│ ├── routes.tsx # 路由配置
|
|
│ ├── routes.tsx # 路由配置
|
|
|
│ └── index.tsx # 管理后台入口
|
|
│ └── index.tsx # 管理后台入口
|
|
|
├── home/ # 用户前台应用
|
|
├── home/ # 用户前台应用
|
|
@@ -35,6 +36,7 @@ src/client/
|
|
|
├── hooks/ # 共享Hooks
|
|
├── hooks/ # 共享Hooks
|
|
|
├── lib/ # 工具库
|
|
├── lib/ # 工具库
|
|
|
├── utils/ # 工具函数
|
|
├── utils/ # 工具函数
|
|
|
|
|
+│ └── minio.ts # MinIO上传工具
|
|
|
└── api.ts # API客户端配置
|
|
└── api.ts # API客户端配置
|
|
|
```
|
|
```
|
|
|
|
|
|
|
@@ -62,6 +64,11 @@ src/server/
|
|
|
│ │ ├── [id].ts # 用户详情路由
|
|
│ │ ├── [id].ts # 用户详情路由
|
|
|
│ │ └── __tests__/ # 路由测试
|
|
│ │ └── __tests__/ # 路由测试
|
|
|
│ ├── roles/ # 角色管理路由
|
|
│ ├── roles/ # 角色管理路由
|
|
|
|
|
+│ ├── files/ # 文件管理路由
|
|
|
|
|
+│ │ ├── multipart-policy/ # 多部分上传策略
|
|
|
|
|
+│ │ ├── multipart-complete/ # 完成多部分上传
|
|
|
|
|
+│ │ ├── [id]/ # 文件操作路由
|
|
|
|
|
+│ │ └── upload-policy/ # 上传策略路由
|
|
|
│ └── __integration_tests__/ # 集成测试
|
|
│ └── __integration_tests__/ # 集成测试
|
|
|
├── modules/ # 业务模块层
|
|
├── modules/ # 业务模块层
|
|
|
│ ├── auth/ # 认证业务模块
|
|
│ ├── auth/ # 认证业务模块
|
|
@@ -71,6 +78,12 @@ src/server/
|
|
|
│ │ ├── user.entity.ts # 用户实体
|
|
│ │ ├── user.entity.ts # 用户实体
|
|
|
│ │ ├── user.service.ts # 用户服务
|
|
│ │ ├── user.service.ts # 用户服务
|
|
|
│ │ └── __tests__/ # 用户测试
|
|
│ │ └── __tests__/ # 用户测试
|
|
|
|
|
+│ ├── files/ # 文件业务模块
|
|
|
|
|
+│ │ ├── file.entity.ts # 文件实体
|
|
|
|
|
+│ │ ├── file.service.ts # 文件服务
|
|
|
|
|
+│ │ ├── minio.service.ts # MinIO服务
|
|
|
|
|
+│ │ ├── file.schema.ts # 文件验证Schema
|
|
|
|
|
+│ │ └── __tests__/ # 文件测试
|
|
|
├── utils/ # 工具层
|
|
├── utils/ # 工具层
|
|
|
│ ├── generic-crud.service.ts # 通用CRUD服务
|
|
│ ├── generic-crud.service.ts # 通用CRUD服务
|
|
|
│ ├── generic-crud.routes.ts # 通用CRUD路由
|
|
│ ├── generic-crud.routes.ts # 通用CRUD路由
|
|
@@ -109,6 +122,12 @@ src/server/
|
|
|
**文件管理服务**:
|
|
**文件管理服务**:
|
|
|
- **责任**: 提供MinIO对象存储集成,支持文件上传、下载、删除等操作
|
|
- **责任**: 提供MinIO对象存储集成,支持文件上传、下载、删除等操作
|
|
|
- **现状**: 已实现完整功能,支持分段上传、预签名URL生成
|
|
- **现状**: 已实现完整功能,支持分段上传、预签名URL生成
|
|
|
|
|
+- **核心功能**:
|
|
|
|
|
+ - 单文件上传(≤5MB)
|
|
|
|
|
+ - 多部分分段上传(>5MB大文件)
|
|
|
|
|
+ - 预签名URL生成(支持下载和直接访问)
|
|
|
|
|
+ - 文件元数据管理(数据库记录)
|
|
|
|
|
+ - 文件删除(同时删除MinIO对象和数据库记录)
|
|
|
- **优化重点**: 增强大文件处理能力,优化上传性能
|
|
- **优化重点**: 增强大文件处理能力,优化上传性能
|
|
|
|
|
|
|
|
## 组件交互
|
|
## 组件交互
|