feat: 新增预算中心本体与风险规则评分回填

后端新增预算本体解析模块和风险规则评分回填服务,优化规则
生成本体对齐和提示词构建,增强费用类型关键词和本体验证,
完善报销查询和审计接口,前端预算中心页面增加对话框和本
体工具函数,重构审计页面元数据和视图模型,补充单元测试。
This commit is contained in:
caoxiaozhu
2026-05-26 12:16:20 +08:00
parent 0e861d8fa6
commit e1e515ecae
53 changed files with 4350 additions and 921 deletions

View File

@@ -38,8 +38,10 @@ EXPENSE_TYPE_LABELS = {
"meal": "业务招待费",
"meeting": "会务费",
"entertainment": "业务招待费",
"marketing": "市场推广费",
"office": "办公用品费",
"training": "培训费",
"software": "软件服务费",
"communication": "通讯费",
"welfare": "福利费",
"other": "其他费用",
@@ -49,10 +51,12 @@ GROUP_SCENE_LABELS = {
"travel": "差旅费",
"entertainment": "业务招待费",
"meal": "业务招待费",
"marketing": "市场推广费",
"transport": "交通费",
"hotel": "住宿费",
"office": "办公用品费",
"training": "培训费",
"software": "软件服务费",
"communication": "通讯费",
"welfare": "福利费",
"other": "其他费用",
@@ -64,8 +68,10 @@ EXPENSE_SCENE_SELECTION_OPTIONS = (
("hotel", "住宿费", "单独住宿、酒店发票等场景。"),
("meal", "业务招待费", "客户接待、工作餐、加班餐、餐饮票据等场景。"),
("meeting", "会务费", "会议、论坛、会场、参会等场景。"),
("marketing", "市场推广费", "广告投放、品牌宣传、营销物料等推广场景。"),
("office", "办公用品费", "办公用品、耗材、办公设备等采购场景。"),
("training", "培训费", "培训课程、讲师费、教材、认证等场景。"),
("software", "软件服务费", "软件订阅、云资源、平台服务等技术服务场景。"),
("communication", "通讯费", "话费、流量、宽带、网络等场景。"),
("welfare", "福利费", "团建、体检、慰问、节日福利等场景。"),
("other", "其他费用", "暂不属于以上分类的报销场景。"),
@@ -110,7 +116,10 @@ AMOUNT_TEXT_PATTERN = re.compile(
r"(\d+(?:\.\d+)?)\s*(?:万元|万员|万圆|万园|万块|万元整|元整|块钱|块|元|员|圆|园|万)"
)
TRAVEL_REVIEW_HOTEL_NIGHT_PATTERN = re.compile(r"(\d+)\s*(?:晚|间夜)")
TRAVEL_ROUTE_PATTERN = re.compile(r"([\u4e00-\u9fa5]{2,12})\s*(?:至|→|->|-|—)\s*([\u4e00-\u9fa5]{2,12})")
TRAVEL_ROUTE_PATTERN = re.compile(
r"([\u4e00-\u9fa5]{2,12})\s*(?:至|→|->|-|—)\s*"
r"([\u4e00-\u9fa5]{2,12})"
)
SOURCE_LABELS = {
"user_text": "用户描述",
@@ -137,8 +146,10 @@ INFERRED_REASON_LABELS = {
"meal": "业务招待",
"meeting": "会务活动",
"entertainment": "客户接待",
"marketing": "市场推广",
"office": "办公用品采购",
"training": "培训学习",
"software": "软件服务",
"communication": "通讯使用",
"welfare": "员工福利",
"other": "其他费用",