xiaoyi
10 天以前 fae95228037f0c1304c1917ae5fff452f2160c5a
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
-- ============================================================
-- 电力数转第十五阶段:工时统计(HRM)+ 供电参数比对校验(MES)
-- 依据 需求文档.xlsx 人力资源2「工时统计」、质量管理5「供电参数比对校验」
-- 幂等:CREATE TABLE IF NOT EXISTS / ON DUPLICATE KEY UPDATE / LEFT JOIN 守卫
-- ============================================================
 
-- 1. 菜单
-- 1.1 工时统计(父 6001 人力资源)
-- 1.2 参数比对校验(父 5300 设备管理,接口复用 mes:dv-telemetry:query,无需新增按钮)
-- ============================================================
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
(1065330, '工时统计', '', 2, 2, 6001, 'work-hour-statistics', 'ep:clock', 'hrm/workhour/index', 'HrmWorkHourStatistics', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
(1065331, '工时统计查询', 'hrm:work-hour-statistics:query', 3, 1, 1065330, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
(1065340, '参数比对校验', '', 2, 3, 5300, 'parameter-check', 'ep:data-analysis', 'mes/dv/telemetry/check', 'MesDvTelemetryCheck', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0')
ON DUPLICATE KEY UPDATE `name` = VALUES(`name`);
 
-- 2. 角色授权(普通角色2 / 租户管理员109、111)
-- ============================================================
INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`)
SELECT r.role_id, m.menu_id, '1', NOW(), '1', NOW(), b'0', 1
FROM (SELECT 2 AS role_id UNION ALL SELECT 109 UNION ALL SELECT 111) r
CROSS JOIN (SELECT 1065330 AS menu_id UNION ALL SELECT 1065331 UNION ALL SELECT 1065340) m
LEFT JOIN `system_role_menu` existing ON existing.role_id = r.role_id AND existing.menu_id = m.menu_id AND existing.deleted = b'0'
WHERE existing.id IS NULL;
 
-- ==================== 执行完成提示 ====================
SELECT '电力数转第十五阶段(工时统计 + 参数比对校验)SQL 执行完成!' AS result;