dy-dashboard/vault/知识库/工作指南/训练记录/2026-09-17-计划预测下单信息弹窗海外品牌显示内料并同步包材订单.md
2026-10-28 11:14:17 +08:00

22 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2026-09-17-计划预测下单信息弹窗海外品牌显示内料并同步包材订单 <!-- project: path:/home/gxd/.openclaw/workspace/dy-dashboard -->
### 1. 计划预测下单信息弹窗:海外品牌商品显示内料并在下单后同步到包材订单管理
**旭东 → OpenClaw:**
> 再修改一个逻辑,在计划预测菜单里面的下单信息弹窗中
> 1、如果商品的品牌为海外品牌,则下单信息里面包材下单信息列表中需要有内料显示,并且当我点击下单之后,内料信息也需要同步到包材订单管理中
> 2、如果商品的品牌不为海外品牌,则保持之前的逻辑不变
**OpenClaw 响应:**
已实现,判断口径统一走「品牌管理的品牌分类=海外」:
1. **显示**:计划预测 → 下单信息弹窗的「包材下单信息」列表,海外品牌商品会把**内料**(名称含「内料」或编码含 `-NL`)一并列出;「确认加入待下单列表」弹窗的包材下单数据同样包含内料,内料行可正常填写实际下单数量、包材备注、更换稿件等。
2. **下单同步**:点击下单确认后,内料会像普通包材一样写入**包材订单管理**(生成包材订单行,带单价、数量、合计、供应商、仓库到货、下单备注、更换稿件、采购下单人/采购计划、来源产品编码),并参与包材结余(下单前/下单后包材)滚动。
3. **非海外品牌**:完全保持原逻辑——接口不返回内料、内料不参与包材下单,行为与改动前一致。
**实现方式**:`detail_with_bom` 新增 `include_inner=auto`,由后端按品牌分类判定是否返回内料(下单信息弹窗与确认弹窗都用它,前端不再本地判断,避免品牌清单未加载时的误判);`confirm_order` 里内料过滤改为「非海外品牌才跳过」。
**验证**:接口实测——MUTO(海外)、PUNOMO(海外)用 auto 各多返回 1 行内料且默认调用仍不含内料;洁维塔博士(国内)、泊紫汀兰(国内)auto 与默认完全一致(无内料)。确认下单侧代码结构校验通过(`is_overseas` 在同一循环内先于内料判定赋值,守卫语句为「内料且非海外才 continue」)。Python/JavaScript 语法检查、app.js 的 gzip 缓存重生成通过,测试环境服务平滑重载无错误日志。
**✅ 提交情况(已按旭东确认处理)**:本次改动分布在两个后端文件——`routes/products.py` 与 `static/js/app.js` 先提交为 Git 提交 `c72bdcf`;`routes/purchase.py` 本身带有历史未提交改动(包材订单单价自动带入、供应商全称解析、仓库到货、计划下单时间列与排序,以及修复已提交版本中的语法错误),当时按「不夹带无关改动」规则未并入,并在回复中说明。同日 16:52 旭东确认「一起提交」,已将该文件(内料同步 + 上述历史改动)提交为 `59656d7`。工作区其余未提交文件(lint_knowledge.py、reimport.py、static/js/feedback.js)与本次功能无关,保持未提交。未操作生产环境及云端。