Files
dukang/docs/杜康好客-v3.5.12-开发文档.md
T

5.4 KiB

杜康好客 · v3.5.12 开发文档

2026-08-26 · admin-web / API
主题:发布会订单大屏循环 BGM;HQ 日志 / 订单状态流转 / 用户行为时间线展示中文;修复删除门店分类被默认树回种;HQ 侧栏菜单顺序


1. 版本目标

  1. 订单大屏内置杜康 BGM,循环播放。
  2. 右上角提供「播放 BGM / BGM 播放中」开关(浏览器禁止自动出声,需用户点击)。
  3. 新成交撒花音效响起时,BGM 自动压低,特效结束后恢复。
  4. HQ 日志、订单详情「状态流转」、用户详情「行为时间线」中的英文码全部改为中文展示。
  5. 修复 HQ 删除门店分类:接口成功后列表不再自动补种默认树,分类真正消失(有门店占用则停用并明确提示)。
  6. 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_successUSER_MINIORDERWECHAT_PAYSUCCESSorder.read 支付成功、C 端小程序、订单、微信支付、成功、查询订单
订单详情 · 状态流转 WECHAT_PAYPARTNER_PROXYSYSTEM_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.tsxMENU_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 项为:概览、用户、商品、订单、开城、门店、财务、好客权益、配送单、工单、发票
  • 系统设置在侧栏最后一项