34 lines
3.2 KiB
Markdown
34 lines
3.2 KiB
Markdown
# 2026-09-19 计划预测下单信息弹窗内料显示规则增加国家名判断
|
||
|
||
### 1. 海外品牌的商品,货品名称还要含新西兰/新加坡/韩国才显示内料
|
||
|
||
**旭东 → OpenClaw:**
|
||
|
||
> 现在需要增加一个内料显示规则,当品牌为海外的时候,还要继续判断,货品名称里面是否包含新西兰、新加坡、韩国这三个国家名的任意一个,如果有包含,下单信息列表里面再显示出内料,否则正常不显示内料
|
||
|
||
**OpenClaw 响应:**
|
||
|
||
已在 192.168.8.186 测试环境实现并验证,未动云端与 11.79 生产。
|
||
|
||
- 规则:计划预测「下单信息」弹窗调 `/api/product/detail_with_bom?include_inner=auto` 时,先判品牌分类,海外品牌**再判货品名称是否含「新西兰」「新加坡」「韩国」**,命中才返回内料;其余海外品与国内品一致,按名称含「内料」或编码含「-NL」过滤掉内料。
|
||
- 改动:后端 `routes/products.py` 的 `include_inner=auto` 分支新增名称判断(`INNER_MATERIAL_NAME_KEYS`);前端 `static/js/app.js` 只更新两处注释说明,行为不变。
|
||
- 影响面(测试环境实测):海外品牌且 BOM 含内料的商品 435 个,按新规则只剩 16 个(名称里带「(新西兰)/(新加坡)/(韩国)」)会显示内料。
|
||
- 验证:接口实测 AH-JHY-20068-TMGJ(Aromat Herbs,名称含新西兰)返回 4 行含内料;MUTO-JMR-1203-WPH、AH-XFS-0409(海外,名称不含国家名)不返回内料;POZ-XFS-0276-TM(国内品牌)不返回内料。JS/Python 语法检查、gzip 缓存重生成、服务重启后 active、本机与局域网 HTTP 200 均通过。
|
||
- Git 提交 `ee3dfd2`。
|
||
- 遗留待确认:确认下单时内料是否写入包材订单,后端 `routes/purchase.py` 仍按「非海外即跳过内料」判断,未同步这条名称规则;如需要同步,等旭东确认后再改。
|
||
|
||
### 2. 确认下单时内料写入包材订单同步这条规则
|
||
|
||
**旭东 → OpenClaw:**
|
||
|
||
> 确认下单时是否要将内料写进包材订单,也一样需要把这条规则写进去,只有品牌是海外品牌,并且名称包含国家名称的,在确认下单时,才会把包材订单同步到包材订单管理里面去
|
||
|
||
**OpenClaw 响应:**
|
||
|
||
已在 192.168.8.186 测试环境实现并验证,未动云端与 11.79 生产。
|
||
|
||
- 规则:确认下单时,内料只有「品牌分类=海外」且「货品名称含新西兰/新加坡/韩国」才随包材订单写入包材订单管理;其余情况内料跳过。订单流向仍按品牌分类决定(不受名称规则影响)。
|
||
- 改动:后端 `routes/purchase.py` 新增 `allow_inner_material` 判断(复用 `routes.products.INNER_MATERIAL_NAME_KEYS`),内料过滤条件从「非海外即跳过」改为「不满足新规则即跳过」。
|
||
- 验证(走真实确认下单接口,三种用例):海外品牌+名称含「韩国」→包材与内料都写入;海外品牌+名称不含国家名→包材写入、内料不写入;国内品牌+名称含「韩国」→包材写入、内料不写入。三项全部通过,临时数据已清理。服务重启后 active、本机与局域网 HTTP 200。
|
||
- Git 提交 `559bd9b`。
|