Files
hs-end/doc/TASK008-文件上传模块.md

47 lines
1.9 KiB
Markdown
Raw Normal View History

2025-08-25 16:01:26 +08:00
# TASK008 - 文件上传模块
## 任务信息
- **任务编号**: TASK008
- **任务名称**: 文件上传模块
- **版本**: V1.0
- **状态**: 跳过该模块,暂时进行不开发
## 任务描述
实现文件上传功能支持txt、pdf、md等格式文件的上传、存储和管理为AI文档分析功能提供基础支持。
## 验收标准清单
- [ ] 实现文件上传接口(/api/files/upload
- [ ] 支持多种文件格式验证txt、pdf、md、docx等
- [ ] 实现文件大小限制和安全检查
- [ ] 创建文件存储和管理功能
- [ ] 实现文件元数据记录
- [ ] 添加文件访问权限控制
- [ ] 创建FileService、FileController和相关DTO
- [ ] 实现文件内容解析预处理
- [ ] 添加文件删除和清理功能
- [ ] 实现文件上传进度反馈
## 注意事项
1. 文件大小限制在10MB以内防止服务器资源耗尽
2. 支持的文件类型:.txt、.pdf、.md、.docx、.doc、.xlsx、.xls
3. 文件名需要重命名使用UUID+原扩展名避免冲突
4. 上传的文件需要进行病毒扫描和安全检查
5. 文件存储路径需要按日期分层组织(如/files/2024/01/01/
6. 记录文件的原始名称、存储路径、大小、类型等元数据
7. 用户只能访问自己上传的文件
8. 文件上传需要关联到具体的会话
9. 实现文件的软删除,定期清理无效文件
10. 添加文件上传失败的重试机制
11. 支持断点续传功能(可选)
12. 文件存储考虑使用OSS或本地文件系统
13. 需要生成文件的访问URL
14. 添加文件下载接口用于预览
15. 实现文件内容的文本提取功能
16. 设置用户文件数量和总大小限制
## 相关文件
- src/main/java/com/lxy/hsend/controller/FileController.java
- src/main/java/com/lxy/hsend/service/FileService.java
- src/main/java/com/lxy/hsend/dto/file/
- src/main/java/com/lxy/hsend/repository/FileRepository.java
- src/main/java/com/lxy/hsend/util/FileUtil.java