3.1 KiB
3.1 KiB
实现方案
开始时间:2026-05-03-22-36-18
本次方案路径
工程分析/实现方案-2026-05-03-22-36-18.md
实现目标
完成下载文案、四状态单项 DICOM 下载、影像库阅览入口和冠状/矢状 DICOM 显示模式切换。
涉及文件
WebSite/src/App.tsxweb_backend.py工程分析/经验记录.md
执行步骤
- 前端文案调整:
- 将左侧工作站区域的“下载四状态ZIP”改为“下载结果”。
- 将影像库卡片中的“调阅”改为“变换”。
- 四状态单项下载:
- 在四状态结果卡片中,为原始序列、硬边界、高斯平滑、软过渡重建标题旁增加下载图标按钮。
- 点击按钮调用已有
handlePackageDownload(t.key),复用后端现有prepare_deformation_zip(job_id, target)。 - 按钮在形变任务未完成、对应状态 ZIP 正在打包时禁用,并显示简短状态。
- 后端新增影像库重建阅览接口:
- 新增
/api/library/reformat-preview,参数包含id、plane、index、window。 plane支持coronal、sagittal。window支持default、bone、soft_tissue、brain、lung等固定窗宽窗位模式。- 读取影像库 DICOM 序列为体数据,根据平面切片后用窗宽窗位转 PNG,缓存到
web_library/_preview_cache/<item_id>/reformat/。
- 新增
- 前端新增影像库阅览弹层:
- 增加
libraryViewerItem、viewerPlane、viewerWindow、viewerSliceIndex、viewerPreview等状态。 - 新增“阅览”按钮,打开弹层。
- 弹层提供冠状位/矢状位分段按钮、显示模式选择、切片滑杆、当前切片计数和预览图。
- 按切片、平面、显示模式请求
/api/library/reformat-preview。
- 增加
- 保持现有“信息”“删除”“变换”行为不变,避免影响数据选择和工作站流程。
- 执行测试方案。
- 将关键问题和解决方案追加到
工程分析/经验记录.md。 - 提交并推送 Gitea,commit 信息使用
2026-05-03-22-36-18 增加DICOM阅览和单项下载。 - 重新部署到
http://192.168.3.11:3005/。
预期实现细节
- 单项下载 target 使用现有键:
originalhard_boundarygaussian_smoothsoft_transition
- 阅览接口返回:
imageUrlindexcountplanewindowpatientId
- 窗宽窗位建议:
- default:沿用现有
ct_window默认范围。 - bone:骨窗。
- soft_tissue:软组织窗。
- brain:脑窗。
- lung:肺窗。
- default:沿用现有
回滚思路
如阅览接口或 UI 不符合预期,可回滚 web_backend.py 的新接口和 WebSite/src/App.tsx 中的阅览弹层及按钮;四状态单项下载和文案调整可单独保留或回退。
风险控制
- 不引入新的前端依赖。
- 不修改真实 DICOM 形变与输出目录结构。
- 后端预览只输出 PNG,不暴露额外 DICOM 文件写操作。
- 缓存文件写入现有
_preview_cache下,删除影像库条目时继续随缓存目录清理。
人工审核状态
待用户二次人工审核确认。未经确认不得修改业务代码。