58a8b47532
Co-authored-by: Cursor <cursoragent@cursor.com>
5.4 KiB
5.4 KiB
杜康好客 · v3.5.12 开发文档
2026-08-26 · admin-web / API
主题:发布会订单大屏循环 BGM;HQ 日志 / 订单状态流转 / 用户行为时间线展示中文;修复删除门店分类被默认树回种;HQ 侧栏菜单顺序
1. 版本目标
- 订单大屏内置杜康 BGM,循环播放。
- 右上角提供「播放 BGM / BGM 播放中」开关(浏览器禁止自动出声,需用户点击)。
- 新成交撒花音效响起时,BGM 自动压低,特效结束后恢复。
- HQ 日志、订单详情「状态流转」、用户详情「行为时间线」中的英文码全部改为中文展示。
- 修复 HQ 删除门店分类:接口成功后列表不再自动补种默认树,分类真正消失(有门店占用则停用并明确提示)。
- HQ 左侧导航按业务优先重排:前 11 项固定,系统设置置底。
不做:C 端 / 门店 / 合伙人音频;OSS 签名直链(会过期);成交音效替换;改库内存储码(筛选仍可用事件编码);改权限 key。
2. 规则
2.1 大屏 BGM
- 音频文件随
admin-web打包:apps/admin-web/src/assets/big-screen/dukang-bgm.mp3(约 2MB)。 - BGM 与成交音效分两个
Audio实例,互不打断。 - 离开大屏页立即暂停 BGM。
2.2 英文码展示中文
只改 HQ 展示,不改 API 字段值。对照表在 apps/admin-web/src/lib/display-labels.ts。
| 页面 | 原英文 | 展示 |
|---|---|---|
| 日志(用户/门店/合伙人/HQ/第三方/领域事件/企微机器人) | pay_success、USER_MINI、ORDER、WECHAT_PAY、SUCCESS、order.read 等 |
支付成功、C 端小程序、订单、微信支付、成功、查询订单 |
| 订单详情 · 状态流转 | WECHAT_PAY、PARTNER_PROXY、SYSTEM_AUTO_EXPIRE;备注里的 deliveryMode=LOCAL |
微信支付、合伙人代下单、系统·超时取消;履约方式=同城 |
| 用户详情 · 行为时间线 | 分类 pay、事件 pay_success、端 USER_H5 |
支付、支付成功、C 端 H5 |
未知码仍原文回退,避免丢信息。列表筛选项「事件编码 / 对象编码」仍按存储码查询。
2.3 删除门店分类
根因:GET /admin/store-categories(以及 C 端/合伙人分类列表)默认 ensureDefaults()。删除无门店占用的默认分类(如「火锅」)后刷新列表会按编码把行再 insert 回来,前端却提示「已处理」。
规则:
- 列表接口 不再自动补种;缺省分类只通过 seed 或 HQ「同步默认分类」补齐。
- 无门店占用:硬删除,提示「已删除」。
- 有门店占用:改为停用,提示「该分类已有门店占用,已改为停用」。
- 仍有下级:拒绝删除(「请先删除或停用下级分类」)。
2.4 HQ 侧栏顺序
仅改 apps/admin-web/src/layouts/AdminLayout.tsx 的 MENU_ITEMS 展示顺序与「发票」文案;路由、权限 key 不变。无权限项仍按原规则隐藏。
固定前 11 项:概览 → 用户 → 商品 → 订单 → 开城 → 门店 → 财务 → 好客权益 → 配送单 → 工单 → 发票。
其余:推广码 → 微信绑定 → 企微机器人 → 语言模型 → 知识库 → 开发计划 → OSS 资源库 → 日志 → 权限分配 → HQ账户 → 白名单管理。
最后一项:系统设置。
侧栏「发票」对应原「发票管理」入口(/invoices),页内标题仍为发票管理。
3. 关键路径
| 域 | 路径 |
|---|---|
| 大屏页 | apps/admin-web/src/pages/BigScreenPage.tsx |
| 样式 | apps/admin-web/src/admin.css |
| 音频 | apps/admin-web/src/assets/big-screen/dukang-bgm.mp3 |
| 中文对照 | apps/admin-web/src/lib/display-labels.ts |
| 日志页 | UserLogsPage / StoreLogsPage / PartnerLogsPage / HqLogsPage / ThirdPartyLogsPage / DomainEventsPage / WecomBotLogsPage |
| 订单详情 | OrdersPage.tsx 状态流转表 |
| 用户详情 | UsersPage.tsx 行为时间线 |
| 门店分类删除 | store-category.service.ts · admin-store-categories.controller.ts · StoreCategoriesPage.tsx |
| HQ 侧栏顺序 | apps/admin-web/src/layouts/AdminLayout.tsx |
4. 发版步骤
| 步骤 | 动作 |
|---|---|
| 1 | pnpm --filter @dukang/admin-web build |
| 2 | 发 admin-web 静态资源 + dukang-api(分类删除修复) |
无 Prisma 迁移。
5. 验收清单
- 打开
/orders/big-screen,右上角可见「播放 BGM」 - 点击后循环播放背景音乐,按钮变为「BGM 播放中」;再点暂停
- 新成交撒花时成交音效清晰,BGM 变轻;特效结束后 BGM 恢复
- 离开大屏后背景音乐停止
- 日志列表「事件 / 端 / 关联 / 渠道 / 状态」为中文,详情抽屉字段名不为
param1/eventName - 订单详情「状态流转」操作人为中文,备注中的履约方式为中文
- 用户详情「行为时间线」分类、事件、端为中文
- 删除无门店占用的分类后列表不再出现该行,提示「已删除」(再点「同步默认分类」才会补回默认项)
- 删除有门店占用的分类:行仍在但状态为停用,提示「已有门店占用,已改为停用」
- 有下级的一级分类删除被拒绝,提示先处理下级
- HQ 侧栏前 11 项为:概览、用户、商品、订单、开城、门店、财务、好客权益、配送单、工单、发票
- 系统设置在侧栏最后一项