dy-dashboard/vault/知识库/工作指南/训练记录/2026-06-30-数据概览与待下单管理多项优化.md
2026-10-28 11:14:17 +08:00

92 lines
4.7 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-06-30 数据概览与待下单管理多项优化
## 1. 待下单管理—新增"下单时间"列+下单人改名
**旭东 → OpenClaw:**
> 计划预测和采购订单里面继续完善补充功能
**OpenClaw 响应:**
在待下单管理中新增"下单时间"列(显示 `created_at`),放在"下单人员"列(原"下单人"改名)右侧。同步更新字段设置弹窗、确认下单弹窗标签、下单备份管理标签。
## 2. 数据概览—统计逻辑调整
**旭东 → OpenClaw:**
> 修改一下数据概览下的一些统计逻辑:
> 1. 产品总数SKU改名为SKU总数
> 2. 增加SPU总数卡片
> 3. SKU=成品数,SPU=包材-内料
> 4. 增加库存成本卡片
> 5. 低库存预警只统计成品
**OpenClaw 响应:**
后端 SQL 修改:SKU = COUNT 成品(1466),SPU = COUNT 包材中 name NOT LIKE '%内料%'(4358),库存成本 = SUM(available_qty × cost_price) 最新日期去重后(约3,095万),低库存 = 仅成品 SUM 库存<100。前端新增 SPU 和库存成本卡片,所有卡片按 SKU→SPU→出库总记录→出库总数量→[出库总成本]→库存成本→总供应商→低库存预警 排列。
## 3. 数据概览—删除三个出库卡片+删除卡片副标题
**旭东 → OpenClaw:**
> 删除出库总记录、出库总数量、出库总成本三个卡片
**OpenClaw 响应:**
移除三个出库相关卡片和所有卡片副标题文字,页面仅保留 SKU总数、SPU总数、库存成本、总供应商、低库存预警 5个卡片。
## 4. 修复库存成本与低库存预警数据异常
**旭东 → OpenClaw:**
> 库存成本太大了,数值不对。低库存预警数量1428,SKU总数才1466,等于全部都是低库存,这里数据异常
**OpenClaw 响应:**
两个问题根因相同:
- 库存明细表(inventory_detail)存有从5月27日到6月29日的所有历史快照数据,每次导入追加而非替换
- 原SQL未过滤 `data_date`,对全部日期进行 SUM(重复计算)
- 低库存预警按行判断 `available_qty < 100`,一个产品有多个仓库行时只要有1个仓库<100就算
修复:所有库存明细查询加 `data_date = 最新日期` 过滤,库存成本按产品 GROUP BY 汇总后计算,低库存按 HAVING SUM(available_qty) < 100 判断。正确数据:库存成本约3,095万,低库存成品257个。
## 5. 修复数组括号笔误导致全站JS报错
**旭东 → OpenClaw:**
> Uncaught SyntaxError: Unexpected token ')' + kbSwitchTab/loadPage is not defined
**OpenClaw 响应:**
`renderDashboardCharts` 函数的 `statItems` 数组 `[` 被 `)` 关闭而非 `]`,导致全站 app.js 解析失败。所有函数未定义引发连锁报错。修复后 `node --check` 和浏览器运行正常。
## 6. 数据概览—品牌/店铺排行排除NA脏数据
**旭东 → OpenClaw:**
> 数据概览菜单下,店铺出库排行、品牌出库排行里面还有NA数据,这是脏数据需要清洗掉,之前有设定过这个规则
**OpenClaw 响应:**
品牌和店铺排行SQL增加 WHERE 过滤排除空值和 `'NA'` 脏数据。店铺排除 40,372 条空值 + 6 条 NA,品牌排除 289 条空值 + 6 条 NA。
## 7. 计划预测—供应商名称筛选框支持回车确认
**旭东 → OpenClaw:**
> 计划预测里面供应商名称筛选框加一个回车确认筛选功能
**OpenClaw 响应:**
供应商名称 input 增加 `onkeydown="if(event.key==='Enter')planFilterApply()"`,回车直接触发筛选。
## 8. 修复确认下单500错误—packaging_orders缺列
**旭东 → OpenClaw:**
> 待下单管理界面,我点击确认下单之后,提示❌ 网络错误: Unexpected token '<', "<!doctype"... is not valid JSON
**OpenClaw 响应:**
`confirm_order` 中的包材 INSERT 引用了 `下单备注` 列,但 `packaging_orders` 表没有该列,MySQL 报 1054 错误返回 HTML,前端解析失败。紧急移除引用修复。
## 9. 包材订单管理—新增下单备注列+确认下单同步各包材自身备注
**旭东 → OpenClaw:**
> 需要在包材订单管理新加一列下单备注列,在待下单管理点击确认下单时,同步下单备注过去
> 包材订单管理里面的下单备注同步的是包材的下单备注,不是成品的,同步错了
**OpenClaw 响应:**
ALTER TABLE 给 `packaging_orders` 增加 `下单备注` 列,INSERT 同步补回。但第一次同步使用了成品备注(`row.get('remark')`),修正为使用每个包材在 BOM 数据中自身的 remark(`bm.get('remark')`),确保每个包装物料独立携带自己的备注信息。
## 10. 升级生产环境
**旭东 → OpenClaw:**
> 升级一下新系统
**OpenClaw 响应:**
提供 rsync 同步代码 + SSH 重启服务的升级命令给旭东自行执行。