diff --git a/app/services/agent_dispatcher.py b/app/services/agent_dispatcher.py index 1065186..8ae87fa 100644 --- a/app/services/agent_dispatcher.py +++ b/app/services/agent_dispatcher.py @@ -463,11 +463,29 @@ class AgentDispatcher: start = now.replace(hour=0, minute=0, second=0, microsecond=0) range_label = "今日" + # 告警类型:中文/英文都兼容 alarm_type_filter = params.get("alarm_type") if alarm_type_filter == "all": alarm_type_filter = None + type_cn_to_code = { + "人员离岗": "leave_post", "离岗": "leave_post", + "周界入侵": "intrusion", "入侵": "intrusion", + "车辆违停": "illegal_parking", "违停": "illegal_parking", + "车辆拥堵": "vehicle_congestion", "拥堵": "vehicle_congestion", + } + if alarm_type_filter and alarm_type_filter in type_cn_to_code: + alarm_type_filter = type_cn_to_code[alarm_type_filter] + # 告警状态:中文/英文都兼容 alarm_status_filter = params.get("alarm_status") + status_cn_to_code = { + "待处理": "NEW", "未处理": "NEW", "新": "NEW", + "处理中": "CONFIRMED", "已确认": "CONFIRMED", + "误报": "FALSE", "已忽略": "FALSE", + "已关闭": "CLOSED", "已处理": "CLOSED", + } + if alarm_status_filter and alarm_status_filter in status_cn_to_code: + alarm_status_filter = status_cn_to_code[alarm_status_filter] alarms, total = svc.get_alarms( alarm_type=alarm_type_filter,