orc-order-v2/.trae/documents/继续改进并显性呈现改动.md
houhuan fb12e63c4c feat(供应商管理): 新增规则引擎与词典配置支持
refactor(处理器): 重构通用供应商处理器以支持规则引擎
docs: 更新README与文档说明供应商管理功能
build: 更新打包脚本注入版本信息
test: 添加规则引擎单元测试
2025-12-12 13:46:00 +08:00

3.2 KiB
Raw Permalink Blame History

概览

  • 目标:让改动更可见并提升识别/处理准确性与可操作性
  • 范围GUI入口与提示、表头识别与手动指定、供应商配置联动、交互一致性

可见入口改造

  • 在“Excel处理→特殊处理”区新增两个明显按钮
    • “列映射向导”:加载 Excel 源列 → 映射到标准列 → 保存至 config/suppliers_config.json
    • “模板管理”:选择模板、校验表头列是否包含必需项 → 保存路径至供应商配置
  • 在“快捷操作”区补充一个“显示处理器类型”入口,便于确认支持的文件类型
  • 在保存成功后增加气泡提示与日志条目log 面板出现“列映射已保存”“模板路径已保存”)

手动表头行支持

  • 在“列映射向导”弹窗增加“表头行号(从1开始)”输入框:
    • 加载列时按照指定行重读 Excel 并展示源列
    • 保存时将 header_row(零基索引)写入 suppliers_config.json
  • 通用供应商处理器读取时优先使用 supplier_config['header_row'];未设置时执行自动表头检测(关键词+非空比例+字符串比例)

自动表头检测增强

  • Excel 单文件处理与通用供应商处理器:
    • 扫描范围扩大到前 30 行
    • 扩充关键词:加入金额类(“金额/小计/总计/合计/合计金额”)
    • 综合评分:关键词命中+非空比例+字符串比例,阈值达到即判为表头;否则选第一个有效行

交互与一致性

  • “单个识别”按钮直接弹出图片选择(只允许 jpg/jpeg/png/bmp),取消即终止
  • “单个处理”按钮弹出 Excel 选择(只允许 xlsx/xls),取消即终止,不再默认处理最新 Excel
  • 处理完成后不再自动打开 result/output 目录,改为通过“最近文件”双击打开
  • 最近文件仅记录图片/Excel自动过滤无效并按修改时间降序展示空历史时从 data/outputdata/result 回填合规文件

供应商配置联动

  • suppliers_config.json
    • column_mapping:保存源列→标准列映射
    • header_row:保存手动指定的表头行(零基)
    • output_template:保存模板路径(相对路径)
  • 处理器加载时校验并日志提示不合法项,保留已通过的配置

验证与可视化

  • 操作日志:保存映射/模板时写入成功日志
  • 处理器信息:通过“显示处理器类型”对话框列出支持的扩展名和描述
  • 手动表头验证:在向导中“加载列”后,源列下拉应出现正确列名;处理后“最近文件”出现输出采购单

预计改动位置

  • GUI按钮与向导弹窗启动器.py(特殊处理区与工具函数)
  • 自动表头检测与手动表头使用:
    • Excel处理app/core/excel/processor.py_find_header_rowprocess_specific_file
    • 通用供应商处理:app/core/processors/supplier_processors/generic_supplier_processor.py_read_supplier_data_find_header_row
  • 供应商配置:config/suppliers_config.json

交付

  • 提交代码改动后,更新打包 EXE便携包包含上述 UI 与功能;提供操作说明与可见验证点。

请确认以上计划,确认后我将按此逐项实现并验证。