106 lines
6.6 KiB
SQL
106 lines
6.6 KiB
SQL
SET NAMES utf8mb4;
|
|
|
|
-- Exclusive package menus under package management (套餐管理).
|
|
-- Idempotent: create if missing, rename/reparent if already present, drop obsolete top directory 专属报价.
|
|
|
|
SET @pkgParentId := (
|
|
SELECT menu_id FROM sys_menu
|
|
WHERE menu_id = 2200
|
|
OR (menu_name = N'套餐管理' AND parent_id = 0 AND menu_type = 'M')
|
|
ORDER BY CASE WHEN menu_id = 2200 THEN 0 ELSE 1 END, menu_id
|
|
LIMIT 1
|
|
);
|
|
|
|
-- Drop obsolete top-level directory (and role links)
|
|
DELETE FROM sys_role_menu WHERE menu_id = 2600;
|
|
DELETE FROM sys_menu
|
|
WHERE menu_id = 2600
|
|
OR (path = 'exclusive' AND parent_id = 0 AND menu_type = 'M' AND menu_name = N'专属报价');
|
|
|
|
-- List: 专属套餐
|
|
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, remark)
|
|
SELECT 2601, N'专属套餐', @pkgParentId, 2, 'quote', 'price/exclusive/exclusiveQuote', '', 'ExclusiveQuote', 1, 0, 'C', '0', '0', 'price:exclusive:list', 'list', 'admin', sysdate(), N'专属套餐列表'
|
|
FROM DUAL WHERE @pkgParentId IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2601 OR perms = 'price:exclusive:list');
|
|
|
|
UPDATE sys_menu
|
|
SET menu_name = N'专属套餐',
|
|
parent_id = @pkgParentId,
|
|
order_num = 2,
|
|
path = 'quote',
|
|
component = 'price/exclusive/exclusiveQuote',
|
|
route_name = 'ExclusiveQuote',
|
|
remark = N'专属套餐列表',
|
|
update_by = 'admin',
|
|
update_time = sysdate()
|
|
WHERE @pkgParentId IS NOT NULL AND (menu_id = 2601 OR perms = 'price:exclusive:list');
|
|
|
|
-- Hidden create / detail
|
|
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, remark)
|
|
SELECT 2609, N'专属套餐新建', @pkgParentId, 5, 'quoteCreate', 'price/exclusive/create', '', 'ExclusiveQuoteCreate', 1, 0, 'C', '1', '0', 'price:exclusive:add', '#', 'admin', sysdate(), N'专属套餐新建/编辑'
|
|
FROM DUAL WHERE @pkgParentId IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2609 OR path = 'quoteCreate');
|
|
|
|
UPDATE sys_menu
|
|
SET menu_name = N'专属套餐新建',
|
|
parent_id = @pkgParentId,
|
|
order_num = 5,
|
|
path = 'quoteCreate',
|
|
component = 'price/exclusive/create',
|
|
route_name = 'ExclusiveQuoteCreate',
|
|
remark = N'专属套餐新建/编辑',
|
|
update_by = 'admin',
|
|
update_time = sysdate()
|
|
WHERE @pkgParentId IS NOT NULL AND (menu_id = 2609 OR path = 'quoteCreate');
|
|
|
|
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, remark)
|
|
SELECT 2610, N'专属套餐详情', @pkgParentId, 6, 'quoteDetail', 'price/exclusive/detail', '', 'ExclusiveQuoteDetail', 1, 0, 'C', '1', '0', 'price:exclusive:query', '#', 'admin', sysdate(), N'专属套餐详情'
|
|
FROM DUAL WHERE @pkgParentId IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2610 OR path = 'quoteDetail');
|
|
|
|
UPDATE sys_menu
|
|
SET menu_name = N'专属套餐详情',
|
|
parent_id = @pkgParentId,
|
|
order_num = 6,
|
|
path = 'quoteDetail',
|
|
component = 'price/exclusive/detail',
|
|
route_name = 'ExclusiveQuoteDetail',
|
|
remark = N'专属套餐详情',
|
|
update_by = 'admin',
|
|
update_time = sysdate()
|
|
WHERE @pkgParentId IS NOT NULL AND (menu_id = 2610 OR path = 'quoteDetail');
|
|
|
|
-- Keep ordinary set create/detail order after list pages
|
|
UPDATE sys_menu SET order_num = 3, update_by = 'admin', update_time = sysdate() WHERE menu_id = 2208;
|
|
UPDATE sys_menu SET order_num = 4, update_by = 'admin', update_time = sysdate() WHERE menu_id = 2209;
|
|
|
|
-- Buttons under list
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2602, N'查询', 2601, 1, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:query', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2602 OR (parent_id = 2601 AND perms = 'price:exclusive:query' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2603, N'新增', 2601, 2, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:add', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2603 OR (parent_id = 2601 AND perms = 'price:exclusive:add' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2604, N'修改', 2601, 3, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:edit', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2604 OR (parent_id = 2601 AND perms = 'price:exclusive:edit' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2605, N'删除', 2601, 4, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:remove', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2605 OR (parent_id = 2601 AND perms = 'price:exclusive:remove' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2606, N'启停/审核', 2601, 5, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:audit', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2606 OR (parent_id = 2601 AND perms = 'price:exclusive:audit' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
|
SELECT 2607, N'强制改价', 2601, 6, '', NULL, 1, 0, 'F', '0', '0', 'price:exclusive:forceEdit', '#', 'admin', sysdate(), N''
|
|
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2607 OR (parent_id = 2601 AND perms = 'price:exclusive:forceEdit' AND menu_type = 'F'));
|
|
|
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
|
SELECT 1, m.menu_id FROM (
|
|
SELECT 2601 AS menu_id UNION SELECT 2602 UNION SELECT 2603
|
|
UNION SELECT 2604 UNION SELECT 2605 UNION SELECT 2606 UNION SELECT 2607
|
|
UNION SELECT 2609 UNION SELECT 2610
|
|
) m
|
|
WHERE NOT EXISTS (SELECT 1 FROM sys_role_menu rm WHERE rm.role_id = 1 AND rm.menu_id = m.menu_id);
|