property_menu_data.sql
9.64 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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
-- ============================================================
-- 物业人员管理 - 菜单数据初始化SQL
-- 功能: 为Web端左侧菜单和Android端工作台提供菜单入口
-- 数据库: MicroCommunity
-- ============================================================
-- 使用方法:
-- 方案一(推荐): 登录Web后台 → 开发管理 → 手动添加菜单目录/菜单组/菜单项
-- 方案二: 直接执行此SQL(注意先检查ID是否冲突)
-- ============================================================
-- ============================================================
-- 方案一:通过Web后台界面添加(推荐,无需执行SQL)
-- ============================================================
-- 1. 登录系统 -> 开发管理 -> 菜单目录 -> 新增目录:
-- 名称: 人员管理, URL: #, 序号: 99, 是否显示: Y
-- 2. 开发管理 -> 菜单组 -> 新增菜单组(选择刚创建的目录):
-- 名称: 轨迹监控, 图标: el-icon-map-location, 序号: 1
-- 名称: 打卡管理, 图标: el-icon-time, 序号: 2
-- 名称: 保安巡更, 图标: el-icon-warning, 序号: 3
-- 名称: 保洁作业, 图标: el-icon-brush, 序号: 4
-- 名称: 工单管理, 图标: el-icon-s-tools, 序号: 5
-- 名称: 人员管理, 图标: el-icon-user, 序号: 6
-- 3. 开发管理 -> 菜单 -> 为每个菜单组新增菜单项:
-- 轨迹监控 → 轨迹查询: /property/track
-- 打卡管理 → 打卡记录: /property/attendance
-- 保安巡更 → 巡更记录: /property/patrol
-- 保洁作业 → 作业记录: /property/cleaning
-- 工单管理 → 工单列表: /property/repair
-- 人员管理 → 人员列表: /property/staff
-- 工单管理 → 提交工单: /property/submitRepair (APP端用)
-- ============================================================
-- 方案二:直接执行SQL(根据实际store_type调整)
-- ============================================================
-- 注意事项:
-- 1. store_type 值根据实际项目确定,常见值: 800900000001(物业)
-- 2. 执行前先查询确认ID不冲突
-- 3. 执行后可能需要刷新页面或重新登录
-- 设置变量(请根据实际数据库调整store_type)
SET @store_type = '800900000003'; -- 物业类型,根据实际情况调整
SET @ca_id = '20260511001';
-- ============================================================
-- 1. 创建菜单目录(Web端顶部导航标签)
-- ============================================================
-- 表结构: m_menu_catalog(store_type, ca_id, name, icon, seq, url, is_show, priv_id)
INSERT INTO m_menu_catalog (store_type, ca_id, name, icon, seq, url, is_show, priv_id)
VALUES (@store_type, @ca_id, '人员管理', 'el-icon-s-custom', 99, '#', 'Y', '')
ON DUPLICATE KEY UPDATE name = '人员管理';
-- ============================================================
-- 2. 创建菜单组(Web端左侧一级菜单 / Android工作台分组)
-- ============================================================
-- 表结构: m_menu_group(g_id, name, icon, label, seq, description, group_type, store_type)
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511101', '轨迹监控', 'el-icon-map-location', '轨迹监控', 1, '物业人员轨迹监控', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '轨迹监控';
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511102', '打卡管理', 'el-icon-time', '打卡管理', 2, '上下班打卡记录管理', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '打卡管理';
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511103', '保安巡更', 'el-icon-warning', '保安巡更', 3, '保安巡更记录管理', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '保安巡更';
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511104', '保洁作业', 'el-icon-brush', '保洁作业', 4, '保洁作业记录管理', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '保洁作业';
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511105', '工单管理', 'el-icon-s-tools', '工单管理', 5, '维修工单管理', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '工单管理';
INSERT INTO m_menu_group (g_id, name, icon, label, seq, description, group_type, store_type)
VALUES ('20260511106', '人员管理', 'el-icon-user', '人员管理', 6, '物业人员列表管理', 'P_WEB', @store_type)
ON DUPLICATE KEY UPDATE name = '人员管理';
-- ============================================================
-- 3. 关联菜单目录与菜单组(目录与菜单组的映射关系)
-- ============================================================
-- 表结构: m_menu_group_catalog(store_type, g_id, gc_id, ca_id)
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511101', CONCAT('GC20260511101'), @ca_id);
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511102', CONCAT('GC20260511102'), @ca_id);
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511103', CONCAT('GC20260511103'), @ca_id);
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511104', CONCAT('GC20260511104'), @ca_id);
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511105', CONCAT('GC20260511105'), @ca_id);
INSERT INTO m_menu_group_catalog (store_type, g_id, gc_id, ca_id)
VALUES (@store_type, '20260511106', CONCAT('GC20260511106'), @ca_id);
-- ============================================================
-- 3.5 关联菜单组与小区(物业类型必须配置,否则菜单不显示)
-- ============================================================
-- 表结构: m_menu_group_community(g_id, gc_id, name, community_name, community_id)
-- 将菜单组分配到指定小区,支持不同小区看到不同的菜单
-- 根据实际 community_id 和 community_name 调整
INSERT IGNORE INTO m_menu_group_community (g_id, gc_id, name, community_name, community_id)
SELECT mg.g_id, CONCAT('GC_CM_', mg.g_id), mg.name, '请修改为实际小区名称', '请修改为实际community_id'
FROM m_menu_group mg
WHERE mg.g_id IN ('20260511101','20260511102','20260511103','20260511104','20260511105','20260511106')
AND mg.store_type = @store_type;
-- ============================================================
-- 4. 创建菜单项(子菜单,对应具体页面路由)
-- ============================================================
-- 表结构: m_menu(m_id, name, g_id, url, seq, p_id, description, is_show)
-- url 格式: Web端用 /property/xxx,Android端通过 href.contains("keyword") 匹配路由
-- 轨迹监控 -> 轨迹查询
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511201', '轨迹查询', '20260511101', '/property/track', 1, '', '查看人员历史行动轨迹', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/track';
-- 打卡管理 -> 打卡记录
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511202', '打卡记录', '20260511102', '/property/attendance', 1, '', '查看上下班打卡记录', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/attendance';
-- 保安巡更 -> 巡更记录
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511203', '巡更记录', '20260511103', '/property/patrol', 1, '', '查看保安巡更记录', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/patrol';
-- 保洁作业 -> 作业记录
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511204', '作业记录', '20260511104', '/property/cleaning', 1, '', '查看保洁作业记录', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/cleaning';
-- 工单管理 -> 工单列表
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511205', '工单列表', '20260511105', '/property/repair', 1, '', '维修工单管理', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/repair';
-- 工单管理 -> 提交工单(Android端使用)
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511206', '提交工单', '20260511105', '/property/submitRepair', 2, '', '提交维修工单(APP端使用)', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/submitRepair';
-- 人员管理 -> 人员列表
INSERT INTO m_menu (m_id, name, g_id, url, seq, p_id, description, is_show)
VALUES ('20260511207', '人员列表', '20260511106', '/property/staff', 1, '', '物业人员列表', 'Y')
ON DUPLICATE KEY UPDATE url = '/property/staff';
-- ============================================================
-- 5. 创建权限(p_privilege表)- 菜单与权限关联
-- ============================================================
-- 表结构: p_privilege(p_id, name, m_id, domain, status_cd)
INSERT IGNORE INTO p_privilege (p_id, name, m_id, domain, status_cd)
SELECT CONCAT('PRIV', m_id), name, m_id, @store_type, '0'
FROM m_menu WHERE g_id IN ('20260511101','20260511102','20260511103','20260511104','20260511105','20260511106');
-- ============================================================
-- 验证SQL:执行后查询确认
-- ============================================================
-- SELECT * FROM m_menu_catalog WHERE ca_id = @ca_id;
-- SELECT * FROM m_menu_group WHERE g_id LIKE '202605111%';
-- SELECT * FROM m_menu_group_catalog WHERE ca_id = @ca_id;
-- SELECT * FROM m_menu WHERE g_id LIKE '202605111%';