chore: sync latest project updates
Some checks failed
CI / verify (push) Has been cancelled

This commit is contained in:
lyf
2026-07-03 14:42:38 +08:00
parent 8b2c36677e
commit 8fed715235
106 changed files with 6030 additions and 121 deletions

View File

@@ -71,25 +71,25 @@ Production audit48/100Blocked。H5 与微信小程序都能构建成功,
建议:去掉 `example.com` 兜底;无音频时显示“暂无讲解”;有音频时使用真实 `audioUrl`,并在列表、详情、底部播放器之间共享播放状态。
### P0内 3D/路线导航仍是演示态
### P0内 3D/路线导航仍是演示态
证据:
- `src/components/navigation/GuideMapShell.vue:5``src/components/navigation/GuideMapShell.vue:8` 内地图分支是 `/static/images/guide-indoor-3d-bg.png` 静态图。
- `src/components/navigation/GuideMapShell.vue:11` 外分支已使用原 `TencentMap`,但内没有使用 `ThreeMap`
- `src/components/navigation/GuideMapShell.vue:5``src/components/navigation/GuideMapShell.vue:8` 内地图分支是 `/static/images/guide-indoor-3d-bg.png` 静态图。
- `src/components/navigation/GuideMapShell.vue:11` 外分支已使用原 `TencentMap`,但内没有使用 `ThreeMap`
- `src/pages/route/detail.vue:156` 路线固定指向“1F 南侧卫生间”。
- `src/pages/route/detail.vue:358` 开始导航只是把 `navigationState` 改成 `navigating`
- `src/pages/route/detail.vue:377` 返回内继续也只是改状态。
- `src/pages/route/detail.vue:377` 返回内继续也只是改状态。
影响:用户从设施详情点击“开始导航”后,看起来进入了路线页,但没有真实路径、定位、楼层切换、到达判定,也没有和 3D 模型或地图 POI 绑定。
建议:将路线页目标、起点、路径段、楼层、地图渲染层统一绑定;内模式接入 `ThreeMap` 或明确降级为 2D 平面图,不能用静态设计图冒充可导航地图。
建议:将路线页目标、起点、路径段、楼层、地图渲染层统一绑定;内模式接入 `ThreeMap` 或明确降级为 2D 平面图,不能用静态设计图冒充可导航地图。
### P1外 TencentMap 恢复了,但 marker 交互不闭环
### P1外 TencentMap 恢复了,但 marker 交互不闭环
证据:
- `src/components/navigation/GuideMapShell.vue:11` 当前外地图使用 `TencentMap`,这是正确方向。
- `src/components/navigation/GuideMapShell.vue:11` 当前外地图使用 `TencentMap`,这是正确方向。
- `src/components/map/TencentMap.vue:239` marker 点击先 `emit('markerClick')`
- `src/components/map/TencentMap.vue:244``src/components/map/TencentMap.vue:250` 同一个点击又立即 `navigateTo`
- `src/pages/index/index.vue:232``src/pages/index/index.vue:282` 首页准备了 marker 详情、导航、讲解、收藏等处理函数,但 `GuideMapShell` 没有把 `TencentMap` 的 marker 事件继续暴露给首页。
@@ -121,7 +121,7 @@ Production audit48/100Blocked。H5 与微信小程序都能构建成功,
- `src/pages/index/index.vue:127``src/pages/index/index.vue:128` 首页只有 `导览``讲解` 两个内容 tab。
- `src/pages/index/index.vue:81` 讲解分支渲染 `ExplainList`
结论:原有“讲解”能力没有完全消失,但它不是独立页面,而是被内嵌为首页 tab。当前点击“讲解”不会进入内模型;它进入 `ExplainList`。真正的问题是讲解 tab 内的数据、音频、详情页没有连成闭环。
结论:原有“讲解”能力没有完全消失,但它不是独立页面,而是被内嵌为首页 tab。当前点击“讲解”不会进入内模型;它进入 `ExplainList`。真正的问题是讲解 tab 内的数据、音频、详情页没有连成闭环。
建议:如果产品需要“讲解”作为一级业务,应明确它是首页 tab 还是独立页面;然后补齐分享/返回/深链/播放状态保存规则。
@@ -142,19 +142,19 @@ Production audit48/100Blocked。H5 与微信小程序都能构建成功,
| 流程 | 当前状态 | 断点 | 闭环建议 |
| --- | --- | --- | --- |
| 导览首页 -> 外地图 -> 点 marker -> 详情/导航/讲解 | 未闭环 | marker 组件内部直接跳转,首页 sheet 逻辑未接上ID 与详情数据不一致。 | marker 只发事件,页面统一打开 POI sheetsheet 操作分别进入详情、路线、音频。 |
| 导览首页 -> 内 3D -> 选 POI -> 路线 | 未闭环 | 内是静态图,未接 `ThreeMap`、POI、路径。 | 接入真实内地图/3D 场景POI ID 与路线目标一致。 |
| 导览首页 -> 外地图 -> 点 marker -> 详情/导航/讲解 | 未闭环 | marker 组件内部直接跳转,首页 sheet 逻辑未接上ID 与详情数据不一致。 | marker 只发事件,页面统一打开 POI sheetsheet 操作分别进入详情、路线、音频。 |
| 导览首页 -> 内 3D -> 选 POI -> 路线 | 未闭环 | 内是静态图,未接 `ThreeMap`、POI、路径。 | 接入真实内地图/3D 场景POI ID 与路线目标一致。 |
| 搜索关键词 -> 结果 -> 详情 -> 导航 | 未闭环 | 搜索页不使用关键词做综合搜索;详情页不加载 ID详情导航返回上一页。 | 搜索接统一数据源;详情按 ID 渲染;导航按钮带目标进入路线页。 |
| 讲解 -> 筛选/搜索 -> 展品 -> 播放音频 -> 结束/返回 | 未闭环 | `activeFilter` 对数据组织影响弱;音频 URL 为空却标记可播放;详情页播放是假状态。 | 按展厅/主题真实分组;无音频禁用播放;播放器跨列表/详情共享状态。 |
| 设施详情 -> 选择起点 -> 开始导航 -> 到达 | 未闭环 | 选择起点没有输入结果;路线页固定目标;开始导航只切状态。 | 起点选择写入 route query/store路线页按起终点生成路径提供到达/结束态。 |
| 路线中 -> 查看外地图 -> 返回内继续 | 部分演示 | 暂停/恢复只改 `navigationState`,未保留地图层、楼层、进度。 | 保存 route session外/内切换只换展示层,不丢路径和当前步骤。 |
| 路线中 -> 查看外地图 -> 返回内继续 | 部分演示 | 暂停/恢复只改 `navigationState`,未保留地图层、楼层、进度。 | 保存 route session外/内切换只换展示层,不丢路径和当前步骤。 |
## 建议补充的 E2E 用例
按照 `playwright-e2e-tester` skill本项目至少需要以下端到端用例作为业务闭环验收
1. 点击首页“讲解”后,应显示讲解列表,不应加载内 3D/静态内地图。
2. 首页“导览”外模式应渲染 `TencentMap` 容器,并能点击 marker 打开 POI 操作面板。
1. 点击首页“讲解”后,应显示讲解列表,不应加载内 3D/静态内地图。
2. 首页“导览”外模式应渲染 `TencentMap` 容器,并能点击 marker 打开 POI 操作面板。
3. 搜索“卫生间”应只展示匹配设施;点击结果进入对应设施详情;点击“开始导航”进入路线页并保留目标 ID。
4. 讲解列表中 `audioUrl` 为空的展品应显示“暂无讲解”或禁用播放,不应请求 `example.com`
5. 点击自然馆展品讲解,应进入同一个展品详情,并能播放同一个音频对象。
@@ -167,7 +167,7 @@ Production audit48/100Blocked。H5 与微信小程序都能构建成功,
2. 让详情页、搜索页、讲解页全部接入 `dataLoader`/`searchAll`,消除硬编码默认对象。
3. 移除 `https://example.com/audio.mp3`,补真实音频状态和无音频状态。
4. 拆清 `TencentMap` 责任:地图只发事件,页面负责业务动作。
5. 路线页接入真实目标、起点和路径状态;内地图不要再用静态设计图冒充导航。
5. 路线页接入真实目标、起点和路径状态;内地图不要再用静态设计图冒充导航。
6. 修复 `vue-tsc` 工具链版本,让类型检查成为有效质量门。
7. 增加 Playwright 冒烟用例覆盖“导览、讲解、搜索、详情、路线”五条主链路。