feat: 新增预算后端服务与差旅风险规则库
后端新增预算模型、端点和服务模块,支持预算 CRUD 和余额 查询,清理旧生成规则文件并替换为按严重等级分类的差旅风 险规则库,优化认证权限和报销单访问策略,新增财务规则目 录和演示数据构建脚本,前端预算中心增加对话框交互,完善 审计页面运行时模型和元数据展示,补充单元测试。
This commit is contained in:
118
server/rules/risk-rules/risk.travel.medium.title_mismatch.json
Normal file
118
server/rules/risk-rules/risk.travel.medium.title_mismatch.json
Normal file
@@ -0,0 +1,118 @@
|
||||
{
|
||||
"schema_version": "2.0",
|
||||
"rule_code": "risk.travel.medium.title_mismatch",
|
||||
"name": "差旅票据抬头不一致中风险",
|
||||
"description": "票据抬头、乘车人或购买方与报销人不一致,且不属于公司抬头或允许例外。",
|
||||
"enabled": true,
|
||||
"requires_attachment": true,
|
||||
"risk_dimension": "travel_reimbursement_control",
|
||||
"risk_category": "差旅费-票据主体",
|
||||
"ontology_signal": "travel_invoice_title_mismatch",
|
||||
"evaluator": "identity_consistency",
|
||||
"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.employee_name",
|
||||
"label": "申请/报销人",
|
||||
"type": "text",
|
||||
"source": "claim"
|
||||
},
|
||||
{
|
||||
"key": "attachment.buyer_name",
|
||||
"label": "票据抬头/购买方",
|
||||
"type": "text",
|
||||
"source": "attachment"
|
||||
},
|
||||
{
|
||||
"key": "attachment.ocr_text",
|
||||
"label": "票据 OCR 全文",
|
||||
"type": "text",
|
||||
"source": "attachment"
|
||||
}
|
||||
]
|
||||
},
|
||||
"params": {
|
||||
"allow_keywords": [
|
||||
"公司",
|
||||
"远光",
|
||||
"远光软件"
|
||||
],
|
||||
"condition_summary": "票据抬头/购买方不包含报销人姓名,也不包含公司抬头关键词。",
|
||||
"message_template": "票据抬头或乘车人与报销人不一致,请补充代订、同行或公司抬头说明。"
|
||||
},
|
||||
"outcomes": {
|
||||
"pass": {
|
||||
"severity": "none",
|
||||
"action": "continue"
|
||||
},
|
||||
"fail": {
|
||||
"severity": "medium",
|
||||
"action": "manual_review",
|
||||
"risk_score": 64
|
||||
}
|
||||
},
|
||||
"metadata": {
|
||||
"owner": "admin",
|
||||
"stability": "admin_configured",
|
||||
"source_ref": "差旅费报销风险规则库 / admin 手工配置",
|
||||
"created_at": "2026-05-26T07:06:27.746703+00:00",
|
||||
"created_by": "admin",
|
||||
"risk_score": 64,
|
||||
"risk_level": "medium",
|
||||
"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": 64,
|
||||
"level": "medium",
|
||||
"level_label": "中风险",
|
||||
"model": "risk_score_v3",
|
||||
"source": "admin_manual_travel_risk_catalog",
|
||||
"reason": "按差旅费报销高/中/低风险分层手工设定。"
|
||||
}
|
||||
},
|
||||
"severity": "medium",
|
||||
"risk_score": 64,
|
||||
"risk_level": "medium",
|
||||
"risk_level_label": "中风险",
|
||||
"risk_score_detail": {
|
||||
"score": 64,
|
||||
"level": "medium",
|
||||
"level_label": "中风险",
|
||||
"model": "risk_score_v3",
|
||||
"source": "admin_manual_travel_risk_catalog",
|
||||
"reason": "按差旅费报销高/中/低风险分层手工设定。"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user