This commit is contained in:
zhouhefeng
2026-05-28 18:31:36 +08:00
parent daac940f3f
commit 7ee1c4fbb5
112 changed files with 9837 additions and 273 deletions
@@ -0,0 +1,64 @@
-- Home work template menu. Prefer a sibling of sys.homeActivity, then sys.manager, then sys.
INSERT INTO sys_menu (
id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled,
permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt,
delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService
)
SELECT
'e6ed122326a8492fa7f415f97eaf4f01',
parent.id,
CONCAT(parent.path, LPAD(IFNULL(child.maxNo, 0) + 1, 4, '0')),
'Work Template',
'Work Template',
'menu',
'/platform/sys/worktemplate',
'data-pjax',
'',
1,
0,
'sys.worktemplate',
NULL,
IFNULL(child.maxLocation, 0) + 1,
0,
'',
UNIX_TIMESTAMP(NOW()) * 1000,
'',
UNIX_TIMESTAMP(NOW()) * 1000,
0,
'PC',
NULL,
NULL,
'g',
0,
0
FROM (
SELECT p.*
FROM sys_menu p
WHERE p.id = (SELECT h.parentId FROM sys_menu h WHERE h.permission = 'sys.homeActivity' LIMIT 1)
OR p.permission IN ('sys.manager', 'sys')
ORDER BY
CASE
WHEN p.id = (SELECT h.parentId FROM sys_menu h WHERE h.permission = 'sys.homeActivity' LIMIT 1) THEN 0
WHEN p.permission = 'sys.manager' THEN 1
ELSE 2
END
LIMIT 1
) parent
LEFT JOIN (
SELECT parentId,
MAX(CAST(RIGHT(path, 4) AS UNSIGNED)) AS maxNo,
MAX(location) AS maxLocation
FROM sys_menu
GROUP BY parentId
) child ON child.parentId = parent.id
WHERE NOT EXISTS (
SELECT 1 FROM sys_menu WHERE permission = 'sys.worktemplate'
);
INSERT INTO sys_role_menu (roleId, menuId)
SELECT r.id, m.id
FROM sys_role r
JOIN sys_menu m ON m.permission = 'sys.worktemplate'
LEFT JOIN sys_role_menu rm ON rm.roleId = r.id AND rm.menuId = m.id
WHERE r.code = 'SYSADMIN'
AND rm.roleId IS NULL;