dy-dashboard/vault/知识库/工作指南/训练记录/2026-07-10-合同模板表头检测与列宽修复.md
2026-10-28 11:14:17 +08:00

18 lines
1.5 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-07-10-合同模板表头检测与列宽自适应修复
### 1. 合同模板表头被替换 + A列列宽未自适应
**旭东 → OpenClaw:**
> [文件: 采购合同_广州德盛药业有限公司_20260710_185006_fc01(1).xlsx]
> 这是我刚刚测试下载的合同,里面A列的列宽还是没有自适应内容宽度,并且表头全部被替换了,查一下原因
**OpenClaw 响应:**
检查了合同生成代码和模板文件,发现两个问题:1)旧版 `_find_header_and_data_rows` 函数将所有单元格内容拼成一个大字符串后再查关键词,导致第5行章节标题"一、编码、产品名称、包装规格、数量、金额及时间:"被误判为表头行(命中7个关键词),产品数据写入第6行覆盖了真正的表头。2)列宽计算只扫描表格区域(header_row ~ total_row),漏掉了上方合同编号行和章节标题行,导致A列未自适应。已修复:a) 表头检测改为逐单元格独立查关键词,并自动跳过"一、"等章节标题行;b) 列宽扫描改为从第1行开始。同时 gunicorn 未加载最新代码(pyc 缓存早于源码),执行了 restart 使修复生效。
### 2. 备份与提交
**旭东 → OpenClaw:**
> 对现在的内容进行备份和git commit一下
**OpenClaw 响应:**
将当前所有修改(contract.py 合同模板系统重构+表头检测修复+列宽自适应、purchase.py 订单模糊搜索+by_ids接口、app.js 前端合同生成弹窗、标准采购模板替换)提交到 git,commit: aafa6e9,并清理了临时脚本。