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
| -- ============================================================
| -- 企业微信模块菜单与权限
| -- 目标库:mom-jssm(36.213.150.237:10000)
| --
| -- 作用:
| -- 1. 让 /wxcp/activity、/wxcp/notice 两个页面能在左侧菜单中出现
| -- (前端路由是菜单驱动的,没有菜单记录页面就访问不到)
| -- 2. 注册 @PreAuthorize 用到的权限标识,否则接口一律 403
| --
| -- 菜单类型:1 目录、2 菜单、3 按钮
| -- 编号段:6100000 起,与现有菜单不冲突
| --
| -- 幂等:先按编号删除再插入,可重复执行
| -- ============================================================
|
| DELETE FROM `system_menu` WHERE `id` BETWEEN 6100000 AND 6100999;
|
| -- ----------------------------
| -- 一级目录:企业微信
| -- ----------------------------
| INSERT INTO `system_menu`
| (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`,
| `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`)
| VALUES
| (6100000, '企业微信', '', 1, 80, 0, '/wxcp', 'ep:chat-dot-round', NULL, NULL,
| 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0');
|
| -- ----------------------------
| -- 活动管理
| -- ----------------------------
| INSERT INTO `system_menu`
| (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`,
| `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`)
| VALUES
| (6100001, '活动管理', '', 2, 1, 6100000, 'activity', 'ep:calendar', '/wxcp/activity/index', 'WxCpActivityList',
| 0, b'1', b'1', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100010, '活动查询', 'wxcp:activity:query', 3, 1, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100011, '活动新增', 'wxcp:activity:create', 3, 2, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100012, '活动修改', 'wxcp:activity:update', 3, 3, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100013, '活动删除', 'wxcp:activity:delete', 3, 4, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100014, '活动推送', 'wxcp:activity:push', 3, 5, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| -- 报名记录挂在活动菜单下,因为它只能从活动详情进入
| (6100015, '报名查询', 'wxcp:signup:query', 3, 6, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100016, '报名管理', 'wxcp:signup:update', 3, 7, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| -- 通讯录在推送弹窗里用,不单独建页面,但权限要注册
| (6100017, '通讯录查询', 'wxcp:member:query', 3, 8, 6100001, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0');
|
| -- ----------------------------
| -- 通知管理
| -- ----------------------------
| INSERT INTO `system_menu`
| (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`,
| `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`)
| VALUES
| (6100002, '通知管理', '', 2, 2, 6100000, 'notice', 'ep:bell', '/wxcp/notice/index', 'WxCpNoticeList',
| 0, b'1', b'1', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100020, '通知查询', 'wxcp:notice:query', 3, 1, 6100002, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100021, '通知新增', 'wxcp:notice:create', 3, 2, 6100002, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100022, '通知修改', 'wxcp:notice:update', 3, 3, 6100002, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100023, '通知删除', 'wxcp:notice:delete', 3, 4, 6100002, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0'),
| (6100024, '通知推送', 'wxcp:notice:push', 3, 5, 6100002, '', '', '', '', 0, b'1', b'0', b'1', 'admin', NOW(), 'admin', NOW(), b'0');
|
| -- ============================================================
| -- 角色授权
| --
| -- 分配惯例沿用现有模块(如售后管理):
| -- super_admin(1) 与 001(160) 拿「整个模块的全部菜单」
| -- 其他角色不自动授予,需要时在「系统管理 → 角色管理」里手动勾选
| --
| -- 注:super_admin 登录时代码会直接返回全部菜单,这里的映射是为了
| -- 让 system_role_menu 数据完整,与其它模块保持一致。
| -- ============================================================
|
| DELETE `rm` FROM `system_role_menu` `rm`
| WHERE `rm`.`role_id` IN (1, 160)
| AND `rm`.`menu_id` BETWEEN 6100000 AND 6100999;
|
| INSERT INTO `system_role_menu`
| (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`)
| SELECT `r`.`id`, `m`.`id`, 'admin', NOW(), 'admin', NOW(), b'0', 0
| FROM `system_role` `r`
| JOIN `system_menu` `m`
| ON `m`.`id` BETWEEN 6100000 AND 6100999
| AND `m`.`deleted` = b'0'
| WHERE `r`.`id` IN (1, 160)
| AND `r`.`deleted` = b'0';
|
| -- ============================================================
| -- 如需给其它角色开通,把上一条 INSERT 的 r.id IN (1, 160)
| -- 换成目标角色编号即可,例如:
| -- WHERE `r`.`id` IN (1, 160, 2) -- 追加给「普通角色」
| -- ============================================================
|
|