-- 仓储模块 + 店铺授权/订单 RBAC 权限(幂等) -- RBAC 库执行;执行后用户需重新登录或刷新权限缓存 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 'Warehouse.Sku.Query' AS `Code` UNION ALL SELECT 'Warehouse.Sku.Save' UNION ALL SELECT 'Warehouse.Sku.Delete' UNION ALL SELECT 'Warehouse.Inventory.Query' UNION ALL SELECT 'Warehouse.Inventory.Relocate' UNION ALL SELECT 'Warehouse.Parcel.Query' UNION ALL SELECT 'Warehouse.Parcel.Save' UNION ALL SELECT 'Warehouse.Parcel.Delete' UNION ALL SELECT 'Warehouse.InboundNotice.Query' UNION ALL SELECT 'Warehouse.InboundNotice.Save' UNION ALL SELECT 'Warehouse.InboundNotice.Delete' UNION ALL SELECT 'Order.PlatformStore.Query' UNION ALL SELECT 'Order.PlatformStore.Save' UNION ALL SELECT 'Order.PlatformStore.Delete' UNION ALL SELECT 'Order.PlatformStore.Auth' UNION ALL SELECT 'Order.PlatformStoreOrder.Query' UNION ALL SELECT 'Order.PlatformStoreOrder.MatchInventory' UNION ALL SELECT 'Order.PlatformStoreOrder.ToggleSuspend' UNION ALL SELECT 'Order.PlatformStoreOrder.Delete' ) 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` );