feat(appointments): add four-type calendar sources and align release contracts
This commit is contained in:
@@ -45,7 +45,7 @@ V13 收货覆盖由 `lastleg-service/src/main/resources/db/appointment-receiving
|
||||
| 区域 | 完整入口 | 服务 schema | 表数 |
|
||||
|---|---|---|---:|
|
||||
| 国内 | `头程数据库统一增量-MySQL8.sql` | `baiyue_auth`、`baiyue_iam`、`baiyue_order`、`baiyue_warehouse`、`baiyue_firstleg`、`baiyue_file`、`baiyue_audit`、`baiyue_finance` | 227 |
|
||||
| 海外 | `海外区域统一增量-MySQL8.sql` | `baiyue_lastleg`、`baiyue_lastlag_warehouse` | 215 |
|
||||
| 海外 | `海外区域统一增量-MySQL8.sql` | `baiyue_lastleg`、`baiyue_lastlag_warehouse` | 220 |
|
||||
|
||||
|
||||
- 所有服务位于同一测试环境;两份文件只分组组织服务 schema,不代表两个部署区域。`baiyue_lastlag_warehouse` 保留当前正式的 `lastlag` 拼写。
|
||||
|
||||
@@ -8366,65 +8366,3 @@ INSERT INTO iam_permission (id, tenant_id, app_code, permission_type, parent_id,
|
||||
INSERT INTO iam_role_permission (role_id, permission_id, tenant_id, created_at) VALUES (4000001,5102213,0,CURRENT_TIMESTAMP(3));
|
||||
|
||||
SELECT 'PASS' AS initialization_status, 'CN' AS region, 227 AS initialized_tables;
|
||||
|
||||
-- 2026-10-17 仓储转运上门取货,目标 baiyue_lastleg。
|
||||
-- 目标数据库:baiyue_lastleg;仅增加结构,不修改既有业务数据,可重复执行。
|
||||
USE baiyue_lastleg;
|
||||
SET @pickup_column_sql = IF((SELECT COUNT(*) FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_fleet_trip' AND column_name='trip_purpose')=0,
|
||||
'ALTER TABLE ll_fleet_trip ADD COLUMN trip_purpose VARCHAR(16) NOT NULL DEFAULT ''DELIVERY'' COMMENT ''DELIVERY出库派送 PICKUP上门取货入仓''',
|
||||
'SELECT 1');
|
||||
PREPARE pickup_column_stmt FROM @pickup_column_sql;
|
||||
EXECUTE pickup_column_stmt;
|
||||
DEALLOCATE PREPARE pickup_column_stmt;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ll_fleet_pickup_plan (
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '现有车辆车次号',
|
||||
request_hash VARCHAR(64) NOT NULL COMMENT '创建来源与计划摘要',
|
||||
PRIMARY KEY(trip_no)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仓储转运取货计划';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ll_fleet_pickup_task (
|
||||
transfer_order_id BIGINT NOT NULL COMMENT '原仓储转运单ID,一票唯一',
|
||||
customer_id VARCHAR(64) NOT NULL COMMENT '客户隔离键',
|
||||
transfer_no VARCHAR(64) NOT NULL COMMENT '原仓储转运单号',
|
||||
trip_no VARCHAR(64) NULL COMMENT '当前取货车次,解除后为空',
|
||||
status VARCHAR(32) NOT NULL COMMENT 'WAITING待安排 ASSIGNED已安排 PICKED已取货 ARRIVED已送仓',
|
||||
actual_packages INT NULL COMMENT '司机实提箱数,非仓库实收',
|
||||
picked_at DATETIME NULL COMMENT '实际确认取货UTC时间',
|
||||
arrived_at DATETIME NULL COMMENT '实际确认送仓UTC时间',
|
||||
evidence_json LONGTEXT NULL COMMENT '本票已确认凭证元数据',
|
||||
remark VARCHAR(1000) NULL COMMENT '取货备注',
|
||||
updated_at DATETIME NOT NULL COMMENT '最近修改UTC时间',
|
||||
PRIMARY KEY(transfer_order_id),
|
||||
UNIQUE KEY uk_pickup_source(customer_id,transfer_no),
|
||||
KEY idx_pickup_trip(trip_no,status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仓储转运逐票取货执行';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ll_fleet_pickup_command (
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '取货车次号',
|
||||
request_key VARCHAR(128) NOT NULL COMMENT '成功命令幂等键',
|
||||
request_hash VARCHAR(64) NOT NULL COMMENT '命令动作与内容摘要',
|
||||
PRIMARY KEY(trip_no,request_key)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货命令幂等记录';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ll_fleet_pickup_upload (
|
||||
transfer_order_id BIGINT NOT NULL COMMENT '凭证所属原单',
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '凭证所属车次',
|
||||
file_id BIGINT NOT NULL COMMENT '平台归属文件ID',
|
||||
PRIMARY KEY(file_id),
|
||||
KEY idx_pickup_upload_source(transfer_order_id,trip_no)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货上传凭证精确单据归属';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ll_fleet_pickup_history (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT COMMENT '操作流水',
|
||||
customer_id VARCHAR(64) NOT NULL COMMENT '客户隔离键',
|
||||
transfer_no VARCHAR(64) NOT NULL COMMENT '原转运单号',
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '当时取货车次号',
|
||||
action VARCHAR(32) NOT NULL COMMENT '安排解除取货到仓动作',
|
||||
operator_id VARCHAR(64) NOT NULL COMMENT '操作人',
|
||||
occurred_at DATETIME NOT NULL COMMENT '操作UTC时间',
|
||||
detail VARCHAR(2000) NULL COMMENT '操作说明',
|
||||
PRIMARY KEY(id),
|
||||
KEY idx_pickup_history_source(customer_id,transfer_no,id),
|
||||
KEY idx_pickup_history_trip(trip_no,id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货不可变操作历史';
|
||||
|
||||
@@ -2928,6 +2928,7 @@ CREATE TABLE ll_fleet_vehicle_record_history (
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆运维记录不可变历史';
|
||||
|
||||
CREATE TABLE ll_fleet_trip (
|
||||
trip_purpose VARCHAR(16) NOT NULL DEFAULT 'DELIVERY' COMMENT 'DELIVERY出库派送 PICKUP上门取货入仓',
|
||||
id BIGINT NOT NULL COMMENT '内部主键',
|
||||
trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号',
|
||||
idempotency_key VARCHAR(128) NOT NULL COMMENT '创建请求幂等键',
|
||||
@@ -4657,4 +4658,58 @@ CREATE TABLE ll_compact_number_clock (
|
||||
PRIMARY KEY (number_key)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外业务短单号分配时钟';
|
||||
|
||||
SELECT 'PASS' AS initialization_status, 'OVERSEAS' AS region, 215 AS initialized_tables;
|
||||
-- 仓储转运上门取货表归尾程服务,仅用于空库初始化。
|
||||
USE baiyue_lastleg;
|
||||
CREATE TABLE ll_fleet_pickup_plan (
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '现有车辆车次号',
|
||||
request_hash VARCHAR(64) NOT NULL COMMENT '创建来源与计划摘要',
|
||||
PRIMARY KEY(trip_no)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仓储转运取货计划';
|
||||
|
||||
CREATE TABLE ll_fleet_pickup_task (
|
||||
transfer_order_id BIGINT NOT NULL COMMENT '原仓储转运单ID,一票唯一',
|
||||
customer_id VARCHAR(64) NOT NULL COMMENT '客户隔离键',
|
||||
transfer_no VARCHAR(64) NOT NULL COMMENT '原仓储转运单号',
|
||||
trip_no VARCHAR(64) NULL COMMENT '当前取货车次,解除后为空',
|
||||
status VARCHAR(32) NOT NULL COMMENT 'WAITING待安排 ASSIGNED已安排 PICKED已取货 ARRIVED已送仓',
|
||||
actual_packages INT NULL COMMENT '司机实提箱数,非仓库实收',
|
||||
picked_at DATETIME NULL COMMENT '实际确认取货UTC时间',
|
||||
arrived_at DATETIME NULL COMMENT '实际确认送仓UTC时间',
|
||||
evidence_json LONGTEXT NULL COMMENT '本票已确认凭证元数据',
|
||||
remark VARCHAR(1000) NULL COMMENT '取货备注',
|
||||
updated_at DATETIME NOT NULL COMMENT '最近修改UTC时间',
|
||||
PRIMARY KEY(transfer_order_id),
|
||||
UNIQUE KEY uk_pickup_source(customer_id,transfer_no),
|
||||
KEY idx_pickup_trip(trip_no,status)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='仓储转运逐票取货执行';
|
||||
|
||||
CREATE TABLE ll_fleet_pickup_command (
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '取货车次号',
|
||||
request_key VARCHAR(128) NOT NULL COMMENT '成功命令幂等键',
|
||||
request_hash VARCHAR(64) NOT NULL COMMENT '命令动作与内容摘要',
|
||||
PRIMARY KEY(trip_no,request_key)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货命令幂等记录';
|
||||
|
||||
CREATE TABLE ll_fleet_pickup_upload (
|
||||
transfer_order_id BIGINT NOT NULL COMMENT '凭证所属原单',
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '凭证所属车次',
|
||||
file_id BIGINT NOT NULL COMMENT '平台归属文件ID',
|
||||
PRIMARY KEY(file_id),
|
||||
KEY idx_pickup_upload_source(transfer_order_id,trip_no)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货上传凭证精确单据归属';
|
||||
|
||||
CREATE TABLE ll_fleet_pickup_history (
|
||||
id BIGINT NOT NULL AUTO_INCREMENT COMMENT '操作流水',
|
||||
customer_id VARCHAR(64) NOT NULL COMMENT '客户隔离键',
|
||||
transfer_no VARCHAR(64) NOT NULL COMMENT '原转运单号',
|
||||
trip_no VARCHAR(64) NOT NULL COMMENT '当时取货车次号',
|
||||
action VARCHAR(32) NOT NULL COMMENT '安排解除取货到仓动作',
|
||||
operator_id VARCHAR(64) NOT NULL COMMENT '操作人',
|
||||
occurred_at DATETIME NOT NULL COMMENT '操作UTC时间',
|
||||
detail VARCHAR(2000) NULL COMMENT '操作说明',
|
||||
PRIMARY KEY(id),
|
||||
KEY idx_pickup_history_source(customer_id,transfer_no,id),
|
||||
KEY idx_pickup_history_trip(trip_no,id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='取货不可变操作历史';
|
||||
|
||||
SELECT 'PASS' AS initialization_status, 'OVERSEAS' AS region, 220 AS initialized_tables;
|
||||
|
||||
Reference in New Issue
Block a user