| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242 |
- -- CRM 管理下增加四级分组目录,叶子菜单改挂到对应分组
- -- 产品管理 / 报价单管理 / 合同管理 / 客户管理
- -- 2026-10-04
- INSERT INTO `sys_menu` (
- `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`, `is_frame`,
- `visible`, `status`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`,
- `create_time`, `update_by`, `update_time`, `del_flag`
- )
- SELECT * FROM (
- SELECT
- 'CRM00000000000000000000000000010' AS `id`,
- '产品管理' AS `menu_name`,
- 'CRM00000000000000000000000000001' AS `parent_id`,
- 'M' AS `menu_type`,
- 'product-group' AS `path`,
- NULL AS `component`,
- NULL AS `perms`,
- 1 AS `is_frame`,
- '1' AS `visible`,
- '1' AS `status`,
- 'shanxia2.0' AS `tenant_no`,
- 1 AS `order_num`,
- 'CRM 产品管理分组' AS `remark`,
- 'system' AS `create_by`,
- '' AS `create_dept_id`,
- NOW() AS `create_time`,
- NULL AS `update_by`,
- NOW() AS `update_time`,
- 0 AS `del_flag`
- ) AS tmp
- WHERE NOT EXISTS (
- SELECT 1 FROM `sys_menu` WHERE `id` = 'CRM00000000000000000000000000010'
- );
- INSERT INTO `sys_menu` (
- `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`, `is_frame`,
- `visible`, `status`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`,
- `create_time`, `update_by`, `update_time`, `del_flag`
- )
- SELECT * FROM (
- SELECT
- 'CRM00000000000000000000000000020' AS `id`,
- '报价单管理' AS `menu_name`,
- 'CRM00000000000000000000000000001' AS `parent_id`,
- 'M' AS `menu_type`,
- 'quote-group' AS `path`,
- NULL AS `component`,
- NULL AS `perms`,
- 1 AS `is_frame`,
- '1' AS `visible`,
- '1' AS `status`,
- 'shanxia2.0' AS `tenant_no`,
- 2 AS `order_num`,
- 'CRM 报价单管理分组' AS `remark`,
- 'system' AS `create_by`,
- '' AS `create_dept_id`,
- NOW() AS `create_time`,
- NULL AS `update_by`,
- NOW() AS `update_time`,
- 0 AS `del_flag`
- ) AS tmp
- WHERE NOT EXISTS (
- SELECT 1 FROM `sys_menu` WHERE `id` = 'CRM00000000000000000000000000020'
- );
- INSERT INTO `sys_menu` (
- `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`, `is_frame`,
- `visible`, `status`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`,
- `create_time`, `update_by`, `update_time`, `del_flag`
- )
- SELECT * FROM (
- SELECT
- 'CRM00000000000000000000000000030' AS `id`,
- '合同管理' AS `menu_name`,
- 'CRM00000000000000000000000000001' AS `parent_id`,
- 'M' AS `menu_type`,
- 'contract-group' AS `path`,
- NULL AS `component`,
- NULL AS `perms`,
- 1 AS `is_frame`,
- '1' AS `visible`,
- '1' AS `status`,
- 'shanxia2.0' AS `tenant_no`,
- 3 AS `order_num`,
- 'CRM 合同管理分组' AS `remark`,
- 'system' AS `create_by`,
- '' AS `create_dept_id`,
- NOW() AS `create_time`,
- NULL AS `update_by`,
- NOW() AS `update_time`,
- 0 AS `del_flag`
- ) AS tmp
- WHERE NOT EXISTS (
- SELECT 1 FROM `sys_menu` WHERE `id` = 'CRM00000000000000000000000000030'
- );
- INSERT INTO `sys_menu` (
- `id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`, `is_frame`,
- `visible`, `status`, `tenant_no`, `order_num`, `remark`, `create_by`, `create_dept_id`,
- `create_time`, `update_by`, `update_time`, `del_flag`
- )
- SELECT * FROM (
- SELECT
- 'CRM00000000000000000000000000040' AS `id`,
- '客户管理' AS `menu_name`,
- 'CRM00000000000000000000000000001' AS `parent_id`,
- 'M' AS `menu_type`,
- 'customer-group' AS `path`,
- NULL AS `component`,
- NULL AS `perms`,
- 1 AS `is_frame`,
- '1' AS `visible`,
- '1' AS `status`,
- 'shanxia2.0' AS `tenant_no`,
- 4 AS `order_num`,
- 'CRM 客户管理分组' AS `remark`,
- 'system' AS `create_by`,
- '' AS `create_dept_id`,
- NOW() AS `create_time`,
- NULL AS `update_by`,
- NOW() AS `update_time`,
- 0 AS `del_flag`
- ) AS tmp
- WHERE NOT EXISTS (
- SELECT 1 FROM `sys_menu` WHERE `id` = 'CRM00000000000000000000000000040'
- );
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000010', `order_num` = 1, `update_time` = NOW()
- WHERE `id` = 'CRM00000000000000000000000000003' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000010', `order_num` = 2, `update_time` = NOW()
- WHERE `id` = 'CRM00000000000000000000000000002' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000020', `order_num` = 1, `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000010' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000020', `order_num` = 2, `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000016' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000020', `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000015' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000030', `order_num` = 1, `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000020' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000030', `order_num` = 2, `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000021' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000030', `order_num` = 3, `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000030' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000030', `update_time` = NOW()
- WHERE `id` = 'CRM3000000000000000000000000026' AND `del_flag` = 0;
- UPDATE `sys_menu`
- SET `parent_id` = 'CRM00000000000000000000000000040', `order_num` = 1, `update_time` = NOW()
- WHERE `id` = 'CRM1000000000000000000000000002' AND `del_flag` = 0;
- -- 已授权叶子的角色补上新分组目录,避免有子无父
- INSERT INTO `sys_role_menu` (
- `id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
- `create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
- )
- SELECT
- MD5(CONCAT(src.`role_id`, '-', src.`group_menu_id`)),
- src.`role_id`,
- src.`group_menu_id`,
- src.`tenant_no`,
- 0,
- NULL,
- src.`create_by`,
- '',
- NOW(),
- src.`create_by`,
- NOW(),
- 0
- FROM (
- SELECT DISTINCT
- rm.`role_id`,
- rm.`tenant_no`,
- rm.`create_by`,
- 'CRM00000000000000000000000000010' AS `group_menu_id`
- FROM `sys_role_menu` rm
- WHERE rm.`del_flag` = 0
- AND rm.`menu_id` IN (
- 'CRM00000000000000000000000000002',
- 'CRM00000000000000000000000000003'
- )
- UNION
- SELECT DISTINCT
- rm.`role_id`,
- rm.`tenant_no`,
- rm.`create_by`,
- 'CRM00000000000000000000000000020'
- FROM `sys_role_menu` rm
- WHERE rm.`del_flag` = 0
- AND rm.`menu_id` IN (
- 'CRM3000000000000000000000000010',
- 'CRM3000000000000000000000000015',
- 'CRM3000000000000000000000000016'
- )
- UNION
- SELECT DISTINCT
- rm.`role_id`,
- rm.`tenant_no`,
- rm.`create_by`,
- 'CRM00000000000000000000000000030'
- FROM `sys_role_menu` rm
- WHERE rm.`del_flag` = 0
- AND rm.`menu_id` IN (
- 'CRM3000000000000000000000000020',
- 'CRM3000000000000000000000000021',
- 'CRM3000000000000000000000000026',
- 'CRM3000000000000000000000000030'
- )
- UNION
- SELECT DISTINCT
- rm.`role_id`,
- rm.`tenant_no`,
- rm.`create_by`,
- 'CRM00000000000000000000000000040'
- FROM `sys_role_menu` rm
- WHERE rm.`del_flag` = 0
- AND rm.`menu_id` = 'CRM1000000000000000000000000002'
- ) src
- WHERE NOT EXISTS (
- SELECT 1
- FROM `sys_role_menu` exist
- WHERE exist.`role_id` = src.`role_id`
- AND exist.`menu_id` = src.`group_menu_id`
- AND exist.`del_flag` = 0
- );
|