2026-05-25-14-00-24 修正项目导出结构与新增批处理API

This commit is contained in:
2026-05-25 14:26:51 +08:00
parent 21b372f705
commit acdff763b5
7 changed files with 912 additions and 38 deletions

View File

@@ -0,0 +1,50 @@
# 测试方案-2026-05-25-14-00-24
## 测试方案文档路径
`工程分析/测试方案-2026-05-25-14-00-24.md`
## 静态检查
- 检查 TypeScript 类型是否通过 Vite 构建。
- 检查新增导出和 API 函数没有破坏现有 `ProjectExportTarget``ModelPoseValue``AutoMatchRequest` 使用。
- 检查 ZIP 内路径不包含项目名根目录。
## 构建检查
-`WebSite/` 执行:
- `npm run build`
## 关键业务场景验证
- 请求 `/api/projects/:projectId/export-bundle` 导出分割、位姿等内容,确认响应为 `.zip`
- 使用 `unzip -l` 查看 ZIP确认存在 `manifest.json``segmentation/labels.json`,分类模式下存在 `segmentation-parts/{类别名}.nii.gz`
- 前端导出按钮点击后确认顶部进度条出现并完成后自动消失。
- 新增 `/api/reverse-pipeline` 在默认不导出时返回 JSON在指定导出内容时返回 ZIP。
## 医学影像数据相关边界验证
- 分割导出应继续使用当前 DICOM 体数据和当前位姿。
- 可见类别导出时仅导出可见构件;所有类别导出时导出全部构件。
- 分类导出的单构件 `.nii.gz` 文件命名可直接对应类别,类别映射 JSON 同包提供。
## 部署验证
- 重启 `tmux` 会话 `revoxelseg-dicom` 中的服务。
- 验证:
- `http://127.0.0.1:4000/api/health`
- `http://127.0.0.1:4000/`
- `https://revoxel.huijutec.cn/`
## Git/Gitea 备份验证
- `git status --short` 确认本次改动范围。
- commit message 包含 `2026-05-25-14-00-24`
- 推送至 Gitea 后确认 `origin/main` 更新。
## 风险与回归关注点
- ZIP 下载文件名需要兼容中文项目名。
- 批处理 API 的临时项目目录需要在不入库时清理,避免磁盘堆积。
- 自动匹配失败不能导致已上传临时文件残留或项目状态异常。
- 导出进度条不能遮挡和阻塞其他功能。