-- ???? + ????/?? 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.BinLocation.Query' UNION ALL SELECT 'Warehouse.BinLocation.Save' 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.ConfirmReceive' 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` );