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

@@ -1977,3 +1977,21 @@ C. 解决问题方案
D. 后续如何避免问题
后续调整自动匹配参数上限时要同时检查前端控件、API 类型、服务端归一化、默认值和运行耗时提示。对可能显著增加耗时的参数,只提高上限不改变默认值;若用户常用高上限,应补充进度、取消和超时保护。
## 2026-05-25-14-00-24 项目导出包不应使用会暴露 PAX 头的 tar.gz
A. 具体问题
用户在 Windows 解压“导出项目及结果”压缩包时,只能看到 `entries``PaxHeaders` 和无扩展名编号文件,无法直接看到 JSON、分割类别映射和 `.nii.gz` 分割结果。同时分类分割导出的文件名带编号和 `-label` 后缀,不利于后续按类别处理。
B. 产生问题原因
旧导出包使用手写 tar.gz。tar 路径一旦包含中文项目名或较长路径,服务端会写入 PAX 扩展头;部分 Windows 解压工具会把 PAX 扩展头当成普通目录展示,并把真实文件显示成 `entries/000001` 之类的中转名。压缩包内部还额外套了项目名根目录,而下载文件名本身已经包含项目名。
C. 解决问题方案
将“项目及结果导出”改为 ZIP包内不再套项目名根目录固定输出 `manifest.json``pose/pose.json``segmentation/labels.json``segmentation/label.nii.gz``segmentation-parts/{类别名}.nii.gz``dicom/image.nii.gz``stl/{原文件名}`。前端下载改为 XHR blob 下载,接入顶部导出进度条。新增 `POST /api/reverse-pipeline`,支持上传 DICOM/STL、应用旋转/平移/缩放/镜像/轴向自动拉伸、可选自动匹配、可选导出、可选记录项目库和锁定。
D. 后续如何避免问题
面向 Windows 用户直接查看的复杂导出包优先使用 ZIP不要用需要 PAX 扩展的 tar.gz如果必须使用 tar.gz必须避免非 ASCII 和长路径,或确认目标解压器正确隐藏 PAX。导出包内部结构应以机器可读和人工可读为准分类分割文件名保持类别名映射关系单独放入 `labels.json`