-- ============================================================================= -- 任务编号 2026092005 增加"中期功率预测"菜单(PostgreSQL, 幂等) -- 依赖表: data_medium_term_power_forecast_* (DDL 见 20260924_中期预报表.sql) -- ============================================================================= -- 1. 中期功率预测(工作台,挂在"功率预测"菜单下) 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 nextval(pg_get_serial_sequence('sys_menu', 'menu_id')), '中期功率预测', (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '功率预测'), 5, 'medium-term-power', 'ufo/electricity/forecast/MediumTermPowerForecasting', '', 'MediumTermPowerForecasting', 1, 0, 'C', '0', '0', 'electricity:forecast:mediumtermpower', 'area-chart', 'admin', now(), '', NULL, '中期功率预测菜单' WHERE NOT EXISTS (SELECT 1 FROM sys_menu t WHERE t.menu_name = '中期功率预测'); INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期功率预测') WHERE NOT EXISTS (SELECT 1 FROM sys_role_menu t WHERE t.role_id = 1 AND t.menu_id = (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期功率预测')); -- 2. 中期预测日报(挂在"数据报表"菜单下) 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 nextval(pg_get_serial_sequence('sys_menu', 'menu_id')), '中期预测日报', (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '数据报表'), 10, 'medium-term-forecast-daily', 'ufo/electricity/datareport/mediumTermForecastDailyReport', '', 'MediumTermForecastDailyReport', 1, 0, 'C', '0', '0', 'data:mediumTermForecastReport:daily', 'StockOutlined', 'admin', now(), '', NULL, '中期预测日报页面' WHERE NOT EXISTS (SELECT 1 FROM sys_menu t WHERE t.menu_name = '中期预测日报'); INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测日报') WHERE NOT EXISTS (SELECT 1 FROM sys_role_menu t WHERE t.role_id = 1 AND t.menu_id = (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测日报')); -- 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 nextval(pg_get_serial_sequence('sys_menu', 'menu_id')), '中期预测月报', (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '数据报表'), 11, 'medium-term-forecast-monthly', 'ufo/electricity/datareport/mediumTermForecastMonthlyReport', '', 'MediumTermForecastMonthlyReport', 1, 0, 'C', '0', '0', 'data:mediumTermForecastReport:monthly', 'LineChartOutlined', 'admin', now(), '', NULL, '中期预测月报页面' WHERE NOT EXISTS (SELECT 1 FROM sys_menu t WHERE t.menu_name = '中期预测月报'); INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测月报') WHERE NOT EXISTS (SELECT 1 FROM sys_role_menu t WHERE t.role_id = 1 AND t.menu_id = (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测月报')); -- 4. 中期预测年报 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 nextval(pg_get_serial_sequence('sys_menu', 'menu_id')), '中期预测年报', (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '数据报表'), 12, 'medium-term-forecast-yearly', 'ufo/electricity/datareport/mediumTermForecastYearlyReport', '', 'MediumTermForecastYearlyReport', 1, 0, 'C', '0', '0', 'data:mediumTermForecastReport:yearly', 'AreaChartOutlined', 'admin', now(), '', NULL, '中期预测年报页面' WHERE NOT EXISTS (SELECT 1 FROM sys_menu t WHERE t.menu_name = '中期预测年报'); INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测年报') WHERE NOT EXISTS (SELECT 1 FROM sys_role_menu t WHERE t.role_id = 1 AND t.menu_id = (SELECT menu_id FROM sys_menu t WHERE t.menu_name = '中期预测年报')); update "public"."sys_menu" set order_num = 5 where menu_name = '中期功率预测'; update "public"."sys_menu" set order_num = 6 where menu_name = '超短期功率预测'; update "public"."sys_menu" set order_num = 11 where menu_name = '中期预测日报'; update "public"."sys_menu" set order_num = 12 where menu_name = '中期预测月报'; update "public"."sys_menu" set order_num = 13 where menu_name = '中期预测年报'; update "public"."sys_menu" set order_num = 21 where menu_name = '超短期预测日报'; update "public"."sys_menu" set order_num = 22 where menu_name = '超短期预测月报'; update "public"."sys_menu" set order_num = 23 where menu_name = '超短期预测年报'; update "public"."sys_menu" set order_num = 31 where menu_name = '光伏电场累计日报'; update "public"."sys_menu" set order_num = 32 where menu_name = '光伏电场累计月报'; update "public"."sys_menu" set order_num = 33 where menu_name = '光伏电场累计年报'; update "public"."sys_menu" set order_num = 41 where menu_name = '光伏气象资源数据报表'; update "public"."sys_menu" set order_num = 51 where menu_name = '辐照度累计值报表';