补齐揽收单字段/并发戳与问题件处理人配置,扩展异常工作流与下单同步揽收出参;移除已收货状态并补充相关 SQL 脚本。 Co-authored-by: Cursor <cursoragent@cursor.com>
54 lines
2.6 KiB
SQL
54 lines
2.6 KiB
SQL
-- 对齐已创建的 t_pickup_order / t_pickup_order_line 与现表公共字段。
|
||
-- 适用于已执行旧版 20260803_pickup_order.sql 的环境;列已存在时对应语句会报错,可跳过。
|
||
-- 执行前请备份。
|
||
--
|
||
-- 注意:ConcurrencyStamp 勿写 DEFAULT (UUID()),在开启复制/GTID 时 ALTER 会报 1674。
|
||
-- 正确做法:先可空列 → UPDATE 回填 → 再改为 NOT NULL。
|
||
|
||
-- ===== t_pickup_order =====
|
||
ALTER TABLE `t_pickup_order`
|
||
ADD COLUMN `RequestId` VARCHAR(64) NULL COMMENT '请求幂等ID' AFTER `PickupNo`,
|
||
ADD COLUMN `OrganizationId` CHAR(36) NULL COMMENT '数据归属组织' AFTER `CustomerId`,
|
||
ADD COLUMN `SecretLevel` TINYINT NOT NULL DEFAULT 2 COMMENT '数据密级 1-4' AFTER `OrganizationId`;
|
||
|
||
ALTER TABLE `t_pickup_order`
|
||
ADD COLUMN `SenderCountry` INT NULL COMMENT '国家 t_country.Id 快照' AFTER `SenderCompany`,
|
||
ADD COLUMN `SenderStreetAddress3` VARCHAR(500) NULL COMMENT '地址3快照' AFTER `SenderStreetAddress2`,
|
||
ADD COLUMN `SenderHouseNumber` VARCHAR(50) NULL COMMENT '门牌号快照' AFTER `SenderStreetAddress3`,
|
||
ADD COLUMN `SenderTelePhone` VARCHAR(50) NULL COMMENT '电话快照' AFTER `SenderPhone`,
|
||
ADD COLUMN `SenderEmail` VARCHAR(60) NULL COMMENT '邮箱快照' AFTER `SenderTelePhone`;
|
||
|
||
-- 手机字段长度与现表对齐(若已是 50 可忽略报错)
|
||
ALTER TABLE `t_pickup_order`
|
||
MODIFY COLUMN `SenderPhone` VARCHAR(50) NULL COMMENT '手机快照';
|
||
|
||
-- ConcurrencyStamp(复制安全写法)
|
||
ALTER TABLE `t_pickup_order`
|
||
ADD COLUMN `ConcurrencyStamp` CHAR(36) NULL COMMENT '并发戳' AFTER `IsDeleted`;
|
||
|
||
UPDATE `t_pickup_order`
|
||
SET `ConcurrencyStamp` = UUID()
|
||
WHERE `ConcurrencyStamp` IS NULL OR `ConcurrencyStamp` = '';
|
||
|
||
ALTER TABLE `t_pickup_order`
|
||
MODIFY COLUMN `ConcurrencyStamp` CHAR(36) NOT NULL COMMENT '并发戳';
|
||
|
||
ALTER TABLE `t_pickup_order`
|
||
ADD UNIQUE KEY `uk_pickup_request_id` (`RequestId`),
|
||
ADD KEY `idx_pickup_org_secret_ctime` (`OrganizationId`, `SecretLevel`, `CreateTime`);
|
||
|
||
-- ===== t_pickup_order_line =====
|
||
ALTER TABLE `t_pickup_order_line`
|
||
ADD COLUMN `ServiceNo` VARCHAR(64) NULL COMMENT '运单号快照(便于列表)' AFTER `OrderId`,
|
||
ADD COLUMN `ClientNo` VARCHAR(64) NULL COMMENT '客户单号快照' AFTER `ServiceNo`;
|
||
|
||
ALTER TABLE `t_pickup_order_line`
|
||
ADD COLUMN `ConcurrencyStamp` CHAR(36) NULL COMMENT '并发戳' AFTER `IsDeleted`;
|
||
|
||
UPDATE `t_pickup_order_line`
|
||
SET `ConcurrencyStamp` = UUID()
|
||
WHERE `ConcurrencyStamp` IS NULL OR `ConcurrencyStamp` = '';
|
||
|
||
ALTER TABLE `t_pickup_order_line`
|
||
MODIFY COLUMN `ConcurrencyStamp` CHAR(36) NOT NULL COMMENT '并发戳';
|