63 lines
1.2 KiB
Markdown
63 lines
1.2 KiB
Markdown
# 回填字段集构建Skill 设计
|
|
|
|
## 1. Skill 定位
|
|
|
|
`回填字段集构建Skill` 负责根据模板字段映射和统一字段池构建实际要写入 Word 模板的字段值集合。
|
|
|
|
英文实现标识建议使用 `FillDatasetBuildSkill`。
|
|
|
|
## 2. 输入
|
|
|
|
```python
|
|
@dataclass
|
|
class FillDatasetBuildInput:
|
|
field_pool_items: list[FieldPoolItem]
|
|
template_mappings: list[dict]
|
|
selected_field_keys: list[str] = field(default_factory=list)
|
|
```
|
|
|
|
## 3. 输出
|
|
|
|
```python
|
|
@dataclass
|
|
class FillDatasetBuildOutput:
|
|
fill_dataset: dict
|
|
missing_required_fields: list[dict]
|
|
manual_review_fields: list[dict]
|
|
```
|
|
|
|
## 4. 核心方法
|
|
|
|
### 4.1 `run(input) -> FillDatasetBuildOutput`
|
|
|
|
主入口方法。
|
|
|
|
### 4.2 `resolve_field_value(mapping, field_pool) -> FillValue`
|
|
|
|
解析字段值。
|
|
|
|
### 4.3 `build_placeholder_values(mappings, field_pool) -> dict`
|
|
|
|
生成占位符和值。
|
|
|
|
## 5. 技术实现
|
|
|
|
使用技术:
|
|
|
|
1. 字段池数据
|
|
2. 模板映射
|
|
3. Python 字典构建
|
|
|
|
## 6. 异常处理
|
|
|
|
1. 必填字段缺失:进入缺失列表。
|
|
2. 字段待复核:进入待复核列表。
|
|
3. 字段不可回填:跳过。
|
|
|
|
## 7. 测试要点
|
|
|
|
1. 可回填字段进入 dataset。
|
|
2. 必填缺失可识别。
|
|
3. 待复核字段可识别。
|
|
|