-- 员工合同 - 导入按钮权限(父菜单:员工合同 id=1063105) -- 动态 id(MAX(id)+1),避免与既有菜单撞车;可重复执行(幂等)。 SET @perm_exists := (SELECT COUNT(*) FROM system_menu WHERE permission = 'hrm:employee-contract:import'); SET @import_menu_id := IFNULL((SELECT MAX(id) FROM system_menu), 0) + 1; INSERT INTO system_menu (id, name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted) SELECT @import_menu_id, '合同导入', 'hrm:employee-contract:import', 3, 5, 1063105, '', '#', '', NULL, 0, 1, 0, 1, '1', NOW(), '1', NOW(), 0 FROM DUAL WHERE @perm_exists = 0; SET @menu_id := (SELECT id FROM system_menu WHERE permission = 'hrm:employee-contract:import'); SET @grant_exists := (SELECT COUNT(*) FROM system_role_menu WHERE role_id = 1 AND menu_id = @menu_id); INSERT INTO system_role_menu (role_id, menu_id, creator, create_time, updater, update_time, deleted) SELECT 1, @menu_id, '1', NOW(), '1', NOW(), 0 FROM DUAL WHERE @menu_id IS NOT NULL AND @grant_exists = 0;