- 没绑企微的 admin 下拉显示空白 → 后端兜底回落 username (前端零改动) - CUSTOMIZER 角色 share 接口 403 → V20260511_001 加 PRODUCT_SHARE 绑定
3.9 KiB
3.9 KiB
后端 fix 通知 — 产品分享 2 项 follow-up 修复(企微名兜底 + CUSTOMIZER 加分享权限)
日期: 2026-05-11 类型: 后端修复 (PR #1919 内部 follow-up) 模块: 产品管理 → 产品列表 → 分享产品(ShareModal) 通知: @mmg 前端是否需改动: 否(响应 schema / 字段名零变化,后端兜底) 严重性: P1(用户两次反馈,核心功能不可用)
⚠️ 关键变化
PR #1933(commit 0a817914) 已合 dev + 测试服部署 + QA 双验证通过。修了 PR #1919 上线后用户实测发现的 2 个 P1 问题:
-
customizers接口 enterpriseWechatName 后端兜底回落 username- 修前:未绑企微的 admin →
enterpriseWechatName: null→ 前端下拉显示空白行 - 修后:未绑企微 / 脏数据 →
enterpriseWechatName: <username>→ 下拉显示登录名兜底 - 已绑企微的 admin 行为不变,仍返中文真名
- 修前:未绑企微的 admin →
-
CUSTOMIZER 角色加 PRODUCT_SHARE 权限
- 修前:CUSTOMIZER 角色 admin 调
POST /admin/product/item/{id}/share→code:403 无产品分享权限 (PRODUCT_SHARE) - 修后:Flyway
V20260511_001给 CUSTOMIZER 角色加 PRODUCT_SHARE 权限,定制师之间互相分享产品的业务场景可用 - 老板自己也是定制师身份,所以这是核心需求
- 修前:CUSTOMIZER 角色 admin 调
前端 mmg 完全无需改动
ShareModal.vue 当前直接用 o.enterpriseWechatName 作为 label,后端字段语义已经从"企微真名(可空)"变成"展示名(企微名/未绑回落 username)",前端零改动即可正常显示。
如果你之前考虑过前端加 fallback chain(o.enterpriseWechatName || o.username),现在不需要了,后端兜底已经覆盖。
✅ 测试服验证(2026-05-11 10:24 部署)
enterpriseWechatName 字段实测(20 条 customizer 抽 5 条)
| adminId | username | 绑企微 | 接口返 enterpriseWechatName | ✅ |
|---|---|---|---|---|
| 1001 | admin | 无 | "admin" |
✅ 兜底 username |
| 1002 | test_admin | 脏数据 | "test_admin" |
✅ 兜底 username |
| 2021059720172838914 | wx | 已绑 | "王骁" |
✅ 中文真名 |
| 2027579942221352962 | mmg | 已绑 | "米明光" |
✅ 中文真名 |
| 2033349910786715649 | lixiaosong | 已绑 | "小松" |
✅ 中文真名 |
全列表 20 条 customizer,enterpriseWechatName 字段 0 个 null。
CUSTOMIZER 调 share 接口实测
用 lixiaosong 单 CUSTOMIZER 角色 token 调:
POST /admin/product/item/2044704111294672897/share body {"targetAdminId":1002}
→ {"code":200,"data":{"newProductId":"2053662735618506754","newProductNo":"C260511001","newProductName":"嗨冰雪3.0南线(6天5晚)(来自lixiaosong的分享)"}}
Flyway 落库
flyway_schema_history:version=20260511.001 success=1,CUSTOMIZER 角色已绑 PRODUCT_SHARE 权限。
不影响范围
- 接口路径 / Method / Request / Response schema 零变化
- 其他持 PRODUCT_SHARE 权限的角色(SUPER_ADMIN / ADMIN)行为不变
- 没绑企微的 admin 的其他字段(
username/avatar)也不变,前端可继续按需用
相关 PR
| PR | 说明 | 状态 |
|---|---|---|
| #1919 | 实现 admin 分享产品功能(Closes #1918) | ✅ 已合 |
| #1924 | 修复 PR #1919 暴露的 2 个回归(中文括号 + fee_item 全量) | ✅ 已合 + 部署 |
| #1930 | customizers 接口加 enterpriseWechatName 企微姓名字段 | ✅ 已合 + 部署 |
| #1933 | 本通知:enterpriseWechatName 兜底 username + CUSTOMIZER 加 PRODUCT_SHARE 权限 | ✅ 已合 + 部署 + QA 通过 |
历史 changelog 关系
09_feat_admin_customizers-add-enterprise-wechat-name.md:首次提到 fallback 建议 — 本通知更新:后端已兜底,前端无需 fallback09_frontend_notice_admin_share-modal-show-enterprise-wechat-name-P0.md(P0 紧急,建议label = o.enterpriseWechatName)— 仍然有效:label 字段名是对的,后端已兜底没值时回落 username
联系人: wx