feat(admin): expandable family members with per-link tag config + SKU pricing dims columns
This commit is contained in:
@@ -130,28 +130,31 @@ pnpm --filter @inkreach/api backfill:product-families
|
||||
|
||||
- 商品配置页布局不变(左树=官网商品、右树=原产品库分类平铺);配置弹窗保持原「合并同名」
|
||||
勾选流程,提交时**静默**把勾选链接与主链接归入同一族(无族自动成族);
|
||||
- 编辑弹窗的原「关联原产品(主源 + 副源)」区块改为「**关联原产品(族成员)**」:
|
||||
显示族编码与链接数、成员列表(`设为主链接` / `移除出族`)、搜索添加成员——
|
||||
操作直接作用于族(并集与价格矩阵随重算更新);
|
||||
- 编辑弹窗的「**关联原产品**」区块:显示族编码与链接数,主/族成员行可**逐个展开**——
|
||||
查看成员详情(SDS ID / 链接价格 / SKU 数 / 物流备注 / 工艺位置 / 仓库 / 原始名称)、
|
||||
**配置该链接的标签**(保存后人工接管;「恢复自动」回到按名称派生);成员行仍支持
|
||||
`设为主链接` / `移除出族`,底部搜索添加成员——操作直接作用于族(并集与价格矩阵随重算更新);
|
||||
- 编辑弹窗 SKU 表新增 **物流 / 工艺 / 印花数量** 三列:价格由
|
||||
`物流 × 工艺 × 印花数量 × 尺码 × 颜色` 决定(族内同组合取最低价,人工改价走族价格覆盖);
|
||||
- 人工改价/自动成族等族管理 API(`/product-families/*`)保留,供脚本或后续界面使用。
|
||||
|
||||
**族派生标签(按链接名称自动解析,2026-08 规则改版)**:
|
||||
**链接级标签(自动派生 + 人工修正,2026-08 规则改版)**:
|
||||
|
||||
- 标签与**产品链接一一对应**(每条链接因印花数量/工艺/物流不同而价格不同),因此不再按
|
||||
族并集派生,而是按每条链接自身名称解析后写入该链接对应的商品;
|
||||
- 标签与**产品链接一一对应**(每条链接因印花数量/工艺/物流不同而价格不同),
|
||||
落库在链接级 `origin_good_tags` 表(`manual` 标记人工/派生);商品的自动组标签是其
|
||||
**主链接标签的镜像**;
|
||||
- 解析规则(`apps/api/src/product-families/auto-tag-rules.ts`,与 admin 端
|
||||
`utils/origin-name.ts#deriveLinkTagNames` 同构):
|
||||
- **印花数量**:名称含「双面印花」→ `双面印花`;否则含「单面印花」→ `单面印花`(新组「印花数量」);
|
||||
- **印花数量**:名称含「双面印花」→ `双面印花`;否则含「单面印花」→ `单面印花`(组「印花数量」);
|
||||
- **工艺**:名称含「直喷」「不打印」「光板」→ 对应标签(可多个,组「印刷工艺」);
|
||||
都不含 → 默认 `烫画`;
|
||||
- **物流**:含「不包邮」→ `不包邮`;否则含「包邮」→ `包邮`(组「物流渠道」,先判不包邮防子串误命中);
|
||||
- 组名匹配「物流/工艺/位置/印花数量」的组视为**自动组**:每次族重算/成员变更/商品创建更新时
|
||||
同步;缺失的组与标签自动补建;旧的自动组标签(如「印刷位置」的单面印/双面印)会被剔除;
|
||||
- 后台商品表单**不再提供标签手输框**:编辑弹窗展示只读的自动标签胶囊,配置弹窗提示
|
||||
「保存后由系统按链接名称自动解析」;后端同样剔除手动传入的自动组标签;
|
||||
- **人工调节接口保留**:`设为主链接` / `移除出族` / 搜索添加成员(`updateMembers`)、
|
||||
价格改价(`/product-families/*/overrides`)——自动组织不对时可手动调整;
|
||||
- 其他分组(如风格类)不受影响,保持人工管理;
|
||||
- 每次族重算/成员变更/商品创建更新时:未接管的 SDS 链接按名称刷新派生行;
|
||||
**人工接管的链接(`tagsManual=true`)永不被覆盖**;商品镜像其链接的有效标签;
|
||||
缺失的组与标签自动补建;
|
||||
- **人工修正入口**:编辑弹窗成员行展开 → 修改标签 → 保存标签(全量替换为人工行,
|
||||
`PUT /origin-goods/:id/tags`);「恢复自动」清掉人工行回到派生(`DELETE /origin-goods/:id/tags`);
|
||||
- 其他分组(如风格类)不受影响,保持人工管理;自定义链接(无名称可解析)同样支持人工配置;
|
||||
- 实测:`美国(包邮)…-DG001-单面印花` → `包邮 / 烫画 / 单面印花`;
|
||||
`美国(不包邮光板)…-JSA002-不打印` → `不包邮 / 不打印 / 光板`;
|
||||
`美国(不包邮)…-DG501-双面印花` → `不包邮 / 烫画 / 双面印花`。
|
||||
|
||||
Reference in New Issue
Block a user