dy-dashboard/vault/知识库/工作指南/训练记录/2026-06-26-2026-06-26 每日训练笔记.md
2026-10-28 11:14:17 +08:00

179 lines
7.8 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-26 每日训练笔记
> 来源:旭东与 OpenClaw 每日训练,2026-06-26
> 类型:训练记录
# 2026-06-26 每日训练笔记
> 来源:旭东与 OpenClaw 每日训练,2026-06-26
> 类型:训练记录
## 今日对话记录
### 1. 早上问候
**旭东 → OpenClaw:**
> 早上好
**OpenClaw 响应:**
问候旭东,周五到了,询问这周情况和是否需要帮忙。
---
### 2. 配置迁移咨询:如何给新电脑小龙虾发提示词配置
**旭东 → OpenClaw:**
> 昨天我不是有问你怎么复制到新电脑上吗,我现在只知道新电脑的ip,以及装好了小龙虾,我不会配置迁移,我应该怎么给新电脑小龙虾发提示词配置
**OpenClaw 响应:**
建议通过 SSH 在旧电脑上操作,用 rsync/scp 将 workspace 文件、plugin-skills/ 和 config.yaml 传输到新电脑对应路径,然后在新电脑上执行 openclaw restart。提供 U 盘拷贝替代方案。
---
### 3. 文件已传输,请求通过提示词继续后续步骤
**旭东 → OpenClaw:**
> 文件我已经传过去了,其他的步骤我看不懂,我想通过给新电脑龙虾发提示词的方式来继续后续步骤,该怎么处理
**OpenClaw 响应:**
推荐 SSH 进新电脑后直接在新电脑上跑 openclaw 命令:先 openclaw restart 再 openclaw session dingtalk-assistant。或通过浏览器访问新电脑 WebChat。
---
### 4. 看不懂步骤,请求简化指导
**旭东 → OpenClaw:**
> 我还是看不懂,新电脑现在做了这些准备工作,文件已经传输成功,小龙虾已部署,剩下的都没做,我现在该怎么继续往下处理
**OpenClaw 响应:**
改为零基础保姆级步骤:打开终端 → SSH 连接新电脑 → 运行 openclaw restart → openclaw status 查看端口 → 浏览器访问 http://新电脑IP:端口号。
---
### 5. 架构澄清:蝶雅智能体平台整体迁移
**旭东 → OpenClaw:**
> 我是要把整个蝶雅智能体平台迁移到新电脑上,作为生产环境使用,我在旧电脑上的所有操作测试不影响新电脑,所有升级以升级包的方式给到新电脑升级,两种环境互动隔离不冲突,想实现的是这个
**OpenClaw 响应:**
理解需求后重新梳理完整架构和迁移方案,双环境隔离(旧=开发/测试,新=生产),给出 4 步部署方案:安装 MySQL + 数据库导出导入 → 部署数据平台 → 验证访问 → 配置 WebChat。升级方式:升级包 tar.gz 模式。
---
### 6. 生产环境安装 dws CLI 与钉钉授权迁移
**旭东 → OpenClaw:**
> 新电脑生产环境需要定时从钉钉云盘下载数据,给它装上 dws 并把旧电脑的授权迁移过去
**OpenClaw 响应:**
1. 在新电脑 npm install -g dingtalk-workspace-cli 安装 dws CLI
2. 旧电脑导出授权包(dws auth export)→ scp 传输 → 新电脑导入(dws auth import)
3. 验证授权状态为 authenticated: true
---
### 7. 配置生产环境 systemd 服务(开机自启)
**旭东 → OpenClaw:**
> 新电脑重启后数据平台(18888端口)不会自动启动,给新电脑配一下 systemd 服务,让它开机自启
**OpenClaw 响应:**
在 ~/.config/systemd/user/ 下创建 dy-dashboard.service,配置 Gunicorn 执行路径为 venv/bin/gunicorn,设置 Restart=always、After=mysql.service + Wants=mysql.service,执行 systemctl --user enable 和 restart 验证 running 状态。
---
### 8. 修复计划预测下单 bom_json 未初始化 Bug
**旭东 → OpenClaw:**
> 计划预测页点下单提示网络错误,帮我看一下
**OpenClaw 响应:**
定位到 routes/purchase.py 中 purchase_add_pending 函数,当请求未携带 bom_items 参数时 bom_json 变量未初始化导致 UnboundLocalError。在 req_bom_items = data.get('bom_items', '') 后添加 bom_json = None 修复。
---
### 9. 修复 auto_update.py 钉盘下载功能
**旭东 → OpenClaw:**
> auto_update.py 在新电脑上跑完 tmp_csv/ 目录是空的,没有数据写入数据库
**OpenClaw 响应:**
发现 download_from_dingtalk() 只有扫描钉盘文件(dws drive list)的逻辑,没有实际下载文件(dws drive download)的实现。重写该函数,添加内嵌 _download_files() 辅助函数:扫描 → 检查本地 → 无则下载。
---
### 10. 修复 auto_update.py 使用虚拟环境 Python
**旭东 → OpenClaw:**
> auto_update.py 跑 reimport 时报 ModuleNotFoundError: No module named 'pymysql'
**OpenClaw 响应:**
auto_update.py 通过 os.system() 调用子脚本时使用系统 python3,新电脑 Ubuntu 24.04 限制系统级 pip 安装。在入口检测 venv/bin/python3 是否存在,存在则赋值给 PYTHON 变量,os.system() 中改用 {PYTHON}。同时修正新电脑 crontab。
---
### 11. 计划预测新增下单人列
**旭东 → OpenClaw:**
> 待下单管理需要知道每个待下单成品是谁点的下单,加一列下单人
**OpenClaw 响应:**
后端 pending_orders 表新增 created_by 字段,purchase_add_pending 记录 session.real_name,purchase_pending_list 返回 created_by。前端表头新增"下单人"列,使用 renderNameBadges 彩色标签显示。同步 SQL:ALTER TABLE pending_orders ADD COLUMN created_by VARCHAR(100)。
---
### 12. 计划预测新增重置筛选按钮
**旭东 → OpenClaw:**
> 计划预测页面筛选条件太多,加个一键重置按钮恢复默认全量显示
**OpenClaw 响应:**
计划预测表头操作栏(冻结列左侧)新增"🔄 重置"按钮,点击调用 planFilterResetAll(),清空所有列筛选、搜索框、供应商/采购跟单/采购计划筛选、排序状态,刷新数据回到第一页。
---
### 13. 优化下单确认弹窗展示与 BOM 数据管理
**旭东 → OpenClaw:**
> 计划预测下单流程和 BOM 管理有几个体验问题要优化
**OpenClaw 响应:**
四个优化点:
- BOM弹窗数据持久化:保存所有字段而非仅下单数量
- 下单确认弹窗显示包材明细(成品信息表 + 包材明细表)
- 待下单详情增加"保存包材数据"按钮
- 后端 update_fields 新增 bom_items,避免重复添加误判
---
### 14. BOM供应商精准匹配与成本价新增
**旭东 → OpenClaw:**
> BOM管理存在两个问题:供应商匹配不准确、缺少成本价
**OpenClaw 响应:**
三个优化:
- 去除 BOM 供应商备选匹配逻辑(删除 m2 备选 JOIN),只做精准匹配
- 成品BOM绑定弹窗新增"成本价"列,后端 create_with_materials 支持 cost_price
- BOM编辑时保存已有物料供应商(supplier_name_match、supplier_code 等)
---
## 关键决策汇总
| 决策 | 内容 | 影响 |
|------|------|------|
| 环境架构 | 旧电脑=开发/测试,新电脑=生产 | 双环境隔离,互不干扰 |
| 升级策略 | 升级包方式(tar.gz → scp → 解压覆盖) | 旧电脑自由测试,新电脑稳定运行 |
| 数据库迁移 | mysqldump 导出 → scp 传输 → mysql 导入 | 保证生产数据一致性 |
| 生产部署 | deploy.sh 脚本 + systemd 服务 | 开机自启 + 崩溃自动恢复 |
| 自动更新 | 修复钉盘下载逻辑 + 虚拟环境 Python | 新电脑定时数据同步正常运行 |
| BOM匹配策略 | 改为精准匹配,去除父级备选 | 用户主动维护供应商,避免误判 |
| BOM成本管理 | 新增成本价列,支持编辑供应商 | 成品总成本自动汇总 |
## 待办
- [ ] 新电脑安装 MySQL 并创建数据库用户
- [ ] 旧电脑 mysqldump 导出数据库并 scp 到新电脑
- [ ] 新电脑导入数据库
- [ ] 新电脑部署数据平台网页(deploy.sh)
- [ ] 验证 http://新电脑IP:18888 可访问
- [ ] 配置新电脑 OpenClaw WebChat
- [ ] 建立正式升级包流程(旧电脑打包 → 新电脑解压覆盖)
- [ ] 执行 SQL:ALTER TABLE pending_orders ADD COLUMN created_by
---
*由 OpenClaw 每日训练任务自动生成,2026-06-26*
---
*由 OpenClaw 每日训练任务自动生成*