39 lines
2.2 KiB
SQL
39 lines
2.2 KiB
SQL
SET NAMES utf8mb4;
|
|
-- 企业成员管理按钮权限增量;部署后应将权限按需授予企业管理员角色。
|
|
USE baiyue_iam;
|
|
|
|
-- 为存量数据库补齐企业内成员编号唯一约束,防止并发重复创建。
|
|
SET @member_no_index_sql = IF(
|
|
EXISTS(SELECT 1 FROM information_schema.statistics
|
|
WHERE table_schema = DATABASE() AND table_name = 'iam_membership'
|
|
AND index_name = 'uk_membership_tenant_no'),
|
|
'SELECT 1',
|
|
'ALTER TABLE iam_membership ADD UNIQUE KEY uk_membership_tenant_no (tenant_id, member_no)'
|
|
);
|
|
PREPARE member_no_index_stmt FROM @member_no_index_sql;
|
|
EXECUTE member_no_index_stmt;
|
|
DEALLOCATE PREPARE member_no_index_stmt;
|
|
|
|
INSERT INTO iam_permission
|
|
(id, tenant_id, app_code, permission_type, parent_id, permission_code, permission_name, sort_no, status, deleted)
|
|
VALUES
|
|
(5200023, 10001, 'MERCHANT', 'BUTTON', 5200020, 'merchant:member:edit', '编辑成员', 30, 'ACTIVE', 0),
|
|
(5200024, 10001, 'MERCHANT', 'BUTTON', 5200020, 'merchant:member:status', '启停成员', 40, 'ACTIVE', 0),
|
|
(5200025, 10001, 'MERCHANT', 'BUTTON', 5200020, 'merchant:member:reset-password', '重置成员密码', 50, 'ACTIVE', 0),
|
|
(5300023, 0, 'MERCHANT', 'BUTTON', 5300020, 'merchant:member:edit', '编辑成员', 30, 'ACTIVE', 0),
|
|
(5300024, 0, 'MERCHANT', 'BUTTON', 5300020, 'merchant:member:status', '启停成员', 40, 'ACTIVE', 0),
|
|
(5300025, 0, 'MERCHANT', 'BUTTON', 5300020, 'merchant:member:reset-password', '重置成员密码', 50, 'ACTIVE', 0)
|
|
ON DUPLICATE KEY UPDATE permission_name = VALUES(permission_name), status = VALUES(status), deleted = 0;
|
|
|
|
INSERT INTO iam_role_permission (role_id, permission_id, tenant_id)
|
|
SELECT 4000101, id, 10001 FROM iam_permission
|
|
WHERE tenant_id = 10001 AND permission_code IN
|
|
('merchant:member:edit', 'merchant:member:status', 'merchant:member:reset-password')
|
|
ON DUPLICATE KEY UPDATE tenant_id = VALUES(tenant_id);
|
|
|
|
INSERT INTO iam_role_permission (role_id, permission_id, tenant_id)
|
|
SELECT 4000100, id, 0 FROM iam_permission
|
|
WHERE tenant_id = 0 AND permission_code IN
|
|
('merchant:member:edit', 'merchant:member:status', 'merchant:member:reset-password')
|
|
ON DUPLICATE KEY UPDATE tenant_id = VALUES(tenant_id);
|