46 lines
1.7 KiB
SQL
46 lines
1.7 KiB
SQL
-- ???? + ????/?? 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`
|
|
);
|