@@ -0,0 +1,53 @@
|
||||
-- 合同甲/乙/丙多方客商明细 + 运单/配载承运客商明细定位字段
|
||||
-- utf8mb4_general_ci
|
||||
|
||||
-- 合同管理:多方客商 JSON 与丙方汇总
|
||||
ALTER TABLE `blade_contract_manage`
|
||||
ADD COLUMN `party_a_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '甲方客商明细JSON' AFTER `party_b`,
|
||||
ADD COLUMN `party_b_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '乙方客商明细JSON' AFTER `party_a_json`,
|
||||
ADD COLUMN `party_c_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '丙方客商明细JSON' AFTER `party_b_json`,
|
||||
ADD COLUMN `party_c` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '丙方' AFTER `party_c_json`;
|
||||
|
||||
-- 合同变更:同步多方字段
|
||||
ALTER TABLE `blade_contract_change`
|
||||
ADD COLUMN `party_a_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '甲方客商明细JSON' AFTER `party_b`,
|
||||
ADD COLUMN `party_b_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '乙方客商明细JSON' AFTER `party_a_json`,
|
||||
ADD COLUMN `party_c_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT '丙方客商明细JSON' AFTER `party_b_json`,
|
||||
ADD COLUMN `party_c` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '丙方' AFTER `party_c_json`;
|
||||
|
||||
-- 历史数据迁移:原甲/乙方名称生成单行明细(仅名称,后续编辑补全客商ID)
|
||||
UPDATE `blade_contract_manage`
|
||||
SET `party_a_json` = CASE
|
||||
WHEN `party_a` IS NOT NULL AND TRIM(`party_a`) <> '' AND (`party_a_json` IS NULL OR TRIM(`party_a_json`) = '')
|
||||
THEN CONCAT('[{"id":"', REPLACE(UUID(), '-', ''), '","customerName":"', REPLACE(REPLACE(`party_a`, '\\', '\\\\'), '"', '\\"'), '"}]')
|
||||
ELSE `party_a_json`
|
||||
END,
|
||||
`party_b_json` = CASE
|
||||
WHEN `party_b` IS NOT NULL AND TRIM(`party_b`) <> '' AND (`party_b_json` IS NULL OR TRIM(`party_b_json`) = '')
|
||||
THEN CONCAT('[{"id":"', REPLACE(UUID(), '-', ''), '","customerName":"', REPLACE(REPLACE(`party_b`, '\\', '\\\\'), '"', '\\"'), '"}]')
|
||||
ELSE `party_b_json`
|
||||
END
|
||||
WHERE `is_deleted` = 0;
|
||||
|
||||
UPDATE `blade_contract_change`
|
||||
SET `party_a_json` = CASE
|
||||
WHEN `party_a` IS NOT NULL AND TRIM(`party_a`) <> '' AND (`party_a_json` IS NULL OR TRIM(`party_a_json`) = '')
|
||||
THEN CONCAT('[{"id":"', REPLACE(UUID(), '-', ''), '","customerName":"', REPLACE(REPLACE(`party_a`, '\\', '\\\\'), '"', '\\"'), '"}]')
|
||||
ELSE `party_a_json`
|
||||
END,
|
||||
`party_b_json` = CASE
|
||||
WHEN `party_b` IS NOT NULL AND TRIM(`party_b`) <> '' AND (`party_b_json` IS NULL OR TRIM(`party_b_json`) = '')
|
||||
THEN CONCAT('[{"id":"', REPLACE(UUID(), '-', ''), '","customerName":"', REPLACE(REPLACE(`party_b`, '\\', '\\\\'), '"', '\\"'), '"}]')
|
||||
ELSE `party_b_json`
|
||||
END
|
||||
WHERE `is_deleted` = 0;
|
||||
|
||||
-- 运单:承运客商明细定位
|
||||
ALTER TABLE `blade_waybill`
|
||||
ADD COLUMN `carrier_party_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '承运客商明细行ID' AFTER `carrier_contract_id`,
|
||||
ADD COLUMN `carrier_party_role` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '承运客商角色 B/C' AFTER `carrier_party_id`;
|
||||
|
||||
-- 配载:承运客商明细定位
|
||||
ALTER TABLE `blade_loading_manage`
|
||||
ADD COLUMN `carrier_party_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '承运客商明细行ID' AFTER `carrier_contract_id`,
|
||||
ADD COLUMN `carrier_party_role` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '承运客商角色 B/C' AFTER `carrier_party_id`;
|
||||
Reference in New Issue
Block a user