211 lines
4.8 KiB
Markdown
211 lines
4.8 KiB
Markdown
# 模板检查和注册使用说明
|
||
|
||
## 一、检查模板文件占位符
|
||
|
||
### 1.1 运行检查脚本
|
||
|
||
```bash
|
||
python check_template_placeholders.py
|
||
```
|
||
|
||
### 1.2 功能说明
|
||
|
||
- 扫描 `template_finish` 文件夹下的所有 `.docx` 模板文件
|
||
- 提取每个文件中的占位符(格式:`{{field_code}}`)
|
||
- 统计占位符信息
|
||
- 生成检查报告
|
||
|
||
### 1.3 输出内容
|
||
|
||
- 总文件数
|
||
- 包含占位符的文件数量
|
||
- 未找到占位符的文件数量
|
||
- 所有唯一的占位符列表
|
||
- 每个文件的详细占位符信息
|
||
|
||
---
|
||
|
||
## 二、批量注册模板到数据库并上传到MinIO
|
||
|
||
### 2.1 运行注册脚本
|
||
|
||
```bash
|
||
python register_templates_to_db.py
|
||
```
|
||
|
||
### 2.2 功能说明
|
||
|
||
- 扫描 `template_finish` 文件夹下的所有 `.docx` 模板文件
|
||
- 提取每个文件的占位符
|
||
- 生成模板编码(template_code)
|
||
- 上传文件到MinIO
|
||
- 注册模板信息到数据库
|
||
|
||
### 2.3 模板编码规则
|
||
|
||
脚本会根据文件名自动生成模板编码,例如:
|
||
|
||
| 文件名 | 模板编码 |
|
||
|--------|----------|
|
||
| 初步核实审批表(XXX).docx | PRELIMINARY_VERIFICATION_APPROVAL |
|
||
| 请示报告卡(XXX).docx | REQUEST_REPORT_CARD |
|
||
| 谈话通知书第一联.docx | INTERVIEW_NOTICE_FIRST |
|
||
| 谈话笔录.docx | INTERVIEW_RECORD |
|
||
|
||
### 2.4 数据库记录
|
||
|
||
每个模板会在 `f_polic_file_config` 表中创建一条记录,包含:
|
||
- `name`: 模板名称(文件名去掉扩展名)
|
||
- `input_data`: JSON格式,包含 `template_code`、`business_type` 和 `placeholders`
|
||
- `file_path`: MinIO中的相对路径
|
||
|
||
---
|
||
|
||
## 三、测试API接口
|
||
|
||
### 3.1 启动服务
|
||
|
||
```bash
|
||
python app.py
|
||
```
|
||
|
||
服务默认运行在 `http://localhost:7500`
|
||
|
||
### 3.2 运行接口测试脚本
|
||
|
||
```bash
|
||
python test_api_endpoints.py
|
||
```
|
||
|
||
### 3.3 测试内容
|
||
|
||
测试脚本会依次测试以下接口:
|
||
|
||
1. **字段配置接口** (`/api/fields`)
|
||
- 测试获取字段配置
|
||
|
||
2. **AI解析接口** (`/ai/extract`)
|
||
- 测试从输入文本中提取结构化字段
|
||
|
||
3. **文档生成接口** (`/ai/generate-document`)
|
||
- 测试根据模板和数据生成文档
|
||
|
||
### 3.4 测试数据
|
||
|
||
测试脚本使用虚拟测试数据:
|
||
|
||
**输入数据示例:**
|
||
- `clue_info`: "被举报用户名称是张三,年龄44岁..."
|
||
- `target_basic_info_clue`: "被核查人员工作基本情况..."
|
||
|
||
**输出字段:**
|
||
- `target_name`, `target_gender`, `target_age`, `target_date_of_birth` 等
|
||
|
||
---
|
||
|
||
## 四、使用测试页面
|
||
|
||
### 4.1 访问测试页面
|
||
|
||
打开浏览器访问:`http://localhost:7500`
|
||
|
||
### 4.2 功能说明
|
||
|
||
测试页面包含两个标签页:
|
||
|
||
1. **AI解析接口**
|
||
- 已预填输入字段和输出字段
|
||
- 点击"开始解析"按钮进行测试
|
||
|
||
2. **文档生成接口**
|
||
- 已预填字段数据(包含完整的虚拟测试数据)
|
||
- 已预填文件列表
|
||
- 点击"生成文档"按钮进行测试
|
||
|
||
### 4.3 虚拟测试数据
|
||
|
||
测试页面已预填以下虚拟数据:
|
||
|
||
**输入字段(AI解析用):**
|
||
- `clue_info`: 完整的线索信息
|
||
- `target_basic_info_clue`: 被核查人员基本情况
|
||
|
||
**输出字段(AI解析用):**
|
||
- 12个常用输出字段
|
||
|
||
**字段数据(文档生成用):**
|
||
- 14个完整字段的测试数据
|
||
- 包括:姓名、性别、年龄、出生年月、单位、职务、文化程度、政治面貌、职级、线索来源、问题描述等
|
||
|
||
**文件列表:**
|
||
- 初步核实审批表 (PRELIMINARY_VERIFICATION_APPROVAL)
|
||
- 请示报告卡 (REQUEST_REPORT_CARD)
|
||
|
||
---
|
||
|
||
## 五、执行顺序建议
|
||
|
||
1. **检查模板占位符**
|
||
```bash
|
||
python check_template_placeholders.py
|
||
```
|
||
确保模板文件中的占位符格式正确
|
||
|
||
2. **注册模板到数据库**
|
||
```bash
|
||
python register_templates_to_db.py
|
||
```
|
||
批量注册模板并上传到MinIO
|
||
|
||
3. **启动服务**
|
||
```bash
|
||
python app.py
|
||
```
|
||
|
||
4. **测试接口**
|
||
```bash
|
||
python test_api_endpoints.py
|
||
```
|
||
或者在浏览器中访问测试页面进行交互式测试
|
||
|
||
---
|
||
|
||
## 六、注意事项
|
||
|
||
1. **占位符格式**:必须使用 `{{field_code}}` 格式
|
||
2. **模板编码**:确保模板编码与数据库中的配置一致
|
||
3. **字段编码**:占位符中的字段编码必须与数据库中的字段编码匹配
|
||
4. **文件路径**:确保MinIO存储桶存在且有写入权限
|
||
5. **数据库连接**:确保数据库连接配置正确
|
||
|
||
---
|
||
|
||
## 七、常见问题
|
||
|
||
### Q1: 检查脚本没有输出?
|
||
|
||
**A:** 确保:
|
||
- `template_finish` 目录存在
|
||
- 目录下有 `.docx` 文件
|
||
- 已安装 `python-docx` 库:`pip install python-docx`
|
||
|
||
### Q2: 上传到MinIO失败?
|
||
|
||
**A:** 检查:
|
||
- MinIO连接配置是否正确
|
||
- 存储桶是否存在
|
||
- 网络连接是否正常
|
||
|
||
### Q3: 注册到数据库失败?
|
||
|
||
**A:** 检查:
|
||
- 数据库连接配置
|
||
- 数据库表结构是否正确
|
||
- 字段编码是否冲突
|
||
|
||
### Q4: 接口测试失败?
|
||
|
||
**A:** 确保:
|
||
- 服务已启动
|
||
- 端口7500未被占用
|
||
- 数据库和MinIO连接正常 |