feat(admin): 新增全套运营管理功能,修复核心路由bug及后端seed问题

修复Vue Admin布局中RouterView未绑定唯一key的问题,解决RBAC系统资源页面切换后内容不刷新的ISSUE-001故障,新增routeViewKey工具函数区分路由实例
完善路由配置,新增admin空路径路由,修复路由命名空路径告警
新增媒体管理、运维发布/重置页面,补全全站路由注册与动态路由过滤逻辑
新增玩法、线索、管家、系统资源管理的全套工具函数、业务组件及单元测试用例
修复后端app/seed.py中媒体资源重复检测未考虑会话内pending资源的bug,新增对应测试验证修复逻辑
修正alembic迁移版本0015的依赖关系,删除废弃的旧迁移文件
优化后端系统接口的字典序列化逻辑,简化重复代码
添加QA验收报告与相关测试截图,完善项目测试覆盖
This commit is contained in:
duanshuwen committed 2026-08-26 18:48:48 +08:00
1 parent fa6fd2a8eb
commit efab6d1398
73 files changed
+3963 -788

No files matched your search

@@ -0,0 +1,54 @@
# WonderQ 三端人工验收报告
- 验收时间:2026-08-25
- 验收范围:Vue 管理端 `http://localhost:5604`、React 过渡端 `http://localhost:5602`、MiniAPP H5 `http://localhost:5173`
- 首轮结论:未通过;本轮修复后阻塞项和控制台告警均已回归通过,但整体业务验收仍未完成。
## 已通过
- Vue 管理端登录态下可进入仪表盘、首页配置、玩法与详情、管家管理、需求线索及 RBAC 菜单。
- 需求线索列表可加载,状态字段可见;本次未修改业务数据。
- Vue 路由菜单点击后 URL 和菜单高亮基本同步。
- React 过渡端可正常打开登录页,浏览器控制台无 error/warning。
- MiniAPP H5 首页可正常打开,公共 API 内容可见,浏览器控制台无 error/warning。
- Vue 管理端本次浏览未发现运行时 error。
- 修复后连续切换用户、角色、菜单、部门页面,URL、标题、菜单高亮和记录均对应一致。
- 修复后新会话浏览控制台无 error/warning。
- 2026-08-26 增量复验:首页配置已接入全部 7 类站点模块的新增、编辑、删除和可用模块排序入口;空态、编辑器字段、单例限制、必填标题和 HTTP(S) 图片地址校验可用,未修改开发库业务数据。
- 2026-08-26 增量复验:玩法分类、路线和路线详情已接入新增、编辑、删除、排序、详情字段、管家关联及详情图片上传入口;其余四类站点配置已接入统一编辑器,未执行真实写入。
- 2026-08-26 增量复验:管家顾问页已接入顾问 CRUD、启用状态、排序、删除确认、头像/二维码上传和服务详情编辑;未执行真实写入。
- 2026-08-26 增量复验:重新确认有效 Vue 会话后,线索列表、类型筛选、状态筛选和详情展示均通过;补充修复 `LeadsPage` 缺少 `onMounted(load)` 导致页面永久 loading 的问题,未执行真实状态写入。
- 2026-08-26 增量复验:媒体页已读取现有素材并接入分组批量上传、图片类型/5MB 校验;发布与重置页已接入权限控制、进行中禁用和二次确认,未触发发布或重置。
## 阻塞问题
### ISSUE-001:RBAC 系统资源页面切换后内容不刷新
- 严重级别:High
- 影响:从“用户管理”点击“角色管理”“菜单管理”或“部门管理”时,URL 已切换,但页面标题和记录仍停留在用户管理;人工无法可靠验收角色、菜单、部门页面。
- 复现步骤:
1. 打开 Vue 管理端并进入“用户管理”。
2. 点击“角色管理”。
3. 观察地址为 `/admin/system/roles`,页面标题仍为“用户管理”,记录仍为用户 JSON。
- 实际结果:页面显示 `用户管理`,而地址为 `http://localhost:5604/admin/system/roles`;当前菜单高亮为“角色管理”。
- 证据:`screenshots/issue-001-system-resource-stale.png`
- 修复结果:已通过动态路由去重、参数页面重新加载和页面组件 key 处理;回归证据:`screenshots/issue-001-after-fix.png`。
## 非阻塞问题与覆盖缺口
### ISSUE-002:Vue Router 启动告警(已修复)
- 严重级别:Medium
- 控制台出现:路由名 `admin` 包含无名称的空路径子路由。当前页面仍可使用,但会增加路由解析回归风险。
- 修复结果:空路径子路由已命名为 `admin-index`;新会话回归未再出现该告警。
### COVERAGE-001:业务写入能力尚未完成迁移
- 首页配置的顶部轮播、万趣用车、用车服务已完成 Vue 写入代码迁移;本次仅进行了非破坏性表单和接口契约验证,真实数据写入仍待人工确认。
- 线索列表、类型/状态筛选和详情展示已在有效后台会话下复验;本次未触发真实状态写入。
- 媒体上传、发布和重置只完成入口与确认闸门验收,真实动作仍待人工确认。
- 系统用户、角色、菜单、部门页面尚未形成完整可编辑验收闭环;ISSUE-001 已解除。
## 验收判定
当前判定为“阻塞项已解除,业务覆盖验收进行中”。首页、玩法/详情、站点配置、管家、线索读取/筛选/详情、媒体和发布/重置入口代码已接入;线索状态写入、媒体真实上传、发布和重置仍需人工确认,核心 RBAC 流程完成后才能进入旧 React 删除前的最终人工确认。
Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB