2026-05-20-21-25-19 项目库结果视图与加载缓存优化

This commit is contained in:
2026-05-20 21:47:18 +08:00
parent 6c9787803c
commit cc137437bc
7 changed files with 643 additions and 96 deletions

View File

@@ -0,0 +1,58 @@
# 实现方案-2026-05-20-21-25-19
## 实现方案文档路径
`工程分析/实现方案-2026-05-20-21-25-19.md`
## 修改目标
1. 优化项目库“逆向分割结果”中的三维融合视图默认/复位视角,使复位后呈现用户示意的正向融合观察效果。
2.`VoxelizationMappingView` 增加项目库紧凑展示模式去掉无意义标签把窗宽按钮、复位按钮、视图标题、DICOM 切片位置和竖向导航重新布局。
3. 调整项目库结果区左右面板高度与底部对齐。
4. 为逆向工作区增加加载中页面,展示加载进度、加载速度和当前阶段,数据未就绪时不显示完整工作区。
5. 增加 DICOM 融合体与 STL 预览数据的内存缓存,减少跨模块返回后的重复加载。
## 涉及路径
- `WebSite/src/components/ReverseWorkspace.tsx`
- `WebSite/src/components/ProjectLibrary.tsx`
- `WebSite/src/index.css`
- `工程分析/经验记录.md`
## 技术路线
-`ReverseWorkspace.tsx` 中增加模块级缓存 Map用于缓存 DICOM fusion volume、STL preview、映射视图预览数据。
-`FusionThreeView` 增加 `variant` 或复位视角参数,项目库复用同一组件但使用较适合结果复核的默认视角。
-`VoxelizationMappingView` 增加 `variant="workspace" | "library"`,项目库模式采用黑色画布、精简标题和窄导航栏;工作区保持完整操作信息。
- 用加载指标组合逆向工作区所需数据状态,未完成时显示独立加载卡片。
- 调整项目库逆向结果布局为等高网格,并保证左右图容器底部一致。
## 执行步骤
1. 阅读现有 `ProjectLibrary.tsx``ReverseWorkspace.tsx` 的视图复用和数据加载逻辑。
2. 写入本次需求、实现、测试方案文档。
3. 修改融合视图与映射视图组件参数,补齐紧凑模式和复位视角。
4. 增加数据缓存与加载页,避免跨页面返回时重复拉取大数据。
5. 调整项目库结果区布局和控件位置。
6. 执行类型检查、构建、服务重启与健康检查。
7. 追加经验记录并提交推送到 Gitea。
## 兼容性与回滚方案
- 新增 UI 变体保持默认值为工作区模式,避免影响已有调用。
- 缓存仅保存在浏览器内存中,刷新页面会自然清空;若出现旧数据问题,可删除缓存分支回退为原请求逻辑。
- 如果紧凑模式影响项目库结果展示,可只回退 `variant="library"` 调用,不影响逆向工作区主流程。
## 预计文件变更
- 修改 `ReverseWorkspace.tsx`:组件参数、缓存、加载页、视图布局。
- 修改 `ProjectLibrary.tsx`:调用参数、布局对齐、控件位置。
- 视需要修改 `index.css`:竖向导航样式微调。
- 新增本次三份工程分析文档,并追加经验记录。
## 提交与部署策略
- 只暂存本次修改的源码和本次工程分析文档。
- commit message 使用 `2026-05-20-21-25-19 项目库结果视图与加载缓存优化`
- 推送到 `http://192.168.31.5:5002/admin/REVOXELSEG_DICOM.git``main` 分支。
- 使用 `tmux` 会话 `revoxelseg-dicom` 重新部署并验证。