-- 全局基础设置:组织架构、人员管理、职位管理 -- 三项功能使用统一组织数据,统一归入全局“基础设置”,不再隶属 OA 或 ERP。 -- views:[2] 租户后台;type:1-目录,2-页面。 -- 可重复执行。最后会删除 OA / ERP 下的历史重复页面菜单。 -- 1. 确保全局“基础设置”目录存在 INSERT INTO `yz_system_menu` (`pid`, `title`, `path`, `component_path`, `icon`, `sort`, `status`, `is_visible`, `views`, `type`, `remark`) SELECT 0, '基础设置', '/basic-settings', '', 'Setting', 20, 1, 1, '[2]', 1, '全局基础数据维护' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM (SELECT * FROM `yz_system_menu`) AS t WHERE t.`path` = '/basic-settings' ); SET @basic_settings_pid := ( SELECT `id` FROM `yz_system_menu` WHERE `path` = '/basic-settings' ORDER BY `id` LIMIT 1 ); -- 2. 创建全局入口 INSERT INTO `yz_system_menu` (`pid`, `title`, `path`, `component_path`, `icon`, `sort`, `status`, `is_visible`, `views`, `type`, `remark`) SELECT @basic_settings_pid, '组织架构', '/basic-settings/organization', '/basicSettings/organization/index.vue', 'OfficeBuilding', 1, 1, 1, '[2]', 2, '全局组织架构维护,与所有业务模块共用' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM (SELECT * FROM `yz_system_menu`) AS t WHERE t.`path` = '/basic-settings/organization' ); INSERT INTO `yz_system_menu` (`pid`, `title`, `path`, `component_path`, `icon`, `sort`, `status`, `is_visible`, `views`, `type`, `remark`) SELECT @basic_settings_pid, '人员管理', '/basic-settings/employee', '/basicSettings/employee/index.vue', 'User', 2, 1, 1, '[2]', 2, '全局人员维护,与所有业务模块共用' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM (SELECT * FROM `yz_system_menu`) AS t WHERE t.`path` = '/basic-settings/employee' ); INSERT INTO `yz_system_menu` (`pid`, `title`, `path`, `component_path`, `icon`, `sort`, `status`, `is_visible`, `views`, `type`, `remark`) SELECT @basic_settings_pid, '职位管理', '/basic-settings/position', '/basicSettings/position/index.vue', 'Postcard', 3, 1, 1, '[2]', 2, '全局职位维护,与所有业务模块共用' FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM (SELECT * FROM `yz_system_menu`) AS t WHERE t.`path` = '/basic-settings/position' ); -- 3. 修正已存在的全局入口 UPDATE `yz_system_menu` SET `pid` = @basic_settings_pid, `title` = '组织架构', `component_path` = '/basicSettings/organization/index.vue', `icon` = 'OfficeBuilding', `sort` = 1, `status` = 1, `is_visible` = 1, `views` = '[2]', `type` = 2, `remark` = '全局组织架构维护,与所有业务模块共用' WHERE `path` = '/basic-settings/organization'; UPDATE `yz_system_menu` SET `pid` = @basic_settings_pid, `title` = '人员管理', `component_path` = '/basicSettings/employee/index.vue', `icon` = 'User', `sort` = 2, `status` = 1, `is_visible` = 1, `views` = '[2]', `type` = 2, `remark` = '全局人员维护,与所有业务模块共用' WHERE `path` = '/basic-settings/employee'; UPDATE `yz_system_menu` SET `pid` = @basic_settings_pid, `title` = '职位管理', `component_path` = '/basicSettings/position/index.vue', `icon` = 'Postcard', `sort` = 3, `status` = 1, `is_visible` = 1, `views` = '[2]', `type` = 2, `remark` = '全局职位维护,与所有业务模块共用' WHERE `path` = '/basic-settings/position'; -- 4. 删除历史 OA / ERP 下的重复页面入口,不删除模块目录本身。 DELETE FROM `yz_system_menu` WHERE `path` IN ( '/apps/erp/organization', '/apps/erp/employee', '/apps/erp/position', '/apps/oa/organization', '/apps/oa/employee', '/apps/oa/position' );