{ "schema_version": "2.0", "rule_code": "risk.expense.generated_20260523011139", "name": "酒店发票城市一致性校验", "description": "校验酒店发票城市是否与申报目的地或行程城市一致,不一致时标记为高风险并要求补充说明", "enabled": true, "risk_dimension": "natural_language_rule", "risk_category": "报销", "ontology_signal": "natural_language_risk", "evaluator": "template_rule", "template_key": "field_compare_v1", "applies_to": { "domains": [ "expense" ] }, "inputs": { "fields": [ { "key": "attachment.route_cities", "label": "行程城市", "type": "list", "source": "attachment" }, { "key": "claim.location", "label": "申报地点", "type": "text", "source": "claim" }, { "key": "attachment.hotel_city", "label": "住宿城市", "type": "text", "source": "attachment" }, { "key": "claim.reason", "label": "报销事由", "type": "text", "source": "claim" } ] }, "params": { "template_key": "field_compare_v1", "field_keys": [ "attachment.hotel_city", "claim.location", "attachment.route_cities", "claim.reason" ], "condition_summary": "对比住宿城市、申报地点、行程城市之间是否一致或存在交集", "natural_language": "酒店发票城市必须与申报目的地或交通票行程城市一致,如果都不一致,则判定为高风险,并要求补充异常行程说明。", "conditions": [ { "left": "attachment.hotel_city", "operator": "overlap", "right": "claim.location" } ] }, "outcomes": { "pass": { "severity": "none", "action": "continue" }, "fail": { "severity": "high", "action": "manual_review" } }, "metadata": { "owner": "WangMin", "stability": "generated_draft", "source_ref": "自然语言风险规则", "created_at": "2026-05-23T01:11:39.165281+00:00", "created_by": "WangMin", "natural_language": "酒店发票城市必须与申报目的地或交通票行程城市一致,如果都不一致,则判定为高风险,并要求补充异常行程说明。", "business_explanation": "校验酒店发票城市是否与申报目的地或行程城市一致,不一致时标记为高风险并要求补充说明", "condition_summary": "对比住宿城市、申报地点、行程城市之间是否一致或存在交集", "flow": { "start": "提交酒店发票", "evidence": "读取住宿城市、申报地点、行程城市", "decision": "对比住宿城市、申报地点、行程城市之间是否一致或存在交集", "pass": "继续流转", "fail": "提示高风险:酒店发票城市与申报目的地及行程城市均不一致,需补充异常行程说明" } } }