ai-business-write/开发进度总结.md

145 lines
3.8 KiB
Markdown
Raw 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.

# 开发进度总结
## 已完成的工作
### 1. ✅ 解析接口调整
- 已取消 `business_type` 参数
- 已新增 `outputData` 参数
- 已实现根据 `fieldCode` 从数据库查询字段配置
- 接口路径:`/ai/extract``/api/ai/extract`(兼容旧路径)
**相关文件:**
- `app.py` - 解析接口实现
- `services/field_service.py` - 新增 `get_output_fields_by_field_codes` 方法
### 2. ✅ Excel文件解析
- 已创建 `parse_excel_fields.py` 脚本
- 成功解析Excel文件提取所有字段定义
- 识别了8个模板和对应的字段关系
**解析结果:**
- 初步核实审批表
- 请示报告卡
- 初核方案
- 谈话通知书
- 走读式谈话流程
- 走读式谈话审批
- 请示报告卡(初核报告结论)
- XXX初核情况报告
### 3. ✅ 文档生成接口开发
- 已创建 `services/document_service.py` 文档服务
- 已实现Word模板填充功能
- 已实现MinIO文件上传功能
- 已实现模板下载功能
- 接口路径:`/ai/generate-document``/api/ai/generate-document`(兼容旧路径)
**功能特性:**
- 从MinIO下载模板
- 填充Word模板中的占位符 `{{field_code}}`
- 上传生成的文件到MinIO
- 返回相对路径(符合新接口要求)
### 4. ✅ 依赖库更新
- 已更新 `requirements.txt`,添加了:
- `python-docx==1.1.0` - Word文档处理
- `minio==7.2.3` - MinIO客户端
- `openpyxl==3.1.2` - Excel文件解析
## 待完成的工作
### 1. ⏳ 数据库初始化脚本
需要创建一个完整的脚本将所有Excel中的字段初始化到数据库
- 创建所有字段记录(输入字段和输出字段)
- 创建文件配置记录使用template_code字段
- 建立文件和字段的关联关系
**注意事项:**
- 不再写入 `input_data` 字段(同事需要使用)
- 使用 `template_code` 字段存储模板编码
- 需要生成准确的字段编码映射
### 2. ⏳ 调整prompt_config.json
根据新字段更新抽取规则,特别是:
- 为不同模板的字段添加特殊规则
- 更新字段格式化规则
### 3. ⏳ 生成占位符文档
创建一个MD文档列出所有占位符和对应的数据字段
- 列出所有模板的占位符
- 显示占位符对应的字段名称和字段编码
- 方便手工配置Word模板
### 4. ⏳ 数据库表结构更新
确保 `f_polic_file_config` 表支持:
- `template_code` 字段的读写
- 不再写入 `input_data` 字段(只读取)
## 技术要点
### 接口变更说明
#### 解析接口 (`/ai/extract`)
**变更前:**
```json
{
"businessType": "INVESTIGATION",
"inputData": [...]
}
```
**变更后:**
```json
{
"inputData": [...],
"outputData": [
{"fieldCode": "userName"},
{"fieldCode": "userAge"}
]
}
```
#### 文档生成接口 (`/ai/generate-document`)
**请求参数:**
```json
{
"inputData": [...],
"fpolicFieldParamFileList": [
{
"fileId": 1,
"fileName": "请示报告卡.doc",
"templateCode": "REPORT_CARD"
}
]
}
```
**返回结果:**
- `filePath` 返回相对路径(如:`/202511261123/请示报告卡.doc`
- 不再返回绝对路径
### 数据库字段说明
1. **f_polic_file_config 表**
- 新增字段:`template_code`(模板编码)
- `input_data` 字段:不再写入,只读取
2. **字段查询逻辑**
- 通过 `fieldCode` 从数据库查询字段配置
- 不再依赖 `business_type` 参数
## 下一步行动
1. 完成数据库初始化脚本
2. 调整 prompt_config.json
3. 生成占位符文档
4. 测试接口功能
## 注意事项
1. **MinIO路径格式**:返回相对路径,以 `/` 开头
2. **模板编码**:使用 `template_code` 字段,不再使用 `input_data` 中的 JSON
3. **字段编码映射**需要从Excel中准确提取字段名称到字段编码的映射关系
4. **占位符格式**Word模板中使用 `{{field_code}}` 格式