From cc52520bc199219fad99e66a8bf4f9228e56430a Mon Sep 17 00:00:00 2001 From: wuzilong <704541015@qq.com> Date: Sun, 1 Nov 2026 19:03:02 +0800 Subject: [PATCH] =?UTF-8?q?fix(pl):=20=E5=85=BC=E5=AE=B9=E8=AF=81=E4=BB=B6?= =?UTF-8?q?=E5=88=86=E7=BB=84=E5=B7=B2=E5=88=A0=E9=99=A4=E7=9A=84=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E8=BF=81=E7=A7=BB=E4=BB=A5=E5=AE=8C=E6=95=B4=E5=BB=BA?= =?UTF-8?q?=E7=AB=8B=E6=B5=8B=E8=AF=95=E5=85=A5=E5=8F=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2026-11-01-pl-quota-cert-menus.sql | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/docs/sql/migrations/2026-11-01-pl-quota-cert-menus.sql b/docs/sql/migrations/2026-11-01-pl-quota-cert-menus.sql index c11dcb4d9..902a2536e 100644 --- a/docs/sql/migrations/2026-11-01-pl-quota-cert-menus.sql +++ b/docs/sql/migrations/2026-11-01-pl-quota-cert-menus.sql @@ -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,