-- 为 Admin / Customer 角色追加批量任务权限(幂等) -- RBAC 库执行;执行后登录用户需重新获取 token 或刷新权限缓存 SET @ADMIN_USER_ID = ( SELECT `Id` FROM `user` WHERE `Account` = 'admin' AND (`IsDeleted` = 0 OR `IsDeleted` IS NULL) LIMIT 1 ); SET @ADMIN_USER_ID = IFNULL( @ADMIN_USER_ID, '08de4226-3fd4-4a5c-83e5-70e164b15f2f' ); INSERT INTO `role_permission` (`Id`, `RoleId`, `PermissionCode`, `CreateUserId`, `CreateTime`) SELECT UUID(), r.`Id`, p.`Code`, @ADMIN_USER_ID, NOW() FROM `role` r CROSS JOIN ( SELECT 'Order.BatchJobs.Query' AS `Code` UNION ALL SELECT 'Order.BatchJobs.View' UNION ALL SELECT 'Order.BatchJobs.Retry' UNION ALL SELECT 'Order.BatchJobs.Cancel' ) p WHERE r.`Code` IN ('Admin', 'Customer') AND NOT EXISTS ( SELECT 1 FROM `role_permission` rp WHERE rp.`RoleId` = r.`Id` AND rp.`PermissionCode` = p.`Code` ); -- 清理已废弃的链路演练权限 DELETE FROM `role_permission` WHERE `PermissionCode` LIKE 'Order.LifecycleLab.%';