Commit Graph

29 Commits

Author SHA1 Message Date
f381d641ab fix(upload): 修复流式上传中的文件名处理逻辑
- 修正预上传接口调用时传递正确的文件总数而非固定值-1
- 移除导入配置中文件分割时的文件扩展名保留逻辑
- 删除流式上传选项中的fileExtension参数定义
- 移除流式上传实现中的文件扩展名处理相关代码
- 简化新文件名生成逻辑,不再附加扩展名后缀
2026-02-04 07:47:41 +08:00
c8611d29ff feat(upload): 实现流式分割上传,优化大文件上传体验
实现边分割边上传的流式处理,避免大文件一次性加载导致前端卡顿。

修改内容:
1. file.util.ts - 流式分割上传核心功能
   - 新增 streamSplitAndUpload 函数,实现边分割边上传
   - 新增 shouldStreamUpload 函数,判断是否使用流式上传
   - 新增 StreamUploadOptions 和 StreamUploadResult 接口
   - 优化分片大小(默认 5MB)

2. ImportConfiguration.tsx - 智能上传策略
   - 大文件(>5MB)使用流式分割上传
   - 小文件(≤5MB)使用传统分割方式
   - 保持 UI 不变

3. useSliceUpload.tsx - 流式上传处理
   - 新增 handleStreamUpload 处理流式上传事件
   - 支持并发上传和更好的进度管理

4. TaskUpload.tsx - 进度显示优化
   - 注册流式上传事件监听器
   - 显示流式上传信息(已上传行数、当前文件等)

5. dataset.model.ts - 类型定义扩展
   - 新增 StreamUploadInfo 接口
   - TaskItem 接口添加 streamUploadInfo 和 prefix 字段

实现特点:
- 流式读取:使用 Blob.slice 逐块读取,避免一次性加载
- 逐行检测:按换行符分割,形成完整行后立即上传
- 内存优化:buffer 只保留当前块和未完成行,不累积所有分割结果
- 并发控制:支持 3 个并发上传,提升效率
- 进度可见:实时显示已上传行数和总体进度
- 错误处理:单个文件上传失败不影响其他文件
- 向后兼容:小文件仍使用原有分割方式

优势:
- 大文件上传不再卡顿,用户体验大幅提升
- 内存占用显著降低(从加载整个文件到只保留当前块)
- 上传效率提升(边分割边上传,并发上传多个小文件)

相关文件:
- frontend/src/utils/file.util.ts
- frontend/src/pages/DataManagement/Detail/components/ImportConfiguration.tsx
- frontend/src/hooks/useSliceUpload.tsx
- frontend/src/pages/Layout/TaskUpload.tsx
- frontend/src/pages/DataManagement/dataset.model.ts
2026-02-03 13:12:10 +00:00
893e0a1580 fix: 上传文件时任务中心立即显示
问题描述:
在数据管理的数据集详情页上传文件时,点击确认后,弹窗消失,但是需要等待文件处理(特别是启用按行分割时)后任务中心才弹出来,用户体验不好。

修改内容:
1. useSliceUpload.tsx: 在 createTask 函数中添加立即显示任务中心的逻辑,确保任务创建后立即显示
2. ImportConfiguration.tsx: 在 handleImportData 函数中,在执行耗时的文件处理操作(如文件分割)之前,立即触发 show:task-popover 事件显示任务中心

效果:
- 修改前:点击确认 → 弹窗消失 → (等待文件处理)→ 任务中心弹出
- 修改后:点击确认 → 弹窗消失 + 任务中心立即弹出 → 文件开始处理
2026-02-03 09:14:40 +00:00
438acebb89 feat(data-management): 添加Office文档预览功能
- 集成LibreOffice转换器实现DOC/DOCX转PDF功能
- 新增DatasetFilePreviewService处理预览文件管理
- 新增DatasetFilePreviewAsyncService异步转换任务
- 在文件删除时同步清理预览文件
- 前端实现Office文档预览状态轮询机制
- 添加预览API接口支持状态查询和转换触发
- 优化文件预览界面显示转换进度和错误信息
2026-02-01 22:26:05 +08:00
dbf8ec53dd style(ui): 统一预览模态框宽度为响应式尺寸
- 将 CreateAnnotationTaskDialog 中的预览模态框宽度从固定像素改为 80vw
- 将 VisualTemplateBuilder 中的预览抽屉宽度从 600px 改为 80vw
- 将 PreviewPromptModal 中的模态框宽度从 800px 改为 80vw
- 将 Overview 组件中的文本和媒体预览宽度统一改为 80vw
- 将 KnowledgeSetDetail 中的文本和媒体预览宽度统一改为 80vw
- 移除原来固定的像素值,使用响应式单位提升用户体验
2026-02-01 12:49:56 +08:00
4f99875670 feat(data-management): 添加数据集类型判断并控制按行分割功能显示
- 从 dataset.model 中导入 DatasetType 类型定义
- 新增 isTextDataset 变量用于判断当前数据集是否为文本类型
- 将按行分割配置项包裹在条件渲染中,仅在文本数据集时显示
- 保持原有非文本文件禁用逻辑不变
2026-01-31 18:50:56 +08:00
85d7141a91 refactor(DataManagement): 移除相似数据集表格并改用卡片视图显示
- 移除了 Overview 组件中的相似数据集表格相关代码
- 移除了 Tag 组件和相关依赖的导入
- 在 DatasetDetail 中添加 CardView 组件用于显示相似数据集
- 将相似数据集的展示从表格改为卡片布局
- 移除了 Overview 组件中的相似数据集参数传递
- 更新了页面布局以
2026-01-31 09:40:06 +08:00
97170a90fe feat(data-import): 添加文本文件类型检测和按行分割功能
- 新增 TEXT_FILE_MIME_PREFIX、TEXT_FILE_MIME_TYPES 和 TEXT_FILE_EXTENSIONS 常量用于文本文件识别
- 添加 getUploadFileName、getUploadFileType 和 isTextUploadFile 工具函数
- 在 splitFileByLines 函数中集成文本文件类型检查
- 添加 hasNonTextFile useMemo 钩子来检测是否存在非文本文件
- 当存在非文本文件时禁用按行分割功能并重置开关状态
- 更新 Tooltip 提示内容以反映文件类型限制
- 使用 useCallback 优化 fetchCollectionTasks 和 resetState 函数
- 调整 useEffect 依赖数组以确保正确的重新渲染行为
2026-01-30 23:31:02 +08:00
6dfed934a5 feat(file-preview): 增加PDF文件预览功能并优化预览逻辑
- 引入统一的文件预览工具函数和类型定义
- 添加PDF文件类型的识别和预览支持
- 使用iframe实现PDF文件在线预览
- 重构文件预览逻辑,统一处理不同文件类型的预览
- 优化文本内容预览的长度截取机制
- 更新预览按钮加载状态显示
- 统一预览窗口的最大高度配置
- 修改API调用路径为专门的预览接口
2026-01-30 17:32:36 +08:00
bd37858ccc refactor(dataset): 优化数据集路径管理和关联关系处理
- 移除Dataset类中initCreateParam方法的parentPath参数
- 简化handleParentChange方法中的路径构建逻辑
- 更新错误消息将"子数据集"改为"关联数据集"
- 修改前端界面将"父数据集"相关术语统一为"关联数据集"
- 在导入配置组件中添加类型定义和改进文件处理逻辑
- 限制数据源选项排除COLLECTION类型避免错误选择
2026-01-30 16:48:39 +08:00
c221666e67 feat(data-management): 添加数据集相似度推荐功能
- 在DatasetApplicationService中实现getSimilarDatasets方法,支持基于标签匹配的相似数据集推荐
- 新增normalizeSimilarLimit、normalizeTagNames、countSharedTags等辅助方法用于相似度计算
- 在DatasetRepository接口及其实现类中添加findSimilarByTags方法,支持数据库层面的标签匹配查询
- 在DatasetController中暴露/similar REST API端点,支持按需获取相似数据集
- 在前端Overview组件中展示相似数据集表格,包含名称、标签、类型、文件数和更新时间等信息
- 在DatasetDetail页面集成相似数据集获取逻辑,限制默认返回数量为4条
- 移除KnowledgeItem中的冗余title字段,统一使用其他标识信息
- 优化知识管理相关组件中的标题显示逻辑,移除硬编码标题值
2026-01-30 11:43:57 +08:00
3c4b66b451 feat(DataManagement): 添加文件预览功能支持多种文件类型
- 实现文本、图片、视频、音频文件的预览功能
- 添加预览模态框支持不同文件类型的展示
- 集成文件类型检测和预览内容加载逻辑
- 添加预览加载状态和错误处理机制
- 实现大文件内容截断和滚动预览功能
- 添加预览窗口关闭和资源清理功能
2026-01-28 11:18:08 +08:00
d26040a6e0 refactor(DataManagement): 重构数据管理详情页面组件
- 移除 Overview 组件中的文件列表多选配置功能
- 添加 DatasetFileRow 类型定义并更新相关类型注解
- 修改 Overview 组件属性接口,增加 onUpload 回调函数
- 更新表格渲染函数中的类型注解,统一使用 DatasetFileRow 类型
- 简化按钮点击事件处理函数的参数传递
- 在 DatasetDetail 页面中移除顶部工具栏的上传按钮
- 将上传功能集成到 Overview 组件的文件操作区域
- 通过回调函数实现
2026-01-26 10:31:09 +08:00
0c23fd6c23 fix(import): 修复文件上传配置和表单状态管理问题
- 移除手动fileList状态管理,改用Form组件内置字段
- 修复重置状态时的初始值设置,确保hasArchive和splitByLine默认值正确
- 更新文件上传验证逻辑,使用form.getFieldValue获取文件列表
- 修改拖拽上传组件配置,移除不必要的回调函数
- 修复按钮禁用条件判断,使用正确的字段路径检查文件长度
- 移除表单项的initialValue配置,统一在state初始化时设置默认值
- 调整Sidebar组件中的注释标记,修复任务中心弹窗显示逻辑
2026-01-21 00:56:09 +08:00
3af0f0b3a1 refactor(config): 优化导入配置组件结构
- 重构 ImportConfiguration 组件的内部逻辑
- 提升代码可读性和维护性
- 优化组件性能表现
- 调整组件
2026-01-19 17:10:53 +08:00
879da760c7 feat(DataManagement): 添加按行分割文件功能
- 引入 Tooltip 和 QuestionCircleOutlined 组件用于提示信息
- 移除未使用的 useMemo 钩子和 fileSliceList 变量
- 新增 splitFileByLines 函数实现文件按行分割逻辑
- 在 handleUpload 函数中集成分行分割功能
- 添加 splitByLine 开关配置项到表单中
- 实现文本文件每行分割成独立文件的功能
- 优化文件上传处理流程以支持分割后的文件列表
2026-01-19 16:55:12 +08:00
6fac8c1322 refactor(data-management): 移除数据集详情中的存储路径和存储名称字段
- 从数据集概览组件中移除 targetLocation 和 pvcName 字段显示
- 保留创建者、创建时间等核心信息展示
- 清理相关的代码结构和布局调整
2026-01-19 16:46:48 +08:00
Kecheng Sha
3f1ad6a872 feat(auto-annotation): integrate YOLO auto-labeling and enhance data management (#223)
* feat(auto-annotation): initial setup

* chore: remove package-lock.json

* chore: 清理本地测试脚本与 Maven 设置

* chore: change package-lock.json
2026-01-05 14:22:44 +08:00
Kecheng Sha
0df7a872e4 Revert "feat: fix the problem in the Operator Market frontend pages" 2025-12-29 12:00:37 +08:00
root
844add27ea feat: fix the problem in the Operator Market frontend pages 2025-12-29 11:38:47 +08:00
hefanli
f87060490c feature: data management supports nested folders (#150)
* fix: k8s部署场景下,backend-python服务挂载需要存储

* fix: 增加数据集文件免拷贝的接口定义

* fix: 评估时评估结果赋予初始空值,防止未评估完成时接口报错

* feature: 数据管理支持嵌套文件夹(展示时按照文件系统展示;批量下载时带上相对路径)

* fix: 去除多余的文件重命名逻辑

* refactor: remove unused imports
2025-12-10 16:42:45 +08:00
hefanli
758cf93e36 feature: 增加压缩包上传功能 (#137)
* feature: 增加压缩包上传功能

* fix: 删除文件时数据集关于文件的相关统计信息也刷新

* fix: 增加k8s常见下评估服务的路由
2025-12-09 14:42:27 +08:00
chenghh-9609
fdfcfec1f1 update knowledge base file selection component (#96)
* feat: Implement DatasetFileTransfer component for file selection and management

* feat: Add pagination support to file list in Overview component
2025-11-21 11:39:26 +08:00
hefanli
a07fba23f2 feature:数据集导入数据集支持选择归集任务导入 (#92)
* feature: 实现obs归集

* feature: 增加数据集中出现同名文件时的处理方式

* feature: 前端数据集导入数据时增加可以选择归集任务导入
2025-11-19 11:05:33 +08:00
chenghh-9609
fad76e7477 data collection page (#31)
* feat: Update site name to DataMate and refine text for AI data processing

* feat: Refactor settings page and implement model access functionality

- Created a new ModelAccess component for managing model configurations.
- Removed the old Settings component and replaced it with a new SettingsPage component that integrates ModelAccess, SystemConfig, and WebhookConfig.
- Added SystemConfig component for managing system settings.
- Implemented WebhookConfig component for managing webhook configurations.
- Updated API functions for model management in settings.apis.ts.
- Adjusted routing to point to the new SettingsPage component.

* feat: Implement Data Collection Page with Task Management and Execution Log

- Created DataCollectionPage component to manage data collection tasks.
- Added TaskManagement and ExecutionLog components for task handling and logging.
- Integrated task operations including start, stop, edit, and delete functionalities.
- Implemented filtering and searching capabilities in task management.
- Introduced SimpleCronScheduler for scheduling tasks with cron expressions.
- Updated CreateTask component to utilize new scheduling and template features.
- Enhanced BasicInformation component to conditionally render fields based on visibility settings.
- Refactored ImportConfiguration component to remove NAS import section.
2025-10-28 16:15:06 +08:00
chenghh-9609
05dc69026e feat: Add update event handling for dataset operations and improve dataset editing logic 2025-10-24 09:41:24 +08:00
chenghh-9609
4e53cc813b feat: Enhance CardView and DatasetManagement with loading state and pagination updates 2025-10-23 16:56:36 +08:00
chenghh-9609
bb116839ae feat: Enhance DatasetDetail component with delete functionality and improved download handling
feat: Add automatic data refresh and improved user feedback in DatasetManagementPage

fix: Update dataset API to streamline download functionality and improve error handling
2025-10-23 15:37:22 +08:00
Dallas98
1c97afed7d init datamate 2025-10-21 23:00:48 +08:00