监控中心_重复充值审计菜单.sql
5.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
-- =============================================================================
-- 监控中心 + 重复充值审计菜单
-- 说明:
-- 1. 新建一级菜单「监控中心」及子菜单「重复充值审计」
-- 2. 页面路径:views/monitorCenter/duplicate-recharge-audit/index.vue
-- 3. 授权给系统管理员角色;其他角色需在菜单权限中另行勾选
-- 4. 脚本可重复执行
-- =============================================================================
SET @AdminRoleId = '94e3a9bb0fce4547886972998fddba1c';
SET @MonitorCenterId = 'monitor-center-root-lq';
SET @DuplicateAuditId = 'monitor-duplicate-recharge-audit-lq';
-- 一级:监控中心
INSERT INTO BASE_MODULE (
F_Id, F_ParentId, F_Type, F_FullName, F_EnCode, F_UrlAddress, F_Icon,
F_SortCode, F_EnabledMark, F_Category, F_DeleteMark, F_LinkTarget,
F_PropertyJson, F_IsButtonAuthorize, F_IsColumnAuthorize, F_IsDataAuthorize,
F_IsFormAuthorize, F_CreatorTime, F_CreatorUserId
)
SELECT
@MonitorCenterId, '-1', 1, '监控中心', 'monitorCenter',
'', 'icon-ym icon-ym-sysMonitor',
6, 1, 'Web', NULL, '_self',
'{"moduleId":"","iconBackgroundColor":"","isTree":0}',
0, 0, 0, 0, NOW(), 'admin'
FROM (SELECT 1) AS seed
WHERE NOT EXISTS (
SELECT 1 FROM BASE_MODULE
WHERE F_EnCode = 'monitorCenter' AND F_Category = 'Web' AND F_DeleteMark IS NULL
);
SELECT F_Id INTO @ActualMonitorCenterId
FROM BASE_MODULE
WHERE F_EnCode = 'monitorCenter' AND F_Category = 'Web' AND F_DeleteMark IS NULL
LIMIT 1;
UPDATE BASE_MODULE
SET F_ParentId = '-1',
F_Type = 1,
F_FullName = '监控中心',
F_UrlAddress = '',
F_Icon = 'icon-ym icon-ym-sysMonitor',
F_SortCode = 6,
F_EnabledMark = 1,
F_LastModifyTime = NOW(),
F_LastModifyUserId = 'admin'
WHERE F_Id = @ActualMonitorCenterId;
-- 二级:重复充值审计
INSERT INTO BASE_MODULE (
F_Id, F_ParentId, F_Type, F_FullName, F_EnCode, F_UrlAddress, F_Icon,
F_SortCode, F_EnabledMark, F_Category, F_DeleteMark, F_LinkTarget,
F_PropertyJson, F_IsButtonAuthorize, F_IsColumnAuthorize, F_IsDataAuthorize,
F_IsFormAuthorize, F_CreatorTime, F_CreatorUserId
)
SELECT
@DuplicateAuditId, @ActualMonitorCenterId, 2, '重复充值审计', 'duplicateRechargeAudit',
'monitorCenter/duplicate-recharge-audit', 'icon-ym icon-ym-generator-warning',
1, 1, 'Web', NULL, '_self',
'{"moduleId":"","iconBackgroundColor":"","isTree":0}',
1, 0, 1, 0, NOW(), 'admin'
FROM (SELECT 1) AS seed
WHERE @ActualMonitorCenterId IS NOT NULL
AND NOT EXISTS (
SELECT 1 FROM BASE_MODULE
WHERE F_EnCode = 'duplicateRechargeAudit' AND F_Category = 'Web' AND F_DeleteMark IS NULL
);
SELECT F_Id INTO @ActualDuplicateAuditId
FROM BASE_MODULE
WHERE F_EnCode = 'duplicateRechargeAudit' AND F_Category = 'Web' AND F_DeleteMark IS NULL
LIMIT 1;
UPDATE BASE_MODULE
SET F_ParentId = @ActualMonitorCenterId,
F_Type = 2,
F_FullName = '重复充值审计',
F_UrlAddress = 'monitorCenter/duplicate-recharge-audit',
F_Icon = 'icon-ym icon-ym-generator-warning',
F_SortCode = 1,
F_EnabledMark = 1,
F_LastModifyTime = NOW(),
F_LastModifyUserId = 'admin'
WHERE F_Id = @ActualDuplicateAuditId
AND @ActualMonitorCenterId IS NOT NULL;
-- 授权:系统管理员
DELETE FROM BASE_AUTHORIZE
WHERE F_ItemType = 'module'
AND F_ObjectType = 'Role'
AND F_ObjectId = @AdminRoleId
AND F_ItemId IN (@ActualMonitorCenterId, @ActualDuplicateAuditId);
INSERT INTO BASE_AUTHORIZE (
F_Id, F_ItemType, F_ItemId, F_ObjectType, F_ObjectId, F_SortCode, F_CreatorTime, F_CreatorUserId
)
SELECT REPLACE(UUID(), '-', ''), 'module', @ActualMonitorCenterId, 'Role', @AdminRoleId, 1, NOW(), 'admin'
FROM (SELECT 1) AS seed
WHERE @ActualMonitorCenterId IS NOT NULL;
INSERT INTO BASE_AUTHORIZE (
F_Id, F_ItemType, F_ItemId, F_ObjectType, F_ObjectId, F_SortCode, F_CreatorTime, F_CreatorUserId
)
SELECT REPLACE(UUID(), '-', ''), 'module', @ActualDuplicateAuditId, 'Role', @AdminRoleId, 1, NOW(), 'admin'
FROM (SELECT 1) AS seed
WHERE @ActualDuplicateAuditId IS NOT NULL;
-- 同步给已拥有「事业部战略决策」菜单的角色(便于事业部运营直接看到)
INSERT INTO BASE_AUTHORIZE (
F_Id, F_ItemType, F_ItemId, F_ObjectType, F_ObjectId, F_SortCode, F_CreatorTime, F_CreatorUserId
)
SELECT REPLACE(UUID(), '-', ''), 'module', @ActualMonitorCenterId, 'Role', a.F_ObjectId, 1, NOW(), 'admin'
FROM BASE_AUTHORIZE a
INNER JOIN BASE_MODULE m ON a.F_ItemId = m.F_Id
WHERE a.F_ItemType = 'module'
AND a.F_ObjectType = 'Role'
AND m.F_EnCode = 'sybzljc'
AND m.F_DeleteMark IS NULL
AND @ActualMonitorCenterId IS NOT NULL
AND NOT EXISTS (
SELECT 1 FROM BASE_AUTHORIZE x
WHERE x.F_ItemId = @ActualMonitorCenterId
AND x.F_ObjectType = 'Role'
AND x.F_ObjectId = a.F_ObjectId
)
GROUP BY a.F_ObjectId;
INSERT INTO BASE_AUTHORIZE (
F_Id, F_ItemType, F_ItemId, F_ObjectType, F_ObjectId, F_SortCode, F_CreatorTime, F_CreatorUserId
)
SELECT REPLACE(UUID(), '-', ''), 'module', @ActualDuplicateAuditId, 'Role', a.F_ObjectId, 1, NOW(), 'admin'
FROM BASE_AUTHORIZE a
INNER JOIN BASE_MODULE m ON a.F_ItemId = m.F_Id
WHERE a.F_ItemType = 'module'
AND a.F_ObjectType = 'Role'
AND m.F_EnCode = 'sybzljc'
AND m.F_DeleteMark IS NULL
AND @ActualDuplicateAuditId IS NOT NULL
AND NOT EXISTS (
SELECT 1 FROM BASE_AUTHORIZE x
WHERE x.F_ItemId = @ActualDuplicateAuditId
AND x.F_ObjectType = 'Role'
AND x.F_ObjectId = a.F_ObjectId
)
GROUP BY a.F_ObjectId;