✨ 组织树独立权限、平台公司回写、合同计费客商角色与查看菜单补齐

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-11-04 03:15:42 +08:00
parent a0e30d5834
commit 69f9c9af7f
26 changed files with 745 additions and 98 deletions
@@ -0,0 +1,44 @@
-- ----------------------------
-- 补齐基础/系统业务模块「查看」按钮权限(角色授权用)
-- 执行前请确认目标库尚未存在同 code 菜单
-- ----------------------------
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075429330000000001, 2075421555200860162, 'port_terminal_view', '查看', 'port_terminal_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'port_terminal_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075429280000000001, 2075427962415456258, 'railway_station_view', '查看', 'railway_station_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'railway_station_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075431850000000001, 2075431169720033282, 'airport_master_view', '查看', 'airport_master_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'airport_master_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075449000000000009, 2075449000000000001, 'currency_view', '查看', 'currency_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'currency_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075449100000000006, 2075449100000000001, 'customer_type_view', '查看', 'customer_type_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'customer_type_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075449200000000009, 2075449200000000001, 'fee_item_view', '查看', 'fee_item_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'fee_item_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2075449300000000006, 2075449300000000001, 'measurement_unit_view', '查看', 'measurement_unit_view', '', '', 1, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'measurement_unit_view' AND `is_deleted` = 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2080110200000000105, 2080110200000000101, 'business_dept_config_view', '查看', 'business_dept_config_view', '', '', 4, 2, 0, 1, NULL, '', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'business_dept_config_view' AND `is_deleted` = 0);
@@ -0,0 +1,511 @@
-- ----------------------------
-- 业务数据「所属组织」旧残留批量订正
-- 口径:按创建人当前所属组织(blade_user.dept_id 首个)回填 dept_id / dept_name(或 organization_name)
-- 适用:各环境 OA/组织同步后,业务表仍挂着已删/不存在/空组织的存量数据
-- 可重复执行;update_time 不改,保留原值
-- ----------------------------
--
-- 订正范围(仅处理残留):
-- 1) dept_id 为空或 <=0
-- 2) dept_id 在 blade_dept 中不存在或已逻辑删除
-- 仅名称字段的表:organization_name / dept_name 为空,或名称在当前未删除组织中找不到
--
-- 取值规则:
-- create_user → blade_user.dept_id(多组织取逗号分隔第一个,与登录态 AuthUtil.firstLong 一致)
-- → blade_dept.dept_name
-- 创建人无组织、或组织已失效:跳过该行
--
-- 特殊:
-- blade_customer_archive 客商所属组织业务上固定为「广西现代物流集团有限公司」,
-- 不按创建人组织回填,残留时改挂该顶级组织。
-- 合同负责部门(organization_id)/ 票据使用部门(blade_bill_payment.dept_id)不在本脚本范围。
--
-- 执行顺序:
-- 0 预览 → 1 备份 → 2 订正 → 3 校验;出问题用 4 回退
-- ----------------------------
SET NAMES utf8mb4;
-- ----------------------------
-- 0. 预览:各表待订正条数(执行订正前先看)
-- ----------------------------
-- DROP TEMPORARY TABLE IF EXISTS tmp_user_current_dept;
-- CREATE TEMPORARY TABLE tmp_user_current_dept AS
-- SELECT
-- u.id AS user_id,
-- CAST(SUBSTRING_INDEX(TRIM(u.dept_id), ',', 1) AS UNSIGNED) AS dept_id,
-- d.dept_name AS dept_name
-- FROM blade_user u
-- INNER JOIN blade_dept d
-- ON d.id = CAST(SUBSTRING_INDEX(TRIM(IFNULL(u.dept_id, '')), ',', 1) AS UNSIGNED)
-- AND IFNULL(d.is_deleted, 0) = 0
-- WHERE IFNULL(u.is_deleted, 0) = 0
-- AND IFNULL(TRIM(u.dept_id), '') <> ''
-- AND CAST(SUBSTRING_INDEX(TRIM(u.dept_id), ',', 1) AS UNSIGNED) > 0;
-- ALTER TABLE tmp_user_current_dept ADD PRIMARY KEY (user_id);
--
-- SELECT 'blade_common_route' AS table_name, COUNT(*) AS pending_cnt
-- FROM blade_common_route t
-- INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
-- WHERE IFNULL(t.is_deleted, 0) = 0
-- AND (t.dept_id IS NULL OR t.dept_id <= 0
-- OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- -- 其余表同理,可按第 2 节表清单自行复制预览
-- ----------------------------
-- 1. 备份表(不存在则创建;可重复执行)
-- ----------------------------
CREATE TABLE IF NOT EXISTS blade_biz_dept_backfill_bak_20261104 (
bak_id BIGINT NOT NULL AUTO_INCREMENT,
table_name VARCHAR(64) NOT NULL,
biz_id BIGINT NOT NULL,
old_dept_id BIGINT DEFAULT NULL,
old_dept_name VARCHAR(255) DEFAULT NULL,
new_dept_id BIGINT DEFAULT NULL,
new_dept_name VARCHAR(255) DEFAULT NULL,
create_user BIGINT DEFAULT NULL,
bak_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (bak_id),
KEY idx_biz_dept_bak_table_biz (table_name, biz_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='所属组织订正备份20261104';
START TRANSACTION;
-- 创建人 → 当前所属组织(多组织取第一个)
DROP TEMPORARY TABLE IF EXISTS tmp_user_current_dept;
CREATE TEMPORARY TABLE tmp_user_current_dept AS
SELECT
u.id AS user_id,
CAST(SUBSTRING_INDEX(TRIM(u.dept_id), ',', 1) AS UNSIGNED) AS dept_id,
d.dept_name AS dept_name
FROM blade_user u
INNER JOIN blade_dept d
ON d.id = CAST(SUBSTRING_INDEX(TRIM(IFNULL(u.dept_id, '')), ',', 1) AS UNSIGNED)
AND IFNULL(d.is_deleted, 0) = 0
WHERE IFNULL(u.is_deleted, 0) = 0
AND IFNULL(TRIM(u.dept_id), '') <> ''
AND CAST(SUBSTRING_INDEX(TRIM(u.dept_id), ',', 1) AS UNSIGNED) > 0;
ALTER TABLE tmp_user_current_dept ADD PRIMARY KEY (user_id);
-- 客商固定顶级组织
DROP TEMPORARY TABLE IF EXISTS tmp_fixed_owner_dept;
CREATE TEMPORARY TABLE tmp_fixed_owner_dept AS
SELECT d.id AS dept_id, d.dept_name
FROM blade_dept d
WHERE IFNULL(d.is_deleted, 0) = 0
AND d.dept_name = '广西现代物流集团有限公司'
ORDER BY d.id
LIMIT 1;
ALTER TABLE tmp_fixed_owner_dept ADD PRIMARY KEY (dept_id);
-- ----------------------------
-- 2. 订正:dept_id + dept_name 类表
-- ----------------------------
-- 2.1 常用线路
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_common_route', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_common_route t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_common_route t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.2 常用货物
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_common_cargo', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_common_cargo t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_common_cargo t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.3 过程配置
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_process_config', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_process_config t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_process_config t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.4 发货模板
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_shipping_template', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_shipping_template t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_shipping_template t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.5 运输计划
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_transport_plan', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_transport_plan t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_transport_plan t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.6 运单
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_waybill', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_waybill t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_waybill t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.7 配载
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_loading_manage', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_loading_manage t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_loading_manage t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.8 常用地址
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_common_address', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_common_address t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_common_address t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.9 预结算
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_pre_settlement', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_pre_settlement t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_pre_settlement t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.10 正式结算
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_formal_settlement', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_formal_settlement t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_formal_settlement t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.11 应收应付明细
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_receivable_payable_detail', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_receivable_payable_detail t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_receivable_payable_detail t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.12 异常处置
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_exception_disposal', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_exception_disposal t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_exception_disposal t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.13 风险处置
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_risk_disposal', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_risk_disposal t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_risk_disposal t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.14 开票申请
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_invoice_application', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_invoice_application t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_invoice_application t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.15 收票登记
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_invoice_receipt', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_invoice_receipt t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_invoice_receipt t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.16 付款申请
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_payment_application', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_payment_application t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_payment_application t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.17 运输对账
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_transport_reconciliation', t.id, t.dept_id, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_transport_reconciliation t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
UPDATE blade_transport_reconciliation t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- 2.18 客商档案:固定挂顶级「广西现代物流集团有限公司」
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_customer_archive', t.id, t.dept_id, t.dept_name, f.dept_id, f.dept_name, t.create_user
FROM blade_customer_archive t
CROSS JOIN tmp_fixed_owner_dept f
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0)
OR IFNULL(t.dept_id, 0) <> f.dept_id);
UPDATE blade_customer_archive t
CROSS JOIN tmp_fixed_owner_dept f
SET t.dept_id = f.dept_id,
t.dept_ids = CAST(f.dept_id AS CHAR),
t.dept_name = f.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_id IS NULL OR t.dept_id <= 0
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0)
OR IFNULL(t.dept_id, 0) <> f.dept_id);
-- ----------------------------
-- 2.19 仅名称字段:司机 / 车辆 / 船舶 / 派车
-- ----------------------------
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_transport_driver', t.id, NULL, t.organization_name, c.dept_id, c.dept_name, t.create_user
FROM blade_transport_driver t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
UPDATE blade_transport_driver t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.organization_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_transport_vehicle', t.id, NULL, t.organization_name, c.dept_id, c.dept_name, t.create_user
FROM blade_transport_vehicle t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
UPDATE blade_transport_vehicle t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.organization_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_transport_ship', t.id, NULL, t.organization_name, c.dept_id, c.dept_name, t.create_user
FROM blade_transport_ship t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
UPDATE blade_transport_ship t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.organization_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_vehicle_dispatch', t.id, NULL, t.organization_name, c.dept_id, c.dept_name, t.create_user
FROM blade_vehicle_dispatch t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
UPDATE blade_vehicle_dispatch t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.organization_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.organization_name IS NULL OR TRIM(t.organization_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.organization_name));
-- 2.20 结算调整单(仅 dept_name)
INSERT INTO blade_biz_dept_backfill_bak_20261104 (table_name, biz_id, old_dept_id, old_dept_name, new_dept_id, new_dept_name, create_user)
SELECT 'blade_settlement_adjustment', t.id, NULL, t.dept_name, c.dept_id, c.dept_name, t.create_user
FROM blade_settlement_adjustment t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_name IS NULL OR TRIM(t.dept_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.dept_name));
UPDATE blade_settlement_adjustment t
INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
SET t.dept_name = c.dept_name
WHERE IFNULL(t.is_deleted, 0) = 0
AND (t.dept_name IS NULL OR TRIM(t.dept_name) = ''
OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE IFNULL(d.is_deleted, 0) = 0 AND d.dept_name = t.dept_name));
COMMIT;
-- ----------------------------
-- 3. 校验(订正后执行)
-- ----------------------------
-- SELECT table_name, COUNT(*) AS bak_rows
-- FROM blade_biz_dept_backfill_bak_20261104
-- GROUP BY table_name
-- ORDER BY table_name;
--
-- -- 仍挂无效组织、且创建人当前有有效组织的运单(示例,期望 0)
-- SELECT COUNT(*) AS still_bad
-- FROM blade_waybill t
-- INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
-- WHERE IFNULL(t.is_deleted, 0) = 0
-- AND (t.dept_id IS NULL OR t.dept_id <= 0
-- OR NOT EXISTS (SELECT 1 FROM blade_dept d WHERE d.id = t.dept_id AND IFNULL(d.is_deleted, 0) = 0));
-- ----------------------------
-- 4. 回退(按备份表恢复;按需取消注释)
-- ----------------------------
-- UPDATE blade_waybill t
-- INNER JOIN blade_biz_dept_backfill_bak_20261104 b
-- ON b.table_name = 'blade_waybill' AND b.biz_id = t.id
-- SET t.dept_id = b.old_dept_id, t.dept_name = b.old_dept_name;
-- -- 其他表同理替换 table_name / 字段名
-- ----------------------------
-- 5. 可选:全量强制按创建人当前组织覆盖(不仅残留)
-- 默认不要执行;确认业务需要「全部改挂创建人当前组织」时再跑
-- ----------------------------
-- UPDATE blade_waybill t
-- INNER JOIN tmp_user_current_dept c ON c.user_id = t.create_user
-- SET t.dept_id = c.dept_id, t.dept_name = c.dept_name
-- WHERE IFNULL(t.is_deleted, 0) = 0;
@@ -34,4 +34,5 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
(2080110200000000101, 1123598815738675203, 'business_dept_config', '业务部门配置', 'business_dept_config', '/system/business-dept-config', 'iconfont iconicon_group', 25, 1, 0, 1, NULL, '', 0),
(2080110200000000102, 2080110200000000101, 'business_dept_config_add', '新增', 'business_dept_config_add', '', '', 1, 2, 0, 1, NULL, '', 0),
(2080110200000000103, 2080110200000000101, 'business_dept_config_edit', '编辑', 'business_dept_config_edit', '', '', 2, 2, 0, 1, NULL, '', 0),
(2080110200000000104, 2080110200000000101, 'business_dept_config_delete', '删除', 'business_dept_config_delete', '', '', 3, 2, 0, 1, NULL, '', 0);
(2080110200000000104, 2080110200000000101, 'business_dept_config_delete', '删除', 'business_dept_config_delete', '', '', 3, 2, 0, 1, NULL, '', 0),
(2080110200000000105, 2080110200000000101, 'business_dept_config_view', '查看', 'business_dept_config_view', '', '', 4, 2, 0, 1, NULL, '', 0);
+1
View File
@@ -40,3 +40,4 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000006, 2075449000000000001, 'currency_edit', '编辑', 'currency_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000007, 2075449000000000001, 'currency_status', '修改状态', 'currency_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000008, 2075449000000000001, 'currency_add', '新增', 'currency_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000009, 2075449000000000001, 'currency_view', '查看', 'currency_view', '', '', 1, 2, 0, 1, NULL, '', 0);
@@ -26,3 +26,4 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000003, 2075449100000000001, 'customer_type_edit', '编辑', 'customer_type_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000004, 2075449100000000001, 'customer_type_status', '修改状态', 'customer_type_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000005, 2075449100000000001, 'customer_type_add', '新增', 'customer_type_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000006, 2075449100000000001, 'customer_type_view', '查看', 'customer_type_view', '', '', 1, 2, 0, 1, NULL, '', 0);
@@ -0,0 +1,9 @@
-- ----------------------------
-- 组织树 /dept/tree 独立权限菜单(角色「数据权限」中配置)
-- 未配置该菜单数据权限时,组织树接口默认返回空(不展示)
-- ----------------------------
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`)
SELECT 2076110415738675232, 1123598815738675205, 'dept_tree', '树形结构', 'dept_tree', '/api/blade-system/dept/tree', 'file-text', 5, 2, 2, 1, '', '组织树接口独立数据权限配置项;未配置时组织树默认不展示', 0
FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM `blade_menu` WHERE `code` = 'dept_tree' AND `is_deleted` = 0);
+1
View File
@@ -33,3 +33,4 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000006, 2075449200000000001, 'fee_item_import', '批量导入', 'fee_item_import', '/api/blade-system/fee-item/import-fee-item', 'upload', 5, 2, 3, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000007, 2075449200000000001, 'fee_item_template', '下载模板', 'fee_item_template', '/api/blade-system/fee-item/export-template', 'download', 6, 2, 2, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000008, 2075449200000000001, 'fee_item_export', '批量导出', 'fee_item_export', '/api/blade-system/fee-item/export-fee-item', 'download', 7, 2, 2, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000009, 2075449200000000001, 'fee_item_view', '查看', 'fee_item_view', '', '', 1, 2, 0, 1, NULL, '', 0);
+2 -1
View File
@@ -30,4 +30,5 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
(2075449300000000002, 2075449300000000001, 'measurement_unit_delete', '删除', 'measurement_unit_delete', '', '', 1, 2, 0, 1, NULL, '', 0),
(2075449300000000003, 2075449300000000001, 'measurement_unit_edit', '编辑', 'measurement_unit_edit', '', '', 1, 2, 0, 1, NULL, '', 0),
(2075449300000000004, 2075449300000000001, 'measurement_unit_status', '修改状态', 'measurement_unit_status', '', '', 1, 2, 0, 1, NULL, '', 0),
(2075449300000000005, 2075449300000000001, 'measurement_unit_add', '新增', 'measurement_unit_add', '', '', 1, 2, 0, 1, NULL, '', 0);
(2075449300000000005, 2075449300000000001, 'measurement_unit_add', '新增', 'measurement_unit_add', '', '', 1, 2, 0, 1, NULL, '', 0),
(2075449300000000006, 2075449300000000001, 'measurement_unit_view', '查看', 'measurement_unit_view', '', '', 1, 2, 0, 1, NULL, '', 0);
+7
View File
@@ -836,6 +836,7 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675230, 1123598815738675205, 'dept_edit', '修改', 'edit', '/system/dept/edit', 'form', 2, 2, 2, 1, '', NULL, 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675231, 1123598815738675205, 'dept_delete', '删除', 'delete', '/api/blade-system/dept/remove', 'delete', 3, 2, 3, 1, '', NULL, 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675232, 1123598815738675205, 'dept_view', '查看', 'view', '/system/dept/view', 'file-text', 4, 2, 2, 1, '', NULL, 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2076110415738675232, 1123598815738675205, 'dept_tree', '树形结构', 'dept_tree', '/api/blade-system/dept/tree', 'file-text', 5, 2, 2, 1, '', '组织树接口独立数据权限配置项;未配置时组织树默认不展示', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675233, 1123598815738675206, 'dict_add', '新增', 'add', '/system/dict/add', 'plus', 1, 2, 1, 1, '', NULL, 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675234, 1123598815738675206, 'dict_edit', '修改', 'edit', '/system/dict/edit', 'form', 2, 2, 2, 1, '', NULL, 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (1123598815738675235, 1123598815738675206, 'dict_delete', '删除', 'delete', '/api/blade-system/dict/remove', 'delete', 3, 2, 3, 1, '', NULL, 0);
@@ -998,7 +999,9 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429169922023425, 2075427962415456258, 'railway_station_edit', '编辑', 'railway_station_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429216734650369, 2075427962415456258, 'railway_station_status', '修改状态', 'railway_station_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429274242752513, 2075427962415456258, 'railway_station_add', '新增', 'railway_station_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429280000000001, 2075427962415456258, 'railway_station_view', '查看', 'railway_station_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429329544650754, 2075421555200860162, 'port_terminal_add', '新增', 'port_terminal_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075429330000000001, 2075421555200860162, 'port_terminal_view', '查看', 'port_terminal_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431169720033282, 1164733399668962201, 'airport_master', '空港机场主数据', 'airport_master', '/base/airport-master', 'iconfont icon-fengche', 30, 1, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431461312241665, 2075431169720033282, 'airport_master_import', '批量导入', 'airport_master_import', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431522544885762, 2075431169720033282, 'airport_master_template', '下载模板', 'airport_master_template', '', '', 1, 2, 0, 1, NULL, '', 0);
@@ -1007,6 +1010,7 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431710063828994, 2075431169720033282, 'airport_master_edit', '编辑', 'airport_master_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431753298714626, 2075431169720033282, 'airport_master_status', '修改状态', 'airport_master_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431820189474818, 2075431169720033282, 'airport_master_add', '新增', 'airport_master_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075431850000000001, 2075431169720033282, 'airport_master_view', '查看', 'airport_master_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000001, 1164733399668962201, 'currency', '币种汇率管理', 'currency', '/base/currency', 'iconfont iconicon_exchange', 40, 1, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000002, 2075449000000000001, 'currency_import', '批量导入', 'currency_import', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000003, 2075449000000000001, 'currency_template', '下载模板', 'currency_template', '', '', 1, 2, 0, 1, NULL, '', 0);
@@ -1015,11 +1019,13 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000006, 2075449000000000001, 'currency_edit', '编辑', 'currency_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000007, 2075449000000000001, 'currency_status', '修改状态', 'currency_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000008, 2075449000000000001, 'currency_add', '新增', 'currency_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449000000000009, 2075449000000000001, 'currency_view', '查看', 'currency_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000001, 1164733399668962201, 'customer_type', '客商类型', 'customer_type', '/base/customer-type', 'iconfont icon-hezuohuobanmiyueguanli', 50, 1, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000002, 2075449100000000001, 'customer_type_delete', '批量删除', 'customer_type_delete', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000003, 2075449100000000001, 'customer_type_edit', '编辑', 'customer_type_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000004, 2075449100000000001, 'customer_type_status', '修改状态', 'customer_type_status', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000005, 2075449100000000001, 'customer_type_add', '新增', 'customer_type_add', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449100000000006, 2075449100000000001, 'customer_type_view', '查看', 'customer_type_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000001, 1164733399668962201, 'fee_item', '费用项', 'fee_item', '/base/fee-item', 'iconfont icon-shoucang', 60, 1, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000002, 2075449200000000001, 'fee_item_delete', '批量删除', 'fee_item_delete', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000003, 2075449200000000001, 'fee_item_edit', '编辑', 'fee_item_edit', '', '', 1, 2, 0, 1, NULL, '', 0);
@@ -1028,6 +1034,7 @@ INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `s
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000006, 2075449200000000001, 'fee_item_import', '批量导入', 'fee_item_import', '/api/blade-system/fee-item/import-fee-item', 'upload', 5, 2, 3, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000007, 2075449200000000001, 'fee_item_template', '下载模板', 'fee_item_template', '/api/blade-system/fee-item/export-template', 'download', 6, 2, 2, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000008, 2075449200000000001, 'fee_item_export', '批量导出', 'fee_item_export', '/api/blade-system/fee-item/export-fee-item', 'download', 7, 2, 2, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075449200000000009, 2075449200000000001, 'fee_item_view', '查看', 'fee_item_view', '', '', 1, 2, 0, 1, NULL, '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075436235826896898, 0, 'blade-transport', '车/船务管理', 'blade-transport', '/vehicle', 'iconfont icon-shebeiguanli', 10, 1, 0, 1, '', '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075437082342301697, 2075436235826896898, 'maintenance_record', '维修记录', 'maintenance_record', '/vehicle/maintenance-record', 'iconfont icon-wxbgongju', 20, 1, 0, 1, '', '', 0);
INSERT INTO `blade_menu` (`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`, `component`, `remark`, `is_deleted`) VALUES (2075437237678350338, 2075436235826896898, 'maintenance_plan', '保养记录', 'maintenance_plan', '/vehicle/maintenance-plan', 'iconfont iconicon_exchange', 30, 1, 0, 1, '', '', 0);