53 lines
2.1 KiB
SQL
53 lines
2.1 KiB
SQL
-- 客户尺寸计算配置权限;仅用于平台后台查看和维护,不控制内部初始化接口。
|
|
USE baiyue_iam;
|
|
SET NAMES utf8mb4;
|
|
|
|
DROP PROCEDURE IF EXISTS migrate_customer_dimension_config_permissions;
|
|
DELIMITER $$
|
|
CREATE PROCEDURE migrate_customer_dimension_config_permissions()
|
|
BEGIN
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM iam_permission
|
|
WHERE (id = 5102111 AND permission_code <> 'firstleg:dimension-config:view')
|
|
OR (id = 5102112 AND permission_code <> 'firstleg:dimension-config:edit')
|
|
OR (permission_code = 'firstleg:dimension-config:view' AND id <> 5102111)
|
|
OR (permission_code = 'firstleg:dimension-config:edit' AND id <> 5102112)
|
|
) THEN
|
|
SIGNAL SQLSTATE '45000'
|
|
SET MESSAGE_TEXT = 'customer dimension config permission id/code conflict';
|
|
END IF;
|
|
|
|
INSERT INTO iam_permission
|
|
(id, tenant_id, app_code, permission_type, parent_id, permission_code,
|
|
permission_name, route_path, http_method, sort_no, status, built_in, deleted)
|
|
VALUES
|
|
(5102111, 0, 'PLATFORM', 'BUTTON', 5100010,
|
|
'firstleg:dimension-config:view', '查看客户尺寸计算配置', NULL, NULL, 90, 'ACTIVE', 1, 0),
|
|
(5102112, 0, 'PLATFORM', 'BUTTON', 5100010,
|
|
'firstleg:dimension-config:edit', '维护客户尺寸计算配置', NULL, NULL, 100, 'ACTIVE', 1, 0)
|
|
ON DUPLICATE KEY UPDATE
|
|
permission_name = VALUES(permission_name), parent_id = VALUES(parent_id),
|
|
status = 'ACTIVE', built_in = 1, deleted = 0;
|
|
|
|
INSERT IGNORE INTO iam_role_permission (role_id, permission_id, tenant_id)
|
|
SELECT role.id, permission.id, role.tenant_id
|
|
FROM iam_role role
|
|
JOIN iam_permission permission
|
|
ON permission.tenant_id = 0
|
|
AND permission.app_code = 'PLATFORM'
|
|
WHERE role.tenant_id = 0
|
|
AND role.app_code = 'PLATFORM'
|
|
AND (
|
|
(role.role_code = 'PLATFORM_ADMIN'
|
|
AND permission.permission_code IN (
|
|
'firstleg:dimension-config:view', 'firstleg:dimension-config:edit'))
|
|
OR (role.role_code = 'ORDER_OPERATOR'
|
|
AND permission.permission_code = 'firstleg:dimension-config:view')
|
|
);
|
|
END$$
|
|
DELIMITER ;
|
|
|
|
CALL migrate_customer_dimension_config_permissions();
|
|
DROP PROCEDURE IF EXISTS migrate_customer_dimension_config_permissions;
|