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

1.5 KiB
Raw Permalink Blame History

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,并清理了临时脚本。