Files
BMS/bms-back/sql/price/air_fee_role_menu.sql
2026-11-11 16:36:40 +08:00

57 lines
3.5 KiB
SQL

-- 提单管理:空运费用、报关费用、清关费用
SET NAMES utf8mb4;
SET @sql = (
SELECT IF(
COUNT(*) = 0,
'ALTER TABLE srv_bill_air_fee ADD COLUMN fee_scene varchar(16) NULL DEFAULT NULL COMMENT ''费用入口:AIR空运 DECLARE报关 CLEAR清关。空运费用阶段为2(b段),报关和清关为3(c段)'' AFTER fee_level',
'SELECT 1'
)
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'srv_bill_air_fee' AND COLUMN_NAME = 'fee_scene'
);
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
SELECT 2650, N'提单管理', 0, 4, 'ladingFee', NULL, '', '', 1, 0, 'M', '0', '0', '', 'money', 'admin', sysdate(), N'提单列表、空运、报关、清关费用'
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2650 OR perms = 'price:airFee:menu');
UPDATE sys_menu
SET parent_id = 0, order_num = 4
WHERE menu_id = 2650;
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
SELECT 2651, N'空运费用', 2650, 2, 'air', 'price/billing/airFee/air/index', '', 'AirLadingFee', 1, 0, 'C', '0', '0', 'price:airFee:air', 'edit', 'admin', sysdate(), N'空运费用,费用阶段写入b段'
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2651 OR perms = 'price:airFee:air');
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
SELECT 2652, N'报关费用', 2650, 3, 'declare', 'price/billing/airFee/declare/index', '', 'DeclareLadingFee', 1, 0, 'C', '0', '0', 'price:airFee:declare', 'edit', 'admin', sysdate(), N'报关费用,费用阶段写入c段'
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2652 OR perms = 'price:airFee:declare');
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
SELECT 2653, N'清关费用', 2650, 4, 'clear', 'price/billing/airFee/clear/index', '', 'ClearLadingFee', 1, 0, 'C', '0', '0', 'price:airFee:clear', 'edit', 'admin', sysdate(), N'清关费用,费用阶段写入c段'
FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = 2653 OR perms = 'price:airFee:clear');
UPDATE sys_menu SET parent_id = 2650, order_num = 1 WHERE menu_id = 2520;
UPDATE sys_menu SET order_num = 2 WHERE menu_id = 2651;
UPDATE sys_menu SET order_num = 3 WHERE menu_id = 2652;
UPDATE sys_menu SET order_num = 4 WHERE menu_id = 2653;
UPDATE sys_menu SET remark = N'提单列表、空运、报关、清关费用' WHERE menu_id = 2650;
INSERT INTO sys_role_menu (role_id, menu_id)
SELECT 1, m.menu_id
FROM sys_menu m
WHERE m.menu_id IN (2650, 2651, 2652, 2653)
AND NOT EXISTS (SELECT 1 FROM sys_role_menu rm WHERE rm.role_id = 1 AND rm.menu_id = m.menu_id);
INSERT INTO sys_role_menu (role_id, menu_id)
SELECT DISTINCT rm.role_id, m.menu_id
FROM sys_role_menu rm
JOIN sys_menu m ON m.menu_id IN (2650, 2651, 2652, 2653)
WHERE rm.menu_id IN (2300, 2520)
AND NOT EXISTS (
SELECT 1 FROM sys_role_menu x WHERE x.role_id = rm.role_id AND x.menu_id = m.menu_id
);