5.0 KiB
5.0 KiB
模板处理脚本完成说明
已完成的工作
1. 创建了两个主要脚本
process_templates.py - 模板占位符处理脚本
- ✅ 自动扫描
模板/原始模板目录下的所有.doc和.docx文件 - ✅ 根据文件名智能识别文档类型(支持17种文档类型)
- ✅ 自动将
.doc文件转换为.docx格式(需要 Windows + pywin32) - ✅ 根据占位符与字段对照表,智能识别字段名称并添加占位符
- ✅ 处理后的模板保存到
模板文件夹,保持原有目录结构
init_all_templates.py - 模板初始化脚本
- ✅ 扫描
模板目录下的所有.docx文件(排除原始模板目录) - ✅ 自动识别文档类型和模板编码
- ✅ 上传模板文件到 MinIO 服务器
- ✅ 在数据库中创建或更新文件配置记录(使用
template_code字段)
2. 支持的文档类型
脚本支持以下17种文档类型:
- 请示报告卡 (REPORT_CARD)
- 初步核实审批表 (PRELIMINARY_VERIFICATION_APPROVAL)
- 初核方案 (INVESTIGATION_PLAN)
- 谈话通知书 (NOTIFICATION_LETTER)
- 谈话笔录 (INTERVIEW_RECORD)
- 谈话询问对象情况摸底调查30问 (INVESTIGATION_30_QUESTIONS)
- 被谈话人权利义务告知书 (RIGHTS_OBLIGATIONS_NOTICE)
- 点对点交接单 (HANDOVER_FORM)
- 陪送交接单 (ESCORT_HANDOVER_FORM)
- 保密承诺书 (CONFIDENTIALITY_COMMITMENT)
- 办案人员-办案安全保密承诺书 (INVESTIGATOR_CONFIDENTIALITY_COMMITMENT)
- 请示报告卡(初核报告结论) (REPORT_CARD_CONCLUSION)
- 初核情况报告 (INVESTIGATION_REPORT)
- 谈话审批表 (INTERVIEW_APPROVAL_FORM)
- 谈话前安全风险评估表 (PRE_INTERVIEW_RISK_ASSESSMENT)
- 谈话方案 (INTERVIEW_PLAN)
- 谈话后安全风险评估表 (POST_INTERVIEW_RISK_ASSESSMENT)
3. 占位符处理逻辑
脚本会智能识别以下模式并添加占位符:
-
字段名称: 具体值 → 字段名称: {{field_code}}
- 例如:
被核查人姓名: 张三→被核查人姓名: {{target_name}}
- 例如:
-
字段名称: XXX/待填 → 字段名称: {{field_code}}
- 例如:
被核查人姓名: XXX→被核查人姓名: {{target_name}}
- 例如:
-
表格中的字段:同样处理表格单元格中的字段
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 # 字段对照表
注意事项
-
依赖要求:
python-docx- 处理 Word 文档pywin32- 转换 .doc 文件(仅 Windows,可选)pymysql- 数据库操作minio- MinIO 客户端
-
.doc 文件处理:
- 如果未安装
pywin32,需要手动将.doc文件转换为.docx格式 - 或者安装:
pip install pywin32
- 如果未安装
-
占位符检查:
- 处理后的模板需要人工检查
- 确保占位符格式正确:
{{field_code}} - 确保占位符位置合理
-
数据库配置:
- 确保数据库连接配置正确
- 确保
f_polic_file_config表有template_code字段 - 确保有足够的权限
-
MinIO 配置:
- 确保 MinIO 连接配置正确
- 确保存储桶
finyx存在 - 确保有上传权限
后续工作
-
检查生成的模板:
- 打开处理后的模板文件
- 检查占位符是否正确添加
- 手动调整不正确的占位符
-
运行初始化脚本:
- 确认所有模板检查无误后
- 运行
init_all_templates.py - 检查输出信息,确认所有模板已成功上传
-
测试文档生成:
- 使用 API 测试文档生成功能
- 确认模板可以正常使用
- 检查生成的文档是否正确填充
技术支持
如有问题,请检查:
- 脚本输出日志
- 数据库和 MinIO 连接状态
- 文件路径和权限
- 占位符格式是否正确
参考文档:
模板处理说明.md- 详细使用说明占位符与字段对照表.md- 字段对照表