|
|
@@ -0,0 +1,72 @@
|
|
|
+-- =====================================================
|
|
|
+-- [26110201] 事件查询优化(幂等,可重复执行)
|
|
|
+-- 1. alarm_event_record 增加告警类别字段 alarm_category(数据后续由外部补充)
|
|
|
+-- 2. 字典配置:告警类别(alarm_category)、告警等级(alarm_level)
|
|
|
+-- 注意: 字典项暂为占位值,后续替换为真实 code/name
|
|
|
+-- 3. 统计分析 下增加 事件查询 菜单
|
|
|
+-- =====================================================
|
|
|
+
|
|
|
+-- 1. 增加告警类别字段(幂等)
|
|
|
+ALTER TABLE alarm_event_record ADD COLUMN IF NOT EXISTS alarm_category VARCHAR(50);
|
|
|
+COMMENT ON COLUMN alarm_event_record.alarm_category IS '告警类别';
|
|
|
+
|
|
|
+-- 2.1 字典类型: 告警类别
|
|
|
+INSERT INTO sys_dict_type (dict_id, dict_name, dict_type, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_type', 'dict_id')),
|
|
|
+'告警类别', 'alarm_category', '0', 'admin', now(), '事件查询-告警类别'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_type t WHERE t.dict_type = 'alarm_category');
|
|
|
+
|
|
|
+-- 2.2 字典类型: 告警等级
|
|
|
+INSERT INTO sys_dict_type (dict_id, dict_name, dict_type, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_type', 'dict_id')),
|
|
|
+'告警等级', 'alarm_level', '0', 'admin', now(), '事件查询-告警等级'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_type t WHERE t.dict_type = 'alarm_level');
|
|
|
+
|
|
|
+-- 2.3 告警类别字典数据(占位,待替换为真实值)
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+1, '占位-类别一', '1', 'alarm_category', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警类别'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_category' AND t.dict_value = '1');
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+2, '占位-类别二', '2', 'alarm_category', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警类别'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_category' AND t.dict_value = '2');
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+3, '占位-类别三', '3', 'alarm_category', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警类别'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_category' AND t.dict_value = '3');
|
|
|
+
|
|
|
+-- 2.4 告警等级字典数据(占位,待替换为真实值)
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+1, '占位-等级一', '1', 'alarm_level', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警等级'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_level' AND t.dict_value = '1');
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+2, '占位-等级二', '2', 'alarm_level', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警等级'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_level' AND t.dict_value = '2');
|
|
|
+
|
|
|
+INSERT INTO sys_dict_data (dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark)
|
|
|
+SELECT
|
|
|
+nextval(pg_get_serial_sequence('sys_dict_data', 'dict_code')),
|
|
|
+3, '占位-等级三', '3', 'alarm_level', '', '', 'N', '0', 'admin', now(), '占位, 待替换为真实告警等级'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_dict_data t WHERE t.dict_type = 'alarm_level' AND t.dict_value = '3');
|
|
|
+
|
|
|
+-- 3. 增加 事件查询 二级菜单(挂在 统计分析 下)
|
|
|
+INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
|
|
|
+SELECT
|
|
|
+(SELECT COALESCE(MAX(menu_id), 0) + 1 FROM sys_menu),
|
|
|
+'事件查询',
|
|
|
+(SELECT menu_id FROM sys_menu t WHERE t.menu_name = '统计分析' AND t.parent_id = 0),
|
|
|
+50, 'event-query', 'ufo/electricity/statanalysis/eventQuery', '', 'EventQuery', 1, 0, 'C', '0', '0', 'alarm:eventRecord:list', 'AlertOutlined', 'admin', now(), '', NULL, '事件查询页面'
|
|
|
+WHERE NOT EXISTS (SELECT 1 FROM sys_menu t WHERE t.menu_name = '事件查询');
|