This commit is contained in:
wuzilong committed 2026-09-13 13:08:52 +08:00
1 parent 499896b29c
commit 8c96de2c0c
64 files changed
+35711 -30445

No files matched your search

@@ -0,0 +1,63 @@
-- 小程序:运输管理 → 加油登记
-- 权限:全部角色授权(与 Web 端「加油登记」一致)
SET NAMES utf8mb4;
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'MINI_PL_ROOT', '运输管理', '1', 'M', '/mini/pl', NULL, NULL,
1, '1', '1', 'shanxia2.0', 4, '小程序运输管理',
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (
SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_ROOT' AND `del_flag` = 0
);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'MINI_PL_FUEL_REG', '加油登记', 'MINI_PL_ROOT', 'C', 'fuel-register', NULL,
'mini:pl:fuelRegister:list',
1, '1', '1', 'shanxia2.0', 1, NULL,
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (
SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_FUEL_REG' AND `del_flag` = 0
);
-- 全部角色:移动端根 + 运输管理 + 加油登记
INSERT INTO `sys_role_menu` (
`id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
MD5(CONCAT(r.id, '|', m.menu_id, '|mini-pl-fuel|v1')),
r.id,
m.menu_id,
IFNULL(NULLIF(r.tenant_no, ''), 'shanxia2.0'),
0,
'小程序加油登记:全角色',
'system',
'',
NOW(),
NULL,
NOW(),
0
FROM `sys_role` r
JOIN (
SELECT '1' AS menu_id UNION ALL
SELECT 'MINI_PL_ROOT' UNION ALL
SELECT 'MINI_PL_FUEL_REG'
) m
WHERE r.del_flag = 0
AND NOT EXISTS (
SELECT 1 FROM `sys_role_menu` x
WHERE x.role_id = r.id AND x.menu_id = m.menu_id AND x.del_flag = 0
);
@@ -0,0 +1,199 @@
-- 生产/补跑:车辆加油登记表 + 菜单
-- 权限:全部角色 → 加油登记;仅「管理员」→ 加油信息汇总
-- 目标库示例:.env.production → shanxia2.0
SET NAMES utf8mb4;
CREATE TABLE IF NOT EXISTS `pl_vehicle_fuel_register` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`register_no` varchar(32) NOT NULL COMMENT '登记单号 SXJY+YYYYMMDD+6位',
`fuel_category` varchar(20) NOT NULL COMMENT '加油类别 bailian-百链 gas_station-加油站',
`register_date` date NOT NULL COMMENT '日期',
`registrant_id` varchar(64) NOT NULL COMMENT '登记人用户ID',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`odometer_km` decimal(10,1) DEFAULT NULL COMMENT '期初公里数',
`fuel_liters` decimal(10,2) NOT NULL COMMENT '加油升数',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`status` varchar(20) NOT NULL DEFAULT 'normal' COMMENT 'normal-正常 cancelled-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_register_no` (`register_no`),
KEY `idx_tenant_date` (`tenant_no`, `register_date`),
KEY `idx_tenant_registrant` (`tenant_no`, `registrant_id`),
KEY `idx_tenant_plate` (`tenant_no`, `license_plate`),
KEY `idx_tenant_status` (`tenant_no`, `status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆加油登记';
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'PL_VEH_FUEL_REG', '加油登记', 'PL_GROUP_VEHICLE', 'C',
'vehicle-fuel-register', 'pl/vehicle-fuel-register/index',
'pl:vehicle-fuel-register:list', 1, '1', '1', 'shanxia2.0', 7, NULL,
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VEH_FUEL_REG' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_Q', '查询', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:query',
1, '1', '1', 'shanxia2.0', 1, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_Q' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_A', '新增', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:add',
1, '1', '1', 'shanxia2.0', 2, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_A' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_E', '编辑', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:edit',
1, '1', '1', 'shanxia2.0', 3, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_E' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_C', '作废', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:cancel',
1, '1', '1', 'shanxia2.0', 4, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_C' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'PL_VEH_FUEL_SUM', '加油信息汇总', 'PL_GROUP_VEHICLE', 'C',
'vehicle-fuel-summary', 'pl/vehicle-fuel-summary/index',
'pl:vehicle-fuel-summary:list', 1, '1', '1', 'shanxia2.0', 8, NULL,
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VEH_FUEL_SUM' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_Q', '查询', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:query',
1, '1', '1', 'shanxia2.0', 1, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_Q' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_A', '新增', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:add',
1, '1', '1', 'shanxia2.0', 2, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_A' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_E', '编辑', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:edit',
1, '1', '1', 'shanxia2.0', 3, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_E' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_C', '作废', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:cancel',
1, '1', '1', 'shanxia2.0', 4, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_C' AND `del_flag` = 0);
-- 全部角色:加油登记(含祖先菜单,保证侧栏可见)
INSERT INTO `sys_role_menu` (
`id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
MD5(CONCAT(r.id, '|', m.menu_id, '|fuel-reg-all|v1')),
r.id,
m.menu_id,
IFNULL(NULLIF(r.tenant_no, ''), 'shanxia2.0'),
0,
'加油登记:全角色授权',
'system',
'',
NOW(),
NULL,
NOW(),
0
FROM `sys_role` r
JOIN (
SELECT '2' AS menu_id UNION ALL
SELECT 'PL_MENU_ROOT' UNION ALL
SELECT 'PL_GROUP_VEHICLE' UNION ALL
SELECT 'PL_VEH_FUEL_REG' UNION ALL
SELECT 'PL_VFR_Q' UNION ALL
SELECT 'PL_VFR_A' UNION ALL
SELECT 'PL_VFR_E' UNION ALL
SELECT 'PL_VFR_C'
) m
WHERE r.del_flag = 0
AND NOT EXISTS (
SELECT 1 FROM `sys_role_menu` x
WHERE x.role_id = r.id AND x.menu_id = m.menu_id AND x.del_flag = 0
);
-- 仅「管理员」:加油信息汇总
INSERT INTO `sys_role_menu` (
`id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
MD5(CONCAT(r.id, '|', m.menu_id, '|fuel-sum-admin|v1')),
r.id,
m.menu_id,
IFNULL(NULLIF(r.tenant_no, ''), 'shanxia2.0'),
0,
'加油信息汇总:仅管理员',
'system',
'',
NOW(),
NULL,
NOW(),
0
FROM `sys_role` r
JOIN (
SELECT 'PL_VEH_FUEL_SUM' AS menu_id UNION ALL
SELECT 'PL_VFS_Q' UNION ALL
SELECT 'PL_VFS_A' UNION ALL
SELECT 'PL_VFS_E' UNION ALL
SELECT 'PL_VFS_C'
) m
WHERE r.del_flag = 0
AND r.role_name = '管理员'
AND NOT EXISTS (
SELECT 1 FROM `sys_role_menu` x
WHERE x.role_id = r.id AND x.menu_id = m.menu_id AND x.del_flag = 0
);
@@ -0,0 +1,164 @@
-- 车辆加油登记:新表 + 菜单(加油登记 / 加油信息汇总)
-- 独立于 ETC 充值模块;历史 pl_vehicle_recharge_* fuel 行不迁移
SET NAMES utf8mb4;
CREATE TABLE IF NOT EXISTS `pl_vehicle_fuel_register` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`register_no` varchar(32) NOT NULL COMMENT '登记单号 SXJY+YYYYMMDD+6位',
`fuel_category` varchar(20) NOT NULL COMMENT '加油类别 bailian-百链 gas_station-加油站',
`register_date` date NOT NULL COMMENT '日期',
`registrant_id` varchar(64) NOT NULL COMMENT '登记人用户ID',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`odometer_km` decimal(10,1) DEFAULT NULL COMMENT '期初公里数',
`fuel_liters` decimal(10,2) NOT NULL COMMENT '加油升数',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`status` varchar(20) NOT NULL DEFAULT 'normal' COMMENT 'normal-正常 cancelled-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_register_no` (`register_no`),
KEY `idx_tenant_date` (`tenant_no`, `register_date`),
KEY `idx_tenant_registrant` (`tenant_no`, `registrant_id`),
KEY `idx_tenant_plate` (`tenant_no`, `license_plate`),
KEY `idx_tenant_status` (`tenant_no`, `status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆加油登记';
-- 加油登记(本人)
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'PL_VEH_FUEL_REG', '加油登记', 'PL_GROUP_VEHICLE', 'C',
'vehicle-fuel-register', 'pl/vehicle-fuel-register/index',
'pl:vehicle-fuel-register:list', 1, '1', '1', 'shanxia2.0', 7, NULL,
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VEH_FUEL_REG' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_Q', '查询', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:query',
1, '1', '1', 'shanxia2.0', 1, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_Q' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_A', '新增', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:add',
1, '1', '1', 'shanxia2.0', 2, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_A' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_E', '编辑', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:edit',
1, '1', '1', 'shanxia2.0', 3, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_E' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFR_C', '作废', 'PL_VEH_FUEL_REG', 'F', '', '', 'pl:vehicle-fuel-register:cancel',
1, '1', '1', 'shanxia2.0', 4, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFR_C' AND `del_flag` = 0);
-- 加油信息汇总(全部)
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'PL_VEH_FUEL_SUM', '加油信息汇总', 'PL_GROUP_VEHICLE', 'C',
'vehicle-fuel-summary', 'pl/vehicle-fuel-summary/index',
'pl:vehicle-fuel-summary:list', 1, '1', '1', 'shanxia2.0', 8, NULL,
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VEH_FUEL_SUM' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_Q', '查询', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:query',
1, '1', '1', 'shanxia2.0', 1, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_Q' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_A', '新增', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:add',
1, '1', '1', 'shanxia2.0', 2, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_A' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_E', '编辑', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:edit',
1, '1', '1', 'shanxia2.0', 3, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_E' AND `del_flag` = 0);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT 'PL_VFS_C', '作废', 'PL_VEH_FUEL_SUM', 'F', '', '', 'pl:vehicle-fuel-summary:cancel',
1, '1', '1', 'shanxia2.0', 4, NULL, 'system', '', NOW(), NULL, NOW(), 0
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_VFS_C' AND `del_flag` = 0);
-- 已拥有「车辆管理」分组的角色:同步授权新菜单及按钮
INSERT INTO `sys_role_menu` (
`id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
MD5(CONCAT(rm.role_id, '|', m.menu_id, '|fuel|', rm.id)),
rm.role_id,
m.menu_id,
rm.tenant_no,
0,
NULL,
'system',
'',
NOW(),
NULL,
NOW(),
0
FROM `sys_role_menu` rm
JOIN (
SELECT 'PL_VEH_FUEL_REG' AS menu_id UNION ALL
SELECT 'PL_VFR_Q' UNION ALL SELECT 'PL_VFR_A' UNION ALL SELECT 'PL_VFR_E' UNION ALL SELECT 'PL_VFR_C' UNION ALL
SELECT 'PL_VEH_FUEL_SUM' UNION ALL
SELECT 'PL_VFS_Q' UNION ALL SELECT 'PL_VFS_A' UNION ALL SELECT 'PL_VFS_E' UNION ALL SELECT 'PL_VFS_C'
) m
WHERE rm.menu_id = 'PL_GROUP_VEHICLE'
AND rm.del_flag = 0
AND NOT EXISTS (
SELECT 1 FROM `sys_role_menu` x
WHERE x.role_id = rm.role_id AND x.menu_id = m.menu_id AND x.del_flag = 0
);
@@ -0,0 +1,56 @@
-- 小程序:运输管理 → 运输计划单(仅角色「现场人员」)
SET NAMES utf8mb4;
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'MINI_PL_ROOT', '运输管理', '1', 'M', '/mini/pl', NULL, NULL,
1, '1', '1', 'shanxia2.0', 4, '小程序运输管理',
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (
SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_ROOT' AND `del_flag` = 0
);
INSERT INTO `sys_menu` (
`id`, `menu_name`, `parent_id`, `menu_type`, `path`, `component`, `perms`,
`is_frame`, `visible`, `status`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
'MINI_PL_TRANSPORT_PLAN', '运输计划单', 'MINI_PL_ROOT', 'C', 'transport-plan', NULL,
'mini:pl:transportPlan:list',
1, '1', '1', 'shanxia2.0', 2, '小程序现场记录/回传',
'system', '', NOW(), NULL, NOW(), 0
FROM DUAL
WHERE NOT EXISTS (
SELECT 1 FROM `sys_menu` WHERE `id` = 'MINI_PL_TRANSPORT_PLAN' AND `del_flag` = 0
);
INSERT INTO `sys_role_menu` (
`id`, `role_id`, `menu_id`, `tenant_no`, `order_num`, `remark`,
`create_by`, `create_dept_id`, `create_time`, `update_by`, `update_time`, `del_flag`
)
SELECT
MD5(CONCAT(r.id, '|', m.menu_id, '|mini-pl-transport-plan|v1')),
r.id,
m.menu_id,
IFNULL(NULLIF(r.tenant_no, ''), 'shanxia2.0'),
0,
'小程序运输计划单:现场人员',
'system', '', NOW(), NULL, NOW(), 0
FROM `sys_role` r
JOIN (
SELECT '1' AS menu_id UNION ALL
SELECT 'MINI_PL_ROOT' UNION ALL
SELECT 'MINI_PL_TRANSPORT_PLAN'
) m
WHERE r.del_flag = 0
AND r.role_name = '现场人员'
AND NOT EXISTS (
SELECT 1 FROM `sys_role_menu` x
WHERE x.role_id = r.id AND x.menu_id = m.menu_id AND x.del_flag = 0
);