162 lines
4.5 KiB
JSON
162 lines
4.5 KiB
JSON
|
|
{
|
||
|
|
"schema_version": "2.0",
|
||
|
|
"rule_code": "risk.travel.high.date_outside_trip",
|
||
|
|
"name": "票据日期超出差旅行程高风险",
|
||
|
|
"description": "票据日期、住宿日期或明细发生日期超出申报出差起止日期,允许 1 天交通衔接容差。",
|
||
|
|
"enabled": true,
|
||
|
|
"requires_attachment": true,
|
||
|
|
"risk_dimension": "travel_reimbursement_control",
|
||
|
|
"risk_category": "差旅费-日期一致性",
|
||
|
|
"ontology_signal": "travel_date_outside_trip_window",
|
||
|
|
"evaluator": "template_rule",
|
||
|
|
"finance_rule_code": "rule.expense.company_travel_expense_reimbursement",
|
||
|
|
"finance_rule_sheet": "公司差旅费报销规则",
|
||
|
|
"business_stage": [
|
||
|
|
"expense_application",
|
||
|
|
"reimbursement"
|
||
|
|
],
|
||
|
|
"expense_types": [
|
||
|
|
"travel"
|
||
|
|
],
|
||
|
|
"applies_to": {
|
||
|
|
"domains": [
|
||
|
|
"expense",
|
||
|
|
"travel"
|
||
|
|
],
|
||
|
|
"expense_types": [
|
||
|
|
"travel"
|
||
|
|
],
|
||
|
|
"business_stages": [
|
||
|
|
"expense_application",
|
||
|
|
"reimbursement"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"inputs": {
|
||
|
|
"fields": [
|
||
|
|
{
|
||
|
|
"key": "claim.trip_start_date",
|
||
|
|
"label": "出差开始日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "claim"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"key": "claim.trip_end_date",
|
||
|
|
"label": "出差结束日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "claim"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"key": "item.item_date",
|
||
|
|
"label": "明细发生日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "item"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"key": "attachment.issue_date",
|
||
|
|
"label": "票据日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "attachment"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"key": "attachment.stay_start_date",
|
||
|
|
"label": "住宿开始日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "attachment"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"key": "attachment.stay_end_date",
|
||
|
|
"label": "住宿结束日期",
|
||
|
|
"type": "date",
|
||
|
|
"source": "attachment"
|
||
|
|
}
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"params": {
|
||
|
|
"template_key": "composite_rule_v1",
|
||
|
|
"field_keys": [
|
||
|
|
"claim.trip_start_date",
|
||
|
|
"claim.trip_end_date",
|
||
|
|
"item.item_date",
|
||
|
|
"attachment.issue_date",
|
||
|
|
"attachment.stay_start_date",
|
||
|
|
"attachment.stay_end_date"
|
||
|
|
],
|
||
|
|
"conditions": [
|
||
|
|
{
|
||
|
|
"id": "ticket_date_outside_trip",
|
||
|
|
"operator": "date_outside_range",
|
||
|
|
"date_fields": [
|
||
|
|
"item.item_date",
|
||
|
|
"attachment.issue_date",
|
||
|
|
"attachment.stay_start_date",
|
||
|
|
"attachment.stay_end_date"
|
||
|
|
],
|
||
|
|
"range_start_fields": [
|
||
|
|
"claim.trip_start_date"
|
||
|
|
],
|
||
|
|
"range_end_fields": [
|
||
|
|
"claim.trip_end_date"
|
||
|
|
],
|
||
|
|
"tolerance_days": 1
|
||
|
|
}
|
||
|
|
],
|
||
|
|
"hit_logic": "ticket_date_outside_trip",
|
||
|
|
"condition_summary": "任一票据/明细日期早于出差开始日前 1 天或晚于结束日后 1 天。",
|
||
|
|
"message_template": "票据日期超出申报差旅行程,请补充改签/延期说明或更正行程日期。"
|
||
|
|
},
|
||
|
|
"outcomes": {
|
||
|
|
"pass": {
|
||
|
|
"severity": "none",
|
||
|
|
"action": "continue"
|
||
|
|
},
|
||
|
|
"fail": {
|
||
|
|
"severity": "high",
|
||
|
|
"action": "block",
|
||
|
|
"risk_score": 88
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"metadata": {
|
||
|
|
"owner": "admin",
|
||
|
|
"stability": "admin_configured",
|
||
|
|
"source_ref": "差旅费报销风险规则库 / admin 手工配置",
|
||
|
|
"created_at": "2026-05-26T07:06:27.746703+00:00",
|
||
|
|
"created_by": "admin",
|
||
|
|
"risk_score": 88,
|
||
|
|
"risk_level": "high",
|
||
|
|
"rule_title": "票据日期超出差旅行程高风险",
|
||
|
|
"finance_rule_code": "rule.expense.company_travel_expense_reimbursement",
|
||
|
|
"finance_rule_sheet": "公司差旅费报销规则",
|
||
|
|
"business_stage": [
|
||
|
|
"expense_application",
|
||
|
|
"reimbursement"
|
||
|
|
],
|
||
|
|
"expense_types": [
|
||
|
|
"travel"
|
||
|
|
],
|
||
|
|
"implementation_note": "使用当前规则中心 JSON 风险规则执行器可识别的字段与模板配置。",
|
||
|
|
"risk_level_label": "高风险",
|
||
|
|
"risk_score_model": "risk_score_v3",
|
||
|
|
"risk_score_detail": {
|
||
|
|
"score": 88,
|
||
|
|
"level": "high",
|
||
|
|
"level_label": "高风险",
|
||
|
|
"model": "risk_score_v3",
|
||
|
|
"source": "admin_manual_travel_risk_catalog",
|
||
|
|
"reason": "按差旅费报销高/中/低风险分层手工设定。"
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"severity": "high",
|
||
|
|
"risk_score": 88,
|
||
|
|
"risk_level": "high",
|
||
|
|
"template_key": "composite_rule_v1",
|
||
|
|
"risk_level_label": "高风险",
|
||
|
|
"risk_score_detail": {
|
||
|
|
"score": 88,
|
||
|
|
"level": "high",
|
||
|
|
"level_label": "高风险",
|
||
|
|
"model": "risk_score_v3",
|
||
|
|
"source": "admin_manual_travel_risk_catalog",
|
||
|
|
"reason": "按差旅费报销高/中/低风险分层手工设定。"
|
||
|
|
}
|
||
|
|
}
|