fix(pl): 兼容证件分组已删除的菜单迁移以完整建立测试入口。

This commit is contained in:
wuzilong committed 2026-11-01 19:03:02 +08:00
1 parent ec4ada4253
commit cc52520bc1
1 file changed
+10 -8
@@ -3,23 +3,25 @@
SET NAMES utf8mb4;
START TRANSACTION;
-- 旧证件分组已删除或不存在时,沿用有效运输根目录,不恢复被删除的分组。
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_time,del_flag
)
SELECT target.id,target.name,folder.id,'C',target.path,target.component,target.perms,1,'1','1',
folder.tenant_no,target.sort_no,'工单#4:共享证件及独立资料','system','',NOW(),NOW(),0
FROM sys_menu folder
JOIN sys_menu parent ON parent.id=folder.parent_id AND parent.tenant_no=folder.tenant_no AND parent.del_flag=0
JOIN sys_menu root ON root.id=parent.parent_id AND root.tenant_no=folder.tenant_no AND root.del_flag=0
SELECT target.id,target.name,COALESCE(folder.id,parent.id),'C',target.path,target.component,target.perms,1,'1','1',
parent.tenant_no,target.sort_no,'工单#4:共享证件及独立资料','system','',NOW(),NOW(),0
FROM sys_menu parent
JOIN sys_menu root ON root.id=parent.parent_id AND root.tenant_no=parent.tenant_no AND root.del_flag=0
LEFT JOIN sys_menu folder ON folder.id='PL_GROUP_CERT' AND folder.parent_id=parent.id
AND folder.tenant_no=parent.tenant_no AND folder.del_flag=0
CROSS JOIN (
SELECT 'PL_QUOTA_CERT' id,'购买证与运输证' name,'quota-cert' path,'pl/quota-cert/index' component,'pl:quota-cert:list' perms,2 sort_no
UNION ALL SELECT 'PL_LEGAL_USE_DOCUMENT','合法使用证明','legal-use-document','pl/legal-use-document/index','pl:legal-use-document:list',3
) target
WHERE folder.id='PL_GROUP_CERT' AND folder.del_flag=0 AND folder.tenant_no='shanxia2.0'
AND parent.id='PL_MENU_ROOT' AND root.path='/web' AND root.parent_id='0'
WHERE parent.id='PL_MENU_ROOT' AND parent.del_flag=0 AND parent.tenant_no='shanxia2.0'
AND root.path='/web' AND root.parent_id='0'
AND NOT EXISTS (SELECT 1 FROM sys_menu existing WHERE existing.id=target.id
OR (existing.tenant_no=folder.tenant_no AND existing.perms=target.perms));
OR (existing.tenant_no=parent.tenant_no AND existing.perms=target.perms));
INSERT INTO sys_menu (
id,menu_name,parent_id,menu_type,path,component,perms,is_frame,visible,status,