fix(application-form-fill): 代理人字段暂用生产企业信息
This commit is contained in:
@@ -17,6 +17,11 @@ from review_agent.regulatory_review.services.text_extract import extract_text
|
||||
|
||||
FIELD_ALIASES = {
|
||||
"product_name": ["产品名称"],
|
||||
"applicant_name": ["注册人名称", "生产企业名称", "企业名称", "生产企业"],
|
||||
"applicant_address": ["注册人住所", "生产企业住所", "企业住所", "住所"],
|
||||
"manufacturer_address": ["生产地址", "生产企业地址", "生产场所"],
|
||||
"agent_name": ["代理人名称", "生产企业名称", "企业名称", "生产企业", "注册人名称"],
|
||||
"agent_address": ["代理人住所", "生产企业住所", "企业住所", "住所", "注册人住所"],
|
||||
"package_specification": ["包装规格", "规格"],
|
||||
"main_components": ["主要组成成分", "主要组成", "组成成分"],
|
||||
"intended_use": ["预期用途"],
|
||||
@@ -41,7 +46,7 @@ def collect_document_texts(summary_batch: FileSummaryBatch) -> dict[str, str]:
|
||||
def extract_by_rules(texts: dict[str, str], specs: list[TemplateSpec]) -> dict[str, Any]:
|
||||
fields: list[dict[str, Any]] = []
|
||||
field_defs = _field_defs(specs)
|
||||
labels = [field["label"] for field in field_defs if field.get("label")]
|
||||
labels = _all_field_labels(field_defs)
|
||||
for file_name, text in texts.items():
|
||||
source_role = detect_source_role(file_name, text)
|
||||
for field in field_defs:
|
||||
@@ -174,6 +179,15 @@ def _field_aliases(field: dict[str, str]) -> list[str]:
|
||||
return result
|
||||
|
||||
|
||||
def _all_field_labels(fields: list[dict[str, str]]) -> list[str]:
|
||||
labels: list[str] = []
|
||||
for field in fields:
|
||||
for label in _field_aliases(field):
|
||||
if label not in labels:
|
||||
labels.append(label)
|
||||
return labels
|
||||
|
||||
|
||||
def _extract_label_value(text: str, label: str, labels: list[str]) -> tuple[str, str]:
|
||||
return _extract_colon_label_value(text, label, labels)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user