ai-business-write/技术文档/初步核实审批表数据设计说明.md

230 lines
8.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 初步核实审批表数据设计说明
## 一、设计概述
本文档说明"初步核实审批表"模板相关的数据字段设计,以及如何将数据存入数据库。
## 二、数据表结构
### 2.1 相关数据表
1. **f_polic_file_config** - 文件模板配置表
- 存储文档模板的基本信息
- 字段id, tenant_id, parent_id, name, input_data, file_path, created_time, created_by, updated_time, updated_by, state
2. **f_polic_field** - 字段表
- 存储字段定义信息
- 字段id, tenant_id, name, filed_code, field_type, created_time, created_by, updated_time, updated_by, state
- 注意:表中字段名为 `filed_code`(拼写错误,但需保持一致)
3. **f_polic_file_field** - 文件和字段关联表
- 存储文件模板与字段的关联关系
- 字段id, tenant_id, filed_id, file_id, created_time, created_by, updated_time, updated_by, state
### 2.2 字段类型说明
- `field_type = 1`: 输入字段用于AI解析的原始数据
- `field_type = 2`: 输出字段AI解析后生成的结构化数据用于填充模板
## 三、初步核实审批表字段设计
### 3.1 输出字段(用于填充模板)
根据Excel数据字段汇总表和Word模板分析设计了以下14个输出字段
| 字段名称 | 字段编码 (field_code) | 说明 | 示例 |
|---------|---------------------|------|------|
| 被核查人姓名 | target_name | 被核查人姓名 | 张三 |
| 被核查人员单位及职务 | target_organization_and_position | 被核查人员单位及职务(包括兼职) | 某公司总经理 |
| 被核查人员单位 | target_organization | 被核查人员单位 | 某公司 |
| 被核查人员职务 | target_position | 被核查人员职务 | 总经理 |
| 被核查人员性别 | target_gender | 被核查人员性别(男/女,不用男性和女性) | 男 |
| 被核查人员出生年月 | target_date_of_birth | 被核查人员出生年月YYYYMM格式不需要日 | 45972 |
| 被核查人员年龄 | target_age | 被核查人员年龄(数字,单位:岁) | 44 |
| 被核查人员文化程度 | target_education_level | 被核查人员文化程度(如:本科、大专、高中等) | 本科 |
| 被核查人员政治面貌 | target_political_status | 被核查人员政治面貌(中共党员、群众等) | 中共党员 |
| 被核查人员职级 | target_professional_rank | 被核查人员职级(如:正处级) | 正处级 |
| 线索来源 | clue_source | 线索来源 | - |
| 主要问题线索 | target_issue_description | 主要问题线索描述 | 违反国家计划生育有关政策规定于2010年10月生育二胎。 |
| 初步核实审批表承办部门意见 | department_opinion | 初步核实审批表承办部门意见 | - |
| 初步核实审批表填表人 | filler_name | 初步核实审批表填表人 | - |
### 3.2 输入字段用于AI解析
| 字段名称 | 字段编码 (field_code) | 说明 |
|---------|---------------------|------|
| 线索信息 | clue_info | 线索信息用于AI解析 |
| 被核查人员工作基本情况线索 | target_basic_info_clue | 被核查人员工作基本情况线索用于AI解析 |
### 3.3 Word模板占位符映射
Word模板中使用的占位符格式为 `{{field_code}}`,与字段编码的对应关系:
- `{{target_name}}` → 被核查人姓名
- `{{target_organization_and_position}}` → 被核查人员单位及职务
- `{{target_organization}}` → 被核查人员单位
- `{{target_position}}` → 被核查人员职务
- `{{target_gender}}` → 被核查人员性别
- `{{target_date_of_birth}}` → 被核查人员出生年月
- `{{target_age}}` → 被核查人员年龄
- `{{target_education_level}}` → 被核查人员文化程度
- `{{target_political_status}}` → 被核查人员政治面貌
- `{{target_professional_rank}}` → 被核查人员职级
- `{{target_issue_description}}` → 主要问题线索
## 四、文件配置信息
### 4.1 文件配置记录
- **名称**: 初步核实审批表
- **模板编码 (template_code)**: `PRELIMINARY_VERIFICATION_APPROVAL`
- **业务类型 (business_type)**: `INVESTIGATION`(调查核实)
- **文件路径 (file_path)**: `/templates/初步核实审批表模板.docx`MinIO相对路径
### 4.2 配置存储
文件配置的 `input_data` 字段存储JSON格式数据
```json
{
"template_code": "PRELIMINARY_VERIFICATION_APPROVAL",
"business_type": "INVESTIGATION"
}
```
## 五、使用说明
### 5.1 初始化脚本
使用 `init_preliminary_verification_fields.py` 脚本初始化数据:
```bash
python init_preliminary_verification_fields.py
```
脚本功能:
1. 创建16个字段记录14个输出字段 + 2个输入字段
2. 创建文件配置记录
3. 建立文件和字段的关联关系(仅关联输出字段)
### 5.2 验证脚本
使用 `verify_data.py` 脚本验证数据是否正确写入:
```bash
python verify_data.py
```
### 5.3 接口调用示例
#### 1. AI解析接口 (`/ai/extract`)
```json
{
"businessType": "INVESTIGATION",
"inputData": [
{
"fieldCode": "clue_info",
"fieldValue": "被举报用户名称是张三年龄30岁"
},
{
"fieldCode": "target_basic_info_clue",
"fieldValue": "张三汉族1980年5月出生山西太原人本科学历2000年参加工作2005年加入中国共产党。"
}
]
}
```
#### 2. 文档生成接口 (`/ai/generate-document`)
```json
{
"templateCode": "PRELIMINARY_VERIFICATION_APPROVAL",
"businessType": "INVESTIGATION",
"inputData": [
{
"fieldCode": "target_name",
"fieldValue": "张三"
},
{
"fieldCode": "target_organization_and_position",
"fieldValue": "某公司总经理"
},
{
"fieldCode": "target_organization",
"fieldValue": "某公司"
},
{
"fieldCode": "target_position",
"fieldValue": "总经理"
},
{
"fieldCode": "target_gender",
"fieldValue": "男"
},
{
"fieldCode": "target_date_of_birth",
"fieldValue": "198005"
},
{
"fieldCode": "target_age",
"fieldValue": "44"
},
{
"fieldCode": "target_education_level",
"fieldValue": "本科"
},
{
"fieldCode": "target_political_status",
"fieldValue": "中共党员"
},
{
"fieldCode": "target_professional_rank",
"fieldValue": "正处级"
},
{
"fieldCode": "target_issue_description",
"fieldValue": "违反国家计划生育有关政策规定于2010年10月生育二胎。"
}
],
"fpolicFieldParamFileList": [
{
"fileId": 1764656918061150,
"fileName": "初步核实审批表.doc"
}
]
}
```
## 六、注意事项
1. **字段编码一致性**: 确保Word模板中的占位符 `{{field_code}}` 与数据库中的 `filed_code` 字段值完全一致。
2. **字段类型**:
- 输入字段field_type=1用于接收用户输入的原始数据供AI解析使用
- 输出字段field_type=2用于存储AI解析后的结构化数据用于填充模板
3. **文件路径**: `f_polic_file_config` 表中的 `file_path` 存储的是MinIO的相对路径不是绝对路径。
4. **状态字段**:
- `state = 0` 表示未启用
- `state = 1` 表示启用
5. **数据去重**: 初始化脚本会自动检查数据是否已存在,避免重复创建。
## 七、数据库连接信息
- **IP地址**: 152.136.177.240
- **端口**: 5012
- **用户名**: finyx
- **密码**: 6QsGK6MpePZDE57Z
- **数据库名称**: finyx
## 八、相关文件
- `init_preliminary_verification_fields.py` - 数据初始化脚本
- `verify_data.py` - 数据验证脚本
- `check_tables.py` - 数据库表结构查看脚本
- `analyze_template.py` - Word模板分析脚本
- `模板/初步核实审批表模板.docx` - Word模板文件