ai-business-write/技术文档/模板处理完成说明.md

5.0 KiB
Raw Blame History

模板处理脚本完成说明

已完成的工作

1. 创建了两个主要脚本

process_templates.py - 模板占位符处理脚本

  • 自动扫描 模板/原始模板 目录下的所有 .doc.docx 文件
  • 根据文件名智能识别文档类型支持17种文档类型
  • 自动将 .doc 文件转换为 .docx 格式(需要 Windows + pywin32
  • 根据占位符与字段对照表,智能识别字段名称并添加占位符
  • 处理后的模板保存到 模板 文件夹,保持原有目录结构

init_all_templates.py - 模板初始化脚本

  • 扫描 模板 目录下的所有 .docx 文件(排除原始模板目录)
  • 自动识别文档类型和模板编码
  • 上传模板文件到 MinIO 服务器
  • 在数据库中创建或更新文件配置记录(使用 template_code 字段)

2. 支持的文档类型

脚本支持以下17种文档类型

  1. 请示报告卡 (REPORT_CARD)
  2. 初步核实审批表 (PRELIMINARY_VERIFICATION_APPROVAL)
  3. 初核方案 (INVESTIGATION_PLAN)
  4. 谈话通知书 (NOTIFICATION_LETTER)
  5. 谈话笔录 (INTERVIEW_RECORD)
  6. 谈话询问对象情况摸底调查30问 (INVESTIGATION_30_QUESTIONS)
  7. 被谈话人权利义务告知书 (RIGHTS_OBLIGATIONS_NOTICE)
  8. 点对点交接单 (HANDOVER_FORM)
  9. 陪送交接单 (ESCORT_HANDOVER_FORM)
  10. 保密承诺书 (CONFIDENTIALITY_COMMITMENT)
  11. 办案人员-办案安全保密承诺书 (INVESTIGATOR_CONFIDENTIALITY_COMMITMENT)
  12. 请示报告卡(初核报告结论) (REPORT_CARD_CONCLUSION)
  13. 初核情况报告 (INVESTIGATION_REPORT)
  14. 谈话审批表 (INTERVIEW_APPROVAL_FORM)
  15. 谈话前安全风险评估表 (PRE_INTERVIEW_RISK_ASSESSMENT)
  16. 谈话方案 (INTERVIEW_PLAN)
  17. 谈话后安全风险评估表 (POST_INTERVIEW_RISK_ASSESSMENT)

3. 占位符处理逻辑

脚本会智能识别以下模式并添加占位符:

  1. 字段名称: 具体值字段名称: {{field_code}}

    • 例如:被核查人姓名: 张三被核查人姓名: {{target_name}}
  2. 字段名称: XXX/待填字段名称: {{field_code}}

    • 例如:被核查人姓名: XXX被核查人姓名: {{target_name}}
  3. 表格中的字段:同样处理表格单元格中的字段

4. 使用步骤

第一步:处理原始模板

python process_templates.py

输出:

  • 处理后的模板保存在 模板 文件夹下
  • 保持原有的目录结构
  • 所有文件统一为 .docx 格式

注意:

  • 处理后的模板需要人工检查,确认占位符位置是否正确
  • 如有需要,可以手动调整占位符位置

第二步:初始化模板到系统

python init_all_templates.py

功能:

  • 上传所有模板到 MinIO
  • 在数据库中创建或更新文件配置记录
  • 使用 template_code 字段存储模板编码

输出:

  • 显示处理进度和结果
  • 统计成功、跳过、失败的文件数量

文件结构

项目根目录/
├── process_templates.py          # 模板处理脚本
├── init_all_templates.py          # 初始化脚本
├── 模板处理说明.md                # 详细使用说明
├── 模板/
│   ├── 初步核实审批表模板.docx    # 已处理的模板(示例)
│   └── 原始模板/                  # 原始模板(不处理)
│       └── 2-初核模版/
│           └── ...
└── 占位符与字段对照表.md           # 字段对照表

注意事项

  1. 依赖要求:

    • python-docx - 处理 Word 文档
    • pywin32 - 转换 .doc 文件(仅 Windows可选
    • pymysql - 数据库操作
    • minio - MinIO 客户端
  2. .doc 文件处理:

    • 如果未安装 pywin32,需要手动将 .doc 文件转换为 .docx 格式
    • 或者安装:pip install pywin32
  3. 占位符检查:

    • 处理后的模板需要人工检查
    • 确保占位符格式正确:{{field_code}}
    • 确保占位符位置合理
  4. 数据库配置:

    • 确保数据库连接配置正确
    • 确保 f_polic_file_config 表有 template_code 字段
    • 确保有足够的权限
  5. MinIO 配置:

    • 确保 MinIO 连接配置正确
    • 确保存储桶 finyx 存在
    • 确保有上传权限

后续工作

  1. 检查生成的模板:

    • 打开处理后的模板文件
    • 检查占位符是否正确添加
    • 手动调整不正确的占位符
  2. 运行初始化脚本:

    • 确认所有模板检查无误后
    • 运行 init_all_templates.py
    • 检查输出信息,确认所有模板已成功上传
  3. 测试文档生成:

    • 使用 API 测试文档生成功能
    • 确认模板可以正常使用
    • 检查生成的文档是否正确填充

技术支持

如有问题,请检查:

  1. 脚本输出日志
  2. 数据库和 MinIO 连接状态
  3. 文件路径和权限
  4. 占位符格式是否正确

参考文档:

  • 模板处理说明.md - 详细使用说明
  • 占位符与字段对照表.md - 字段对照表