From 46bc137e99f5719766a32a639ddf44bc60d35fea Mon Sep 17 00:00:00 2001 From: liuyihe <2513762445@qq.com> Date: Wed, 4 Nov 2026 12:21:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sql/20261104-unify-utf8mb4-0900-ai-ci.sql | 2071 +++++++++++++++ deploy/sql/README.md | 8 +- .../sql/lastleg-dispatch-daily-sequence.sql | 2 +- .../sql/lastleg-dispatch-transport-tasks.sql | 8 +- .../V4__add_sailing_calendar_schema.sql | 8 +- .../V11__align_capacity_pool_collation.sql | 6 +- .../V13__widen_inbound_plan_creation_mode.sql | 4 +- .../V15__procurement_fee_versions.sql | 2 +- .../V16__procurement_purchase_facts.sql | 6 +- .../V17__procurement_physical_facts.sql | 14 +- .../V18__procurement_transport_facts.sql | 10 +- .../V19__procurement_fee_correction.sql | 4 +- .../V1__align_lastleg_production_schema.sql | 10 +- .../V20__procurement_exception_control.sql | 6 +- .../V23__align_return_movement_collation.sql | 62 +- .../V24__cargo_discard_photos.sql | 2 +- ...ansfer_measurement_and_compact_numbers.sql | 2 +- .../V2__align_schema_baseline.sql | 28 +- .../V32__dispatch_transport_tasks.sql | 6 +- .../V36__align_order_budget_collation.sql | 8 +- .../V3__relax_valid_nullable_fields.sql | 4 +- ..._add_transfer_receipt_resource_command.sql | 2 +- ...erseas-fees-storage-rent-structure-add.sql | 4 +- deploy/sql/reset-test-fba-appointments.sql | 8 +- deploy/sql/头程数据库统一增量-MySQL8.sql | 14 +- deploy/sql/海外区域统一增量-MySQL8.sql | 2360 ++++++++--------- .../db/phase3-direct-delivery-schema.sql | 2 +- .../db/phase4-sailing-calendar-schema.sql | 8 +- .../mapper/DispatchCandidatePageMapper.java | 2 +- .../mapper/ExceptionWorkflowMapper.java | 11 +- .../resources/db/appointment-receiving.sql | 10 +- .../main/resources/db/appointment-work.sql | 10 +- .../src/main/resources/db/lastleg.sql | 144 +- .../resources/db/return-sku-conversion.sql | 14 +- .../src/main/resources/db/storage-rent.sql | 8 +- .../Phase5PdaDeploymentSqlContractTest.java | 2 +- .../DispatchCandidateMySqlReadOnlyTest.java | 2 +- .../DispatchMergedRelabelPersistenceTest.java | 2 +- .../ReturnInventoryMovementSqlTest.java | 4 +- .../ReturnSkuConversionPersistenceTest.java | 2 +- .../service/ReturnSkuMySqlTestDatabase.java | 2 +- order/src/main/resources/db/order.sql | 2 +- ...eet-capacity-pool-schema-contract.test.mjs | 2 +- ...ema-alignment-migrations-contract.test.mjs | 2 +- ...card-consolidated-incremental-20261014.sql | 2 +- ...dev-lastleg-relabel-return-incremental.sql | 4 +- scripts/db/incremental.sql | 18 +- ...four-flows-schema-incremental-20261009.sql | 2 +- ...siness-acceptance-incremental-20261009.sql | 12 +- scripts/db/relabel-fields-only.sql | 2 +- .../return-packing-incremental-20261008.sql | 2 +- ...urn-relabel-truck-incremental-20261008.sql | 8 +- warehouse/src/main/resources/db/warehouse.sql | 2 +- 53 files changed, 3508 insertions(+), 1432 deletions(-) create mode 100644 deploy/sql/20261104-unify-utf8mb4-0900-ai-ci.sql diff --git a/deploy/sql/20261104-unify-utf8mb4-0900-ai-ci.sql b/deploy/sql/20261104-unify-utf8mb4-0900-ai-ci.sql new file mode 100644 index 000000000..dd9075a27 --- /dev/null +++ b/deploy/sql/20261104-unify-utf8mb4-0900-ai-ci.sql @@ -0,0 +1,2071 @@ +-- Generated from local MySQL 8.4.11 on 2026-11-04. Target: existing five named schemas only. +-- Only unicode_ci columns/defaults change; binary collations remain intentional. +-- Exact local column definitions: compare schema before reuse on another instance. +-- DDL implicitly commits. Stop on first error; do not use --force. Same-schema replay is supported. +SET NAMES utf8mb4 COLLATE utf8mb4_0900_ai_ci; +SET SESSION lock_wait_timeout=15; +ALTER DATABASE `baiyue_event_bridge` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge`.`bridge_delivery_attempt` + MODIFY COLUMN `event_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `source_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '投递结果', + MODIFY COLUMN `response_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '对端响应码', + MODIFY COLUMN `error_message` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '错误信息', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge`.`bridge_inbox` + MODIFY COLUMN `event_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `idempotency_key` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '接收幂等键', + MODIFY COLUMN `event_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `source_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户或业务隔离标识;跨区域事件沿用来源系统口径', + MODIFY COLUMN `aggregate_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + MODIFY COLUMN `trace_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '链路标识', + MODIFY COLUMN `correlation_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务关联标识', + MODIFY COLUMN `causation_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上游事件标识', + MODIFY COLUMN `payload_hash` varchar(71) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化负载摘要', + MODIFY COLUMN `status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RECEIVED' COMMENT '消费状态', + MODIFY COLUMN `lease_owner` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '消费租约持有者', + MODIFY COLUMN `last_error` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge`.`bridge_outbox` + MODIFY COLUMN `event_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `idempotency_key` varchar(191) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '发送幂等键', + MODIFY COLUMN `event_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `source_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户或业务隔离标识;跨区域事件沿用来源系统口径', + MODIFY COLUMN `aggregate_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + MODIFY COLUMN `trace_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '链路标识', + MODIFY COLUMN `correlation_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务关联标识', + MODIFY COLUMN `causation_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上游事件标识', + MODIFY COLUMN `payload_hash` varchar(71) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化负载摘要', + MODIFY COLUMN `status` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '投递状态', + MODIFY COLUMN `lease_owner` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '租约持有者', + MODIFY COLUMN `last_error` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER DATABASE `baiyue_event_bridge_overseas` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge_overseas`.`bridge_delivery_attempt` + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `source_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '投递结果', + MODIFY COLUMN `response_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '对端响应码', + MODIFY COLUMN `error_message` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '错误信息', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge_overseas`.`bridge_inbox` + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `idempotency_key` varchar(191) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '接收幂等键', + MODIFY COLUMN `event_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `source_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `aggregate_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + MODIFY COLUMN `trace_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '链路标识', + MODIFY COLUMN `correlation_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务关联标识', + MODIFY COLUMN `causation_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上游事件标识', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化负载摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RECEIVED' COMMENT '消费状态', + MODIFY COLUMN `lease_owner` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '消费租约持有者', + MODIFY COLUMN `last_error` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_event_bridge_overseas`.`bridge_outbox` + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局标识', + MODIFY COLUMN `idempotency_key` varchar(191) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '发送幂等键', + MODIFY COLUMN `event_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `source_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `target_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标区域', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `aggregate_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + MODIFY COLUMN `trace_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '链路标识', + MODIFY COLUMN `correlation_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务关联标识', + MODIFY COLUMN `causation_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上游事件标识', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化负载摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '投递状态', + MODIFY COLUMN `lease_owner` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '租约持有者', + MODIFY COLUMN `last_error` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER DATABASE `baiyue_firstleg` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_firstleg`.`fl_direct_delivery_unloading` + MODIFY COLUMN `timezone` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Explicit destination IANA timezone', + MODIFY COLUMN `received_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Actual recipient', + MODIFY COLUMN `evidence_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Actual delivery receipt reference', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by_name` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_firstleg`.`fl_sailing` + MODIFY COLUMN `sailing_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `channel_code_snapshot` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `channel_name_snapshot` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `warehouse_name_snapshot` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `departure_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `destination_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `vessel_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `voyage_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'OPEN', + MODIFY COLUMN `source_type` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'MANUAL', + MODIFY COLUMN `generated_key` varchar(192) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `updated_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_firstleg`.`fl_sailing_channel` + MODIFY COLUMN `channel_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `channel_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_type` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `mapped_channel_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `default_departure_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `default_destination_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `updated_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_firstleg`.`fl_sailing_history` + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `from_status` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `to_status` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_firstleg`.`fl_sailing_template` + MODIFY COLUMN `template_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `template_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `channel_code_snapshot` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `channel_name_snapshot` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `warehouse_name_snapshot` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `departure_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `destination_port_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `voyage_rule` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `vessel_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `updated_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER DATABASE `baiyue_lastleg` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`backup_fba_appointment_item_20261013` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '绉熸埛/瀹㈡埛璐﹀彿鏍囪瘑', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`backup_ll_local_looseboard_order_20261023` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本土散板订单号', + MODIFY COLUMN `transport_mode` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '运输方式:拼车或优先拼载', + MODIFY COLUMN `pallet_required` varchar(8) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '是否需要打盘:YES或NO', + MODIFY COLUMN `transport_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '运输类型', + MODIFY COLUMN `origin` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起运地', + MODIFY COLUMN `origin_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运详细地址', + MODIFY COLUMN `destination` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的地', + MODIFY COLUMN `destination_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的详细地址、码头或仓号', + MODIFY COLUMN `container_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '柜型', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '预算币种', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '联系人姓名', + MODIFY COLUMN `contact_info` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '联系人联系方式', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ACCEPTANCE' COMMENT '本土散板订单状态', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求内容哈希', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商品名称', + MODIFY COLUMN `origin_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系人', + MODIFY COLUMN `origin_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系电话', + MODIFY COLUMN `destination_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系人', + MODIFY COLUMN `destination_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系电话', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_appointment_cargo_verification` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原货源所属客户', + MODIFY COLUMN `source_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定ORDER或BOOKING原来源键', + MODIFY COLUMN `destination_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '核实时的原目的地', + MODIFY COLUMN `source_version` varchar(160) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '核实时的原来源版本', + MODIFY COLUMN `shipment_references_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本票货件号或追踪号列表,不回写原订单', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '核实说明', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登录操作人', + MODIFY COLUMN `operator_name` varchar(200) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人名称快照', + MODIFY COLUMN `command_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源内幂等命令键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源、操作人及请求摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_appointment_work` + MODIFY COLUMN `work_item_key` varchar(96) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '不可变事项键,业务身份确定性生成', + MODIFY COLUMN `container_booking_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源柜次内部关联标识,不作展示编号', + MODIFY COLUMN `state_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工作关系责任跟进及影响基线,不保存可编辑业务执行事实', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_appointment_work_commitment` + MODIFY COLUMN `entity_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原业务实体稳定键', + MODIFY COLUMN `state_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原业务命令产生的只读语义影响基线,不是第二份可编辑计划', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_appointment_work_guard` + MODIFY COLUMN `scan_cursor` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '已开船来源同步游标', + MODIFY COLUMN `scope_version` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完整同步已确认的权威来源集合版本', + MODIFY COLUMN `scan_scope_version` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前扫描来源集合版本,防跨页漂移', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_appointment_work_history` + MODIFY COLUMN `id` varchar(36) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '历史记录标识', + MODIFY COLUMN `work_item_key` varchar(96) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事项稳定键', + MODIFY COLUMN `operator_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实操作人员标识', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人显示名称', + MODIFY COLUMN `action` varchar(48) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工作命令或观察动作', + MODIFY COLUMN `summary` varchar(2000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理或责任变更依据', + MODIFY COLUMN `command_key` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '请求幂等键,观察记录为空', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '包含操作者的规范请求摘要', + MODIFY COLUMN `response_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '原命令响应快照,重放不随当前状态改变', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_cargo_discard_application` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `discard_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `outbound_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '废弃出库单号', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_codes` varchar(2000) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `review_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核幂等键', + MODIFY COLUMN `review_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核请求内容哈希', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `reviewed_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `review_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '申请人姓名快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_cargo_discard_carton` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DROPSHIP' COMMENT '箱子来源:一件代发DROPSHIP、入仓箱INBOUND、转运箱TRANSFER', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_cargo_discard_item` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DROPSHIP' COMMENT '库存来源:一件代发DROPSHIP、退货箱RETURN_CARTON', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `pda_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `pda_operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `completion_photo_file_ids` text COLLATE utf8mb4_0900_ai_ci COMMENT 'PDA完工照片文件ID JSON数组', + MODIFY COLUMN `carton_marks_json` text COLLATE utf8mb4_0900_ai_ci COMMENT '本次废弃所选真实箱唛快照JSON数组', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_cargo_discard_photo` + MODIFY COLUMN `customer_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `content_type` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_cargo_discard_status_history` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_compact_number_clock` + MODIFY COLUMN `number_key` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务前缀和客户名称缩写', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_container_arrival_time_operation` + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台请求幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人名称', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '预计到仓时间修改备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_container_loading_evidence` + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内稳定来源柜预订ID', + MODIFY COLUMN `evidence_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PHOTO_STEP_1至PHOTO_STEP_4或SEAL', + MODIFY COLUMN `file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内文件名快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_container_plan_conversion_command` + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '调用方幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '确认请求SHA-256摘要', + MODIFY COLUMN `snapshot_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '确认的柜级快照SHA-256', + MODIFY COLUMN `batch_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓托盘批次幂等键', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令状态:PREPARED/APPLYING/FAILED/LOCAL_COMMITTED/COMPLETED', + MODIFY COLUMN `lease_token` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前执行租约令牌,用于陈旧执行者隔离', + MODIFY COLUMN `last_error` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次跨服务错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_container_shipping_gate` + MODIFY COLUMN `container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源头程柜预订ID', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `ocean_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源海运订舱ID', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际集装箱号', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AWAITING_PICKUP_READY' COMMENT '海外收货门禁状态:AWAITING_PICKUP_READY、RECEIVING_AVAILABLE', + MODIFY COLUMN `standard_node` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最新有效标准船节点', + MODIFY COLUMN `location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '节点地点编码', + MODIFY COLUMN `location_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '节点地点名称', + MODIFY COLUMN `provider_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '船节点供应商编码', + MODIFY COLUMN `provider_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商事件ID', + MODIFY COLUMN `provider_node_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商原始节点编码', + MODIFY COLUMN `source_reference` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商来源引用', + MODIFY COLUMN `raw_payload_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商原始负载SHA-256', + MODIFY COLUMN `last_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近采纳的跨区事件ID', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近采纳事件规范化负载摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_customer_visit` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `delivery_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '关联派送单号', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户联系人姓名快照', + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户联系人电话快照', + MODIFY COLUMN `destination` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送目的仓编码汇总快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '回访状态:PENDING待回访或COMPLETED已回访', + MODIFY COLUMN `selected_last_mile_order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次回访选择的尾程订单号', + MODIFY COLUMN `selected_inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次回访选择的入仓码', + MODIFY COLUMN `visit_result` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访结果', + MODIFY COLUMN `customer_feedback` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次客户反馈', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访备注', + MODIFY COLUMN `visited_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_delivery_document_revision` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '派送所属客户隔离键', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资料保存幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '完整保存请求哈希', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '保存操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_delivery_facts_changed` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实签收货物客户ID', + MODIFY COLUMN `dispatch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实排车业务号', + MODIFY COLUMN `delivery_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实派送业务号', + MODIFY COLUMN `facts_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '该版本真实签收事实摘要', + MODIFY COLUMN `state` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '待核对PENDING或已核对PROCESSED', + MODIFY COLUMN `last_error_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近失败诊断码不保存敏感异常正文', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_delivery_fee` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `fee_direction` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PAYABLE' COMMENT '应收应付方向', + MODIFY COLUMN `fee_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用类型', + MODIFY COLUMN `currency` varchar(8) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '费用备注', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_delivery_operation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `operation_node` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作节点', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人名称', + MODIFY COLUMN `result` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理结果', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_delivery_order` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `delivery_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `outbound_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联派车单号,仓储转运直接出库时为空', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称快照', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓ID快照', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓编码快照,私人仓为空', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓名称快照', + MODIFY COLUMN `destination_type` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地类型:FBA或PRIVATE', + MODIFY COLUMN `delivery_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓派送地址', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人', + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话', + MODIFY COLUMN `delivery_group_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '同一出库单内按目的FBA仓拆单的稳定分组键', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_DELIVERY', + MODIFY COLUMN `seller_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '卖家姓名', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送备注', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `waybill_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '承运运单号', + MODIFY COLUMN `delivery_method` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送方式', + MODIFY COLUMN `carrier_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送承运商', + MODIFY COLUMN `pickup_method` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货方式', + MODIFY COLUMN `loading_type` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '装车类型', + MODIFY COLUMN `vehicle_type` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车辆类型', + MODIFY COLUMN `vehicle_size` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车辆大小', + MODIFY COLUMN `vehicle_plate` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车牌号', + MODIFY COLUMN `driver_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机或车队名称', + MODIFY COLUMN `driver_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车队联系电话', + MODIFY COLUMN `appointment_account` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '预约账号', + MODIFY COLUMN `bol_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送资料BOL号,不作为文件归属标识', + MODIFY COLUMN `postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_destuff_pallet_cost` + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源柜次业务ID', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '成本币种', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '生成状态', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_destuff_pallet_cost_allocation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_appointment_allocation` + MODIFY COLUMN `batch_key` varchar(96) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '预约稳定批次键', + MODIFY COLUMN `customer_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '所属客户标识', + MODIFY COLUMN `source_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '货物来源稳定键', + MODIFY COLUMN `destination_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的地稳定键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_command` + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令所属真实排车业务号', + MODIFY COLUMN `action` varchar(40) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次整车作业动作', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原始可信操作主体ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '跨操作主体全局唯一的原始请求键', + MODIFY COLUMN `command_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '绑定原主体动作业务号版本和完整载荷的严格摘要', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '按动作类型恢复的不可变成功结果JSON', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_daily_sequence` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_delivery_arrangement` + MODIFY COLUMN `dispatch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实排车业务号', + MODIFY COLUMN `arrangement_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次唯一安排业务事实标识', + MODIFY COLUMN `business_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '排除操作者及纯并发版本的安排业务摘要', + MODIFY COLUMN `cargo_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本车实际拣货来源摘要', + MODIFY COLUMN `loading_completion_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '装车完成事实摘要', + MODIFY COLUMN `original_command_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '首次安排的全局请求键', + MODIFY COLUMN `original_operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '首次安排操作主体', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_draft` + MODIFY COLUMN `draft_token` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `plan_ids_json` varchar(4000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `containers_json` longtext COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE', + MODIFY COLUMN `sources_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '服务端核验的真实来源及客户版本快照数组', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_draft_command` + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '草稿操作全局唯一幂等键', + MODIFY COLUMN `operator_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原命令操作主体,恢复必须为本人', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '草稿创建、维护、选货、释放或转换动作', + MODIFY COLUMN `target_token` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令目标草稿标识或创建范围标识', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原动作、主体、版本及完整载荷摘要', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '本事务完成后保存的不可变原结果,不提交空结果', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_draft_container` + MODIFY COLUMN `draft_token` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_keys_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '本装车容器已取得本草稿占用的来源键数组', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_history` + MODIFY COLUMN `action` varchar(40) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次真实业务动作', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '可信操作主体ID', + MODIFY COLUMN `reason` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核驳回或变更原因', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_item` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `order_refs` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_stage` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PLAN or RECEIVED', + MODIFY COLUMN `carton_marks` varchar(4000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标箱唛映射快照', + MODIFY COLUMN `source_business_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源业务类型', + MODIFY COLUMN `source_business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源业务单号', + MODIFY COLUMN `destination_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', + MODIFY COLUMN `delivery_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓目的地址快照', + MODIFY COLUMN `postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编快照', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人快照', + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话快照', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本条真实客户名称快照', + MODIFY COLUMN `source_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本条货物稳定权威来源键', + MODIFY COLUMN `source_version` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '选货时核对的真实来源版本摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_item_source` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本条真实客户ID', + MODIFY COLUMN `relabel_round_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冻结的真实换标作业轮次,扫码数量变化不改变轮次', + MODIFY COLUMN `source_inbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '逐换标明细原货源订单业务号快照', + MODIFY COLUMN `source_inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '逐换标明细原入仓业务号快照', + MODIFY COLUMN `binding_basis_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '申请轮次、位置及逐来源贡献的冻结依据摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_order` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鏃у鎴锋帓杞﹀綊灞烇紝鏁磋溅涓诲崟涓嶄娇鐢�', + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Dispatch order number', + MODIFY COLUMN `task_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DELIVERY' COMMENT 'DELIVERY/PICKUP/LOCAL_TRUCK', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `vehicle_plate` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Editable vehicle plate; required before PDA picking', + MODIFY COLUMN `driver_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `driver_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `carrier_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `route` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `fba_appointment_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `fba_appointment_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `vehicle_appointment_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_DEPARTURE', + MODIFY COLUMN `partial_completion_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运海外仓编码快照', + MODIFY COLUMN `stage` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BEFORE_LOADING' COMMENT '作业阶段:BEFORE_LOADING装车前、LOADING装车中、AFTER_LOADING装车后、DELIVERING派送中、DELIVERED派送完成', + MODIFY COLUMN `cargo_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前整车真实货物及来源摘要', + MODIFY COLUMN `review_state` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DRAFT' COMMENT '审核子流程当前状态', + MODIFY COLUMN `review_basis_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本审核轮次核对的货物和资源依据摘要', + MODIFY COLUMN `loading_completion_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际装车完成事实摘要', + MODIFY COLUMN `arrangement_key` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本车唯一派送安排事实标识', + MODIFY COLUMN `arrangement_business_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本车派送安排业务内容摘要', + MODIFY COLUMN `remark` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '排车业务备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_pallet_lock` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_pallet_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PLAN:{planPalletId} or RECEIVED:{warehousePalletId}', + MODIFY COLUMN `active_key` varchar(160) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Equals source key only while lock is active', + MODIFY COLUMN `draft_token` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '智能排车草稿随机标识', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '草稿锁操作人ID', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_pda_operation` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_pda_pick` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_pda_pick_order` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_pda_task` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '历史客户任务归属,整车任务客户归属保留在扫码明细', + MODIFY COLUMN `task_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_physical_pallet_lock` + MODIFY COLUMN `warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '真实起运仓ID', + MODIFY COLUMN `draft_token` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '草稿拥有者令牌,与正式排车归属互斥', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '占用操作人ID', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '物理占用状态', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_transport_command` + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_transport_create` + MODIFY COLUMN `trip_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dispatch_truck_task` + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `trip_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `active_order` varchar(193) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '有效原单唯一键;取消置空,完成保留', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_document_sequence` + MODIFY COLUMN `sequence_key` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务前缀与北京时间日期组成的全局序列键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dropship_carton` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AVAILABLE', + MODIFY COLUMN `outbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dropship_carton_ledger` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `business_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dropship_carton_sku` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱内SKU编码', + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dropship_order_profile` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Pallet number snapshot supplied by first-leg handover', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RECEIVED', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `manifest_hash` char(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '整托完整清单摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_dropship_sku_inventory` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_event_conflict` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突事件 ID', + MODIFY COLUMN `conflict_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突类型', + MODIFY COLUMN `conflict_message` varchar(512) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突说明', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_event_inbox` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局唯一 ID', + MODIFY COLUMN `event_type` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `aggregate_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合 ID', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '负载摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '消费状态', + MODIFY COLUMN `error_message` varchar(512) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '错误信息', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_event_outbox` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `aggregate_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + MODIFY COLUMN `aggregate_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + MODIFY COLUMN `event_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `event_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + MODIFY COLUMN `payload_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件载荷JSON', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '发布状态', + MODIFY COLUMN `locked_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '投递租约持有者', + MODIFY COLUMN `last_error` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后一次发布错误', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_exception_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `exception_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `exception_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `last_mile_order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `delivery_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `outbound_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `return_direction` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `return_logistics_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `handling_action` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `handling_result` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常处理结果', + MODIFY COLUMN `handler_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `handler_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'MANUAL', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_exception_order_command` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常处理动作', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA256哈希', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_exception_return_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原出库托盘码快照', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原出库SKU快照', + MODIFY COLUMN `return_carton_mark` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原生退货箱业务箱码快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_appointment_command` + MODIFY COLUMN `command_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '持久化幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作、操作者和请求摘要', + MODIFY COLUMN `operation` varchar(96) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型及目标业务号', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登录操作人', + MODIFY COLUMN `appointment_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '系统预约业务单号', + MODIFY COLUMN `response_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '原命令返回快照,与业务写入同事务', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_receiving_agreement` + MODIFY COLUMN `agreement_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '收货预约独立业务键', + MODIFY COLUMN `status` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '有效、取消或已替代状态', + MODIFY COLUMN `destination_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '权威目的仓关联键', + MODIFY COLUMN `confirmation_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前有效外部约号,失效后清空以释放覆盖', + MODIFY COLUMN `snapshot_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户逐来源覆盖、确认时区及仓库依据快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_receiving_change` + MODIFY COLUMN `change_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户预约变化业务键', + MODIFY COLUMN `status` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '待仓库确认、已应用或已撤回状态', + MODIFY COLUMN `batch_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '受影响原送货批次键', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次变化所属客户', + MODIFY COLUMN `snapshot_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原覆盖快照、逐来源拟保留量、负责人及跟进资料', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '确认后的实际批次去向及逐步骤结果', + MODIFY COLUMN `active_ref` varchar(260) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '同批同客户唯一未解决变化引用', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_receiving_member` + MODIFY COLUMN `agreement_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '所属收货预约业务键', + MODIFY COLUMN `batch_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定送货批次键', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '货物所属客户标识', + MODIFY COLUMN `active_ref` varchar(260) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '有效批次与客户唯一引用,退出后清空且历史保留', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_receiving_plan` + MODIFY COLUMN `batch_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定送货批次键', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '计划所属客户标识', + MODIFY COLUMN `snapshot_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本客户未确认计划、目标窗口及业务时区,不含有效预约确认', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fba_receiving_revision` + MODIFY COLUMN `agreement_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '收货预约业务键', + MODIFY COLUMN `snapshot_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '该版本完整客户覆盖、确认时段及回复依据', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_finance_fee_command` + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用写操作动作:CREATE、SUBMIT、REVIEW、ADJUST、VOID或资金重试', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA-256', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_finance_fee_source` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `customer_name` varchar(200) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + MODIFY COLUMN `source_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外费用来源类型', + MODIFY COLUMN `source_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务编号或入仓码快照', + MODIFY COLUMN `business_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务类型', + MODIFY COLUMN `business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务编号', + MODIFY COLUMN `inbound_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联入仓码;并非所有费用必填', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实集装箱号快照', + MODIFY COLUMN `fee_item_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目编码快照', + MODIFY COLUMN `fee_item_name` varchar(200) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目名称快照', + MODIFY COLUMN `fee_remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '费用说明,补收或重复作业原因', + MODIFY COLUMN `direction` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIVABLE应收或PAYABLE应付', + MODIFY COLUMN `supplier_name` varchar(200) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '应付供应商名称快照', + MODIFY COLUMN `supplier_category` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '应付供应商类别约束', + MODIFY COLUMN `settlement_mode` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'ON_ACCOUNT账期应付或DIRECT_PAID业务已付', + MODIFY COLUMN `payment_method` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '直接已付方式', + MODIFY COLUMN `payment_reference_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '直接已付流水号', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '财务结算币种,当前固定CNY', + MODIFY COLUMN `review_status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'DRAFT、PENDING、APPROVED或REJECTED', + MODIFY COLUMN `publication_status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'UNPUBLISHED或PUBLISHED', + MODIFY COLUMN `source_status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'ACTIVE、SUPERSEDED或VOIDED', + MODIFY COLUMN `review_reason` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核或作废原因', + MODIFY COLUMN `reviewer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', + MODIFY COLUMN `reviewer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '瀹℃牳浜哄悕绉板揩鐓', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人ID', + MODIFY COLUMN `updated_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最后更新人ID', + MODIFY COLUMN `original_currency` varchar(8) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '原币币种', + MODIFY COLUMN `exchange_rate_month` char(7) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '汇率月份YYYY-MM', + MODIFY COLUMN `quantity_unit` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '计费单位', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fleet_external_booking` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', + MODIFY COLUMN `incoming_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '正式来货单业务编号'; +ALTER TABLE `baiyue_lastleg`.`ll_fleet_finance_source` + MODIFY COLUMN `operator_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '提交操作人标识', + MODIFY COLUMN `request_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原请求幂等键', + MODIFY COLUMN `request_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范请求摘要,含sha256前缀', + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '关联公共Outbox事件ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fleet_pool_order_link` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围'; +ALTER TABLE `baiyue_lastleg`.`ll_fleet_quote` + MODIFY COLUMN `quote_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价业务编号', + MODIFY COLUMN `kind` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价用途采购或销售', + MODIFY COLUMN `party_name` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '往来单位名称快照', + MODIFY COLUMN `origin_city` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '发货城市', + MODIFY COLUMN `destination_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的仓业务编码', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价启停或删除状态', + MODIFY COLUMN `natural_key` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价组合去重摘要', + MODIFY COLUMN `create_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + MODIFY COLUMN `create_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求含导入批次内容摘要', + MODIFY COLUMN `created_by` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建操作人标识', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_fleet_quote_history` + MODIFY COLUMN `action` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价操作类型', + MODIFY COLUMN `operator_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人标识', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_fba_appointment` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `appointment_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '预约单号', + MODIFY COLUMN `appointment_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `appointment_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `replacement_nos_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '分批或合并后的新预约业务号列表,非空时原批次只读', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `confirmation_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '收货方正式外部确认号', + MODIFY COLUMN `timezone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓权威IANA时区,未维护不得确认', + MODIFY COLUMN `origin_warehouse_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际起运仓', + MODIFY COLUMN `replacement_keys_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '替代批次不可变键列表,只用于内部业务关联', + MODIFY COLUMN `repartition_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '分批或合并原因,原安排及来源明细保留', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_fba_appointment_item` + MODIFY COLUMN `source_key` varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定ORDER或BOOKING货源键', + MODIFY COLUMN `source_version` varchar(160) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '保存时核实的来源版本', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本票所属客户', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实入仓码,不伪造', + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的FBA仓编码', + MODIFY COLUMN `active_source_key` varchar(160) COLLATE utf8mb4_0900_ai_ci GENERATED ALWAYS AS ((case when (`active` = 1) then `source_key` else NULL end)) STORED COMMENT '有效货源唯一占用键', + MODIFY COLUMN `shipment_references_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '本次采用的货件或追踪号核实快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_order` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `source_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + MODIFY COLUMN `source_inbound_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓分片 ID', + MODIFY COLUMN `root_inbound_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根入仓单 ID', + MODIFY COLUMN `source_order_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单 ID', + MODIFY COLUMN `source_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单号', + MODIFY COLUMN `root_order_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根订单 ID', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓码', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓 ID', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + MODIFY COLUMN `destination_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + MODIFY COLUMN `source_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件 ID', + MODIFY COLUMN `source_loading_plan_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '装柜计划 ID', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '负载摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单状态', + MODIFY COLUMN `exception_flag` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'NONE' COMMENT '异常标记', + MODIFY COLUMN `lx_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_order_item` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `source_inbound_detail_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓明细ID', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + MODIFY COLUMN `fba_tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA跟踪号', + MODIFY COLUMN `shipment_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号', + MODIFY COLUMN `shipping_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '唛头', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码', + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + MODIFY COLUMN `product_name_en` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_pallet_merge` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `merge_group_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_pda_operation` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_pda_task` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `task_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `operator_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_plan` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `plan_no` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入库单号', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', + MODIFY COLUMN `pallet_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '人工计划托盘类型', + MODIFY COLUMN `creation_mode` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AUTO' COMMENT '计划生成方式:AUTO柜级自动、MANUAL单票人工、WAREHOUSE_TRANSFER仓储转运', + MODIFY COLUMN `plan_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓计划备注', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '入库计划状态:PENDING_ASSIGNMENT待分配及后续正式状态', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_plan_carton` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `source_inbound_detail_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入库明细ID', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码快照', + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内冻结箱唛', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱唛状态:UNASSIGNED、ON_PALLET、AVAILABLE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_plan_line` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '头程入仓码快照', + MODIFY COLUMN `destination_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'OVERSEAS' COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA仓库编码', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + MODIFY COLUMN `delivery_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓目的地址快照', + MODIFY COLUMN `postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编快照', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人快照', + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_plan_pallet` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓资源服务返回的真实托盘码', + MODIFY COLUMN `source_pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', + MODIFY COLUMN `pallet_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '人工计划托盘类型', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + MODIFY COLUMN `assignment_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'UNASSIGNED', + MODIFY COLUMN `destination_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', + MODIFY COLUMN `delivery_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓目的地址快照', + MODIFY COLUMN `postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编快照', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人快照', + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_plan_pallet_allocation` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_COUNT', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inbound_stock_receipt` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + MODIFY COLUMN `product_name_en` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名快照', + MODIFY COLUMN `sku_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_detail_ids` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `pallet_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', + MODIFY COLUMN `warehouse_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inventory_operation_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inventory_balance` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Customer tenant', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Customer name snapshot', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Actual overseas warehouse ID', + MODIFY COLUMN `overseas_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Actual overseas warehouse code snapshot', + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Actual overseas warehouse name snapshot', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Customer destination warehouse ID snapshot', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT 'Customer destination warehouse code snapshot', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Customer destination warehouse name snapshot', + MODIFY COLUMN `inbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `sku_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Chinese product name', + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + MODIFY COLUMN `product_name_en` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inventory_ledger` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '瀹㈡埛鍚嶇О涓嶅彲鍙樺揩鐓�', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `pallet_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `warehouse_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `business_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `business_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `outbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status_from` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status_to` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inventory_operation` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PROCESSING', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN `last_error` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_inventory_position` + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `pallet_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', + MODIFY COLUMN `warehouse_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Informational default location code', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_loading_event_inbox` + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局唯一标识', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', + MODIFY COLUMN `event_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化事件负载 SHA-256 摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RECEIVED' COMMENT '消费状态:RECEIVED/PROCESSED', + MODIFY COLUMN `last_error` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次处理错误', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_loading_order_status_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + MODIFY COLUMN `event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '触发事件 ID', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '状态变更备注', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_local_looseboard_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型:CREATE、UPDATE或STATUS', + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_local_looseboard_operation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作请求内容哈希', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_local_looseboard_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本土散板订单号', + MODIFY COLUMN `pallet_required` varchar(8) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鏄?惁闇??鎵撶洏锛歒ES鎴朜O锛涙嫾杞︽潵婧愭湭鎻愪緵鏃朵负绌', + MODIFY COLUMN `transport_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鎺ュ崟杩愯緭瀹夋帓锛涗笅鍗曚笉棰勮?', + MODIFY COLUMN `origin` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起运地', + MODIFY COLUMN `origin_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运详细地址', + MODIFY COLUMN `destination` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的地', + MODIFY COLUMN `destination_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的详细地址、码头或仓号', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '预算币种', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ACCEPTANCE' COMMENT '本土散板订单状态', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求内容哈希', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商品名称', + MODIFY COLUMN `origin_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系人', + MODIFY COLUMN `origin_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系电话', + MODIFY COLUMN `destination_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系人', + MODIFY COLUMN `destination_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系电话', + MODIFY COLUMN `delivery_mode` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓方式:送货到仓或仓库上门取货', + MODIFY COLUMN `operating_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际收货海外仓ID', + MODIFY COLUMN `destination_type` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地类型:FBA或私人地址', + MODIFY COLUMN `destination_postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人目的地邮编', + MODIFY COLUMN `delivery_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '送货到仓联系人', + MODIFY COLUMN `delivery_contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '送货到仓联系电话', + MODIFY COLUMN `tracking_no` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物流跟踪号', + MODIFY COLUMN `transfer_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联的仓储转运收货单号', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_monthly_exchange_rate` + MODIFY COLUMN `rate_month` char(7) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '汇率月份,格式yyyy-MM', + MODIFY COLUMN `base_currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '基准币种', + MODIFY COLUMN `quote_currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '报价币种', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/INACTIVE', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + MODIFY COLUMN `updated_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_monthly_exchange_rate_history` + MODIFY COLUMN `before_status` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + MODIFY COLUMN `after_status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更说明', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order` + MODIFY COLUMN `order_no` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '尾程单号', + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', + MODIFY COLUMN `order_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'FIRST_LEG' COMMENT '订单类型', + MODIFY COLUMN `lx_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', + MODIFY COLUMN `destination_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实来源入仓码;无入仓关系的海外本土业务为空', + MODIFY COLUMN `source_region` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域/系统', + MODIFY COLUMN `source_inbound_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最终实装 LOADED 分片 ID,建单幂等键', + MODIFY COLUMN `root_inbound_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根入仓单 ID', + MODIFY COLUMN `source_order_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单 ID', + MODIFY COLUMN `source_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单号', + MODIFY COLUMN `root_order_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根订单 ID', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货主名称', + MODIFY COLUMN `source_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源国内装柜仓 ID 快照', + MODIFY COLUMN `source_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源国内装柜仓名称快照', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓ID;新建尾程订单由业务服务预分配', + MODIFY COLUMN `overseas_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓名称快照', + MODIFY COLUMN `transfer_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓ID', + MODIFY COLUMN `transfer_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓编码', + MODIFY COLUMN `transfer_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓名称', + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA 仓库编码', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '集装箱号', + MODIFY COLUMN `container_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT '待转柜' COMMENT '货柜状态', + MODIFY COLUMN `hold_reason` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前暂扣原因;解除后为空', + MODIFY COLUMN `inbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入库单号', + MODIFY COLUMN `outbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库单号', + MODIFY COLUMN `delivery_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送单号', + MODIFY COLUMN `relabel_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标单号', + MODIFY COLUMN `relabel_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', + MODIFY COLUMN `pallet_merge_flag` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '合托标记', + MODIFY COLUMN `pallet_merge_batch_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '平台预标记合托分组号', + MODIFY COLUMN `current_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '当前业务状态', + MODIFY COLUMN `private_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(仅自己)', + MODIFY COLUMN `customer_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(客户)', + MODIFY COLUMN `warehouse_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(仓库)', + MODIFY COLUMN `source_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件 ID', + MODIFY COLUMN `source_loading_plan_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源装柜计划 ID', + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源头程货柜预订ID', + MODIFY COLUMN `source_payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件负载摘要', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `sub_order_status` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '子单据状态汇总', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_budget_reservation` + MODIFY COLUMN `customer_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离标识', + MODIFY COLUMN `order_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '成功创建的业务单号', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_command_record` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令动作:MANUAL_PLAN、HOLD、MANUAL_NODES', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人ID', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化请求SHA-256摘要', + MODIFY COLUMN `result_ref` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '结果业务引用', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '首次成功响应JSON快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_detail` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `source_inbound_detail_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓明细 ID', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU 编码', + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + MODIFY COLUMN `product_name_en` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓 ID', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + MODIFY COLUMN `fba_tracking_no` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA跟踪号', + MODIFY COLUMN `shipment_no` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号', + MODIFY COLUMN `shipping_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '唛头', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_fee` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `fee_item` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目', + MODIFY COLUMN `currency` varchar(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种代码', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '费用状态:PENDING_REVIEW待审核、APPROVED审核通过、REJECTED已驳回', + MODIFY COLUMN `supplier_description` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商或费用说明', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建操作人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_hold_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `reason` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '暂扣或解除原因', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_manual_node` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `node_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '八行人工展示节点稳定代码,与Carrier标准节点隔离', + MODIFY COLUMN `source` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'MANUAL' COMMENT '节点来源,固定MANUAL', + MODIFY COLUMN `updated_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最近操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_manual_node_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `nodes_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次全量人工节点JSON快照', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_no_daily_sequence` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_operation_log` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `operation_node` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作节点', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + MODIFY COLUMN `result` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理结果', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_source_pallet` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `source_pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '头程冻结托盘码', + MODIFY COLUMN `source_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源装柜完成事件ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_order_status_history` + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + MODIFY COLUMN `reason` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更原因', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_outbound_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `outbound_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `dispatch_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派车单号,一件代发为空', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_OUTBOUND', + MODIFY COLUMN `outbound_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DISPATCH_DELIVERY' COMMENT '出库类型', + MODIFY COLUMN `lx_codes` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联一件代发领星入库单代码汇总', + MODIFY COLUMN `recipient_info` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发收件信息', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发创建请求摘要,其他出库类型为空', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_outbound_pallet_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鎵樼洏鍙凤紝绠辩淮搴﹀嚭搴撲负绌�', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_PICK' COMMENT '拣货状态', + MODIFY COLUMN `order_refs` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发SKU', + MODIFY COLUMN `carton_marks` varchar(4000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_outbound_pda_pick` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_outbound_pda_task` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `task_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA任务号', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '任务状态:待拣货、拣货中、已完成', + MODIFY COLUMN `completion_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完成命令幂等键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_procurement_fee` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', + MODIFY COLUMN `fee_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用业务号', + MODIFY COLUMN `fee_item_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项编码', + MODIFY COLUMN `fee_item_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项名称', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '费用币种', + MODIFY COLUMN `voucher_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '凭证文件名', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '说明', + MODIFY COLUMN `wallet_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资金状态', + MODIFY COLUMN `wallet_error_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误码', + MODIFY COLUMN `wallet_error_message` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误说明', + MODIFY COLUMN `wallet_command_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前资金指令事件ID', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '登记人', + MODIFY COLUMN `purpose` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '费用业务用途;由履约节点确定', + MODIFY COLUMN `confirmation_origin` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BUSINESS' COMMENT '核定入口:BUSINESS业务节点、FINANCIAL财务操作', + MODIFY COLUMN `determination` varchar(24) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'POSITIVE正额、ZERO零元、NOT_APPLICABLE不适用', + MODIFY COLUMN `original_currency` char(3) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '核定原币CNY或USD', + MODIFY COLUMN `exchange_rate_month` char(7) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '已确认汇率所属月份', + MODIFY COLUMN `wallet_business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金冻结业务号;实际国际运费引用原预估', + MODIFY COLUMN `wallet_hold_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Finance冻结引用', + MODIFY COLUMN `wallet_ledger_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Finance实际处理流水引用', + MODIFY COLUMN `settled_command_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '成功实扣或退款的资金命令事件', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '閫??璇锋眰骞傜瓑閿?紝鐙?珛浜庝笟鍔″崟鍙', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '确认请求摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_procurement_file` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', + MODIFY COLUMN `category` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIPT签收文件或VOUCHER费用凭证', + MODIFY COLUMN `file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '文件名快照', + MODIFY COLUMN `content_type` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '媒体类型', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上传人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_procurement_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `purchase_category` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `product_specification` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `product_url` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD', + MODIFY COLUMN `receiving_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `purchase_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `purchase_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `domestic_carrier` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `domestic_tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_carrier` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `overseas_tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `reviewed_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `review_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `review_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核幂等键', + MODIFY COLUMN `review_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核请求内容哈希', + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `procurement_direction` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'OVERSEAS_TO_DOMESTIC' COMMENT '采购方向:海外采购回国内/国内采购发海外', + MODIFY COLUMN `customer_rejection_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户采购结果驳回原因', + MODIFY COLUMN `rejected_photo_ids` text COLLATE utf8mb4_0900_ai_ci COMMENT '本轮客户驳回的收货照片主键快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_procurement_outbound` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `outbound_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `carrier` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_procurement_status_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `operation_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作类型:CREATE、REVIEW或UPDATE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_quote` + MODIFY COLUMN `name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价名称', + MODIFY COLUMN `warehouse_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '合作仓编码快照', + MODIFY COLUMN `warehouse_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '合作仓名称快照', + MODIFY COLUMN `country_code` varchar(2) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国家二字码快照', + MODIFY COLUMN `provider_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价方', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', + MODIFY COLUMN `version_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务版本号', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'INACTIVE' COMMENT '状态:ACTIVE/INACTIVE', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + MODIFY COLUMN `updated_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_quote_fee` + MODIFY COLUMN `item` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目', + MODIFY COLUMN `billing_unit` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '计费单位', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_overseas_quote_transit_price` + MODIFY COLUMN `fba_warehouse_code` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'FBA仓编码', + MODIFY COLUMN `delivery_method` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价运输方式', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_inventory_move` + MODIFY COLUMN `move_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库操作单号', + MODIFY COLUMN `pallet_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实物托盘码快照', + MODIFY COLUMN `source_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源库位码快照', + MODIFY COLUMN `target_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标库位码快照', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + MODIFY COLUMN `reason` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库原因', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库幂等键', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库请求哈希', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库处理状态', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应JSON', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_operation_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '作业涉及的客户标识', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + MODIFY COLUMN `operation_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业类型', + MODIFY COLUMN `business_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业业务键', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业结果状态', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '写操作幂等键', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '写请求内容哈希', + MODIFY COLUMN `summary` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '作业结果摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_pallet_operation` + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '设备幂等键', + MODIFY COLUMN `operation_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘作业类型', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容摘要', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理状态:PROCESSING、COMPLETED、FAILED_COMPENSATED、COMPENSATION_REQUIRED', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应快照', + MODIFY COLUMN `remote_transitions_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '实物托盘状态变更回执', + MODIFY COLUMN `last_error` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后失败原因', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_stocktake_action` + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作幂等键', + MODIFY COLUMN `action_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点动作类型', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作请求哈希', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作处理状态', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应JSON', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_stocktake_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户标识', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU快照', + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '品名快照', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓码快照', + MODIFY COLUMN `pallet_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实物托盘码快照', + MODIFY COLUMN `location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库位码快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点明细状态', + MODIFY COLUMN `counted_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '盘点操作账号标识', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_pda_stocktake_task` + MODIFY COLUMN `task_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点任务号', + MODIFY COLUMN `scope_type` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点范围类型LOCATION或PALLET', + MODIFY COLUMN `scope_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点库位码或托盘码快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点任务状态', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建操作账号标识', + MODIFY COLUMN `submitted_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提交操作账号标识', + MODIFY COLUMN `submit_reason` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '盘点差异提交原因', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求哈希', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_physical_pallet_guard` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_budget_authorization` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `previous_currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原预算币种', + MODIFY COLUMN `currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户授权币种', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '授权依据', + MODIFY COLUMN `reviewed_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '核验人员', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_carton` + MODIFY COLUMN `carton_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购订单内业务箱号', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_carton_source` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_closure` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `closure_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常关闭业务号', + MODIFY COLUMN `financial_conclusion` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '已知费用及后续无需收费的处理结论,不改变资金事实', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '内部关闭原因', + MODIFY COLUMN `client_summary` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '人工确认的对客关闭摘要', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购管理确认人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_closure_item` + MODIFY COLUMN `source_kind` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '购买未达、在途未达、合格、破损或多货来源', + MODIFY COLUMN `decision` varchar(40) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '供应商保管、退还、报失、客户授权保管或处置', + MODIFY COLUMN `destination` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际去向及接收方说明', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_command` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `action` varchar(48) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购节点动作', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求摘要', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '执行人', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作依据', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_control_note` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `note_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更正说明业务号', + MODIFY COLUMN `target_type` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '购买、仓库、实收或交寄事实类型', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '内部更正说明', + MODIFY COLUMN `client_summary` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '人工确认的对客摘要,不复制内部原始内容', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购管理操作人', + MODIFY COLUMN `resolved_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '处理确认人', + MODIFY COLUMN `resolution_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '内部处理结果', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_daily_sequence` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_disposition` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `leg` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'OVERSEAS海外或DOMESTIC国内', + MODIFY COLUMN `kind` varchar(24) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SHORTAGE短少、DAMAGED破损、EXTRA多货', + MODIFY COLUMN `decision` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'ACCEPT_SHORTAGE确认短少、DISPOSE_DAMAGED拒收或处置、RETURN_EXTRA退回多货', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处置依据', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购管理人员', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_estimate_review` + MODIFY COLUMN `reviewed_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '核价人员', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_fee_correction` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `correction_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '财务更正业务号', + MODIFY COLUMN `idempotency_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本单更正请求幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更正目标及凭证请求摘要', + MODIFY COLUMN `original_currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '沿用原费用币种', + MODIFY COLUMN `exchange_rate_month` char(7) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原汇率月份,不取本次操作月份', + MODIFY COLUMN `reason` varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更正依据', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '授权财务操作人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_fee_correction_item` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_flow` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `purchased_product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际购买商品', + MODIFY COLUMN `purchased_specification` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际购买规格', + MODIFY COLUMN `purchase_currency` char(3) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商实付原币CNY或USD', + MODIFY COLUMN `purchase_issue` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '购买未核定或异常说明', + MODIFY COLUMN `actual_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际收货仓编码快照', + MODIFY COLUMN `actual_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实际收货仓名称快照', + MODIFY COLUMN `domestic_receiver_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '国际段国内收件人', + MODIFY COLUMN `domestic_receiver_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '国际段国内收件电话', + MODIFY COLUMN `domestic_receiver_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '国际段国内接收地址', + MODIFY COLUMN `control_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '取消或关闭原因', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_label_item` + MODIFY COLUMN `carrier` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '承运商', + MODIFY COLUMN `tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱主或子运单号', + MODIFY COLUMN `applied_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '贴单确认人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_label_set` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `leg` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'OVERSEAS国际段或DOMESTIC寄客户段', + MODIFY COLUMN `cargo_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱规及有效货物来源摘要', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '制单操作人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_manifest` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'DRAFT草稿、CONFIRMED已确认、SUPERSEDED已替代', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '制单人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_receipt` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `receipt_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购收货业务编号', + MODIFY COLUMN `leg` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'OVERSEAS海外或DOMESTIC国内', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登记人员', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_repack` + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换包装依据', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内作业人员', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_shipment` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `shipment_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '交寄业务编号', + MODIFY COLUMN `leg` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'OVERSEAS国际交寄或DOMESTIC寄客户', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '交寄确认人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_shipment_item` + MODIFY COLUMN `carrier` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '承运商快照', + MODIFY COLUMN `tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '运单号快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_procurement_wallet_attempt` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `operation` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资金操作:FREEZE冻结、SETTLE结算、SETTLE_ACTUAL实际结算、RELEASE释放、REFUND退款', + MODIFY COLUMN `business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Finance资金业务号', + MODIFY COLUMN `command_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资金指令事件唯一引用', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资金请求结果:PENDING未决、SUCCEEDED成功、FAILED明确失败', + MODIFY COLUMN `result_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原业务回执摘要', + MODIFY COLUMN `wallet_hold_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Finance冻结引用', + MODIFY COLUMN `wallet_ledger_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'Finance处理流水引用', + MODIFY COLUMN `error_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '业务失败码', + MODIFY COLUMN `error_message` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '内部失败诊断,不直接对客展示', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_receiving_container_operation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号唯一标识', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作动作', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + MODIFY COLUMN `request_hash` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + MODIFY COLUMN `request_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容快照', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '响应内容快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_receiving_container_session` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '所选柜解析出的客户标识', + MODIFY COLUMN `container_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', + MODIFY COLUMN `overseas_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓库服务校验后的海外实际收货共享物理仓名称快照', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号唯一标识', + MODIFY COLUMN `operator_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作账号名称', + MODIFY COLUMN `active_operator_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '未完成会话平台操作账号全局唯一锁键', + MODIFY COLUMN `active_container_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '未完成会话柜号全局唯一锁键', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_SIGN' COMMENT '会话状态:WAIT_SIGN、SIGNED、RECEIVING、COMPLETED', + MODIFY COLUMN `source_container_booking_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '稳定来源柜预订ID', + MODIFY COLUMN `container_fact_hash` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '领取时整柜订单与计划事实摘要', + MODIFY COLUMN `overseas_warehouse_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_receiving_fba_pallet_count` + MODIFY COLUMN `group_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '柜号与FBA仓组成的收货组键', + MODIFY COLUMN `pallet_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '现有FBA托盘码', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_receiving_sku_receipt` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓码快照', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码快照', + MODIFY COLUMN `product_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_receiving_warehouse_operation` + MODIFY COLUMN `source_container_booking_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台请求幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人名称', + MODIFY COLUMN `remark` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '接柜仓修改备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_application` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `relabel_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `delivery_method` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送方式:TRUCK卡车、PICKUP自提、EXPRESS快递;仅涉及箱唛换标时必填', + MODIFY COLUMN `shipping_label_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单文件ID', + MODIFY COLUMN `shipping_label_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单文件名', + MODIFY COLUMN `shipping_label_file_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单下载地址', + MODIFY COLUMN `fulfillment_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_RELABEL' COMMENT '换标后履约状态', + MODIFY COLUMN `outbound_order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '自提或快递生成的换标出库单号', + MODIFY COLUMN `customer_confirmation_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户确认完成幂等键', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `total_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF文件ID', + MODIFY COLUMN `total_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF文件名', + MODIFY COLUMN `total_file_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF预览地址', + MODIFY COLUMN `carton_total_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件ID', + MODIFY COLUMN `carton_total_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件名', + MODIFY COLUMN `carton_total_file_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件地址', + MODIFY COLUMN `sku_total_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件ID', + MODIFY COLUMN `sku_total_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件名', + MODIFY COLUMN `sku_total_file_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件地址', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_PROCESSING', + MODIFY COLUMN `charge_currency` char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '费用币种', + MODIFY COLUMN `wallet_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'FREEZE_PENDING' COMMENT '资金状态', + MODIFY COLUMN `wallet_error_code` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误码', + MODIFY COLUMN `wallet_error_message` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误说明', + MODIFY COLUMN `wallet_command_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前资金指令事件ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码(选填)', + MODIFY COLUMN `product_image_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `product_image_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `product_image_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `shipment_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号(无FBA去向时为空)', + MODIFY COLUMN `tracking_code` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `new_sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标后SKU编码', + MODIFY COLUMN `label_requirement` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货物明细备注', + MODIFY COLUMN `relabel_file_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `relabel_file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `relabel_file_url` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '瀹㈡埛鑷湁绠卞敍', + MODIFY COLUMN `source_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '閫�璐ф崲绠卞敍鍘熺鍞涘揩鐓�', + MODIFY COLUMN `new_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '閫�璐ф崲绠卞敍鏂扮鍞�', + MODIFY COLUMN `fba_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鍏宠仈FBA绠卞敍', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '该箱目的海外仓ID', + MODIFY COLUMN `destination_fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA目的仓编码(与海外操作仓分离)', + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CARTON_LABEL' COMMENT '换标模式:箱唛、SKU或组合换标', + MODIFY COLUMN `source_inbound_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `source_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_pda_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '现场动作类型', + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '动作前任务状态', + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作后任务状态', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号标识', + MODIFY COLUMN `operator_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作员名称快照', + MODIFY COLUMN `detail_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '动作详情JSON', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_pda_operation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求操作账号标识', + MODIFY COLUMN `action` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '幂等操作动作', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '设备生成的幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + MODIFY COLUMN `result_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成功响应快照JSON', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_pda_task` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `relabel_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标申请单号快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务状态:PROCESSING、WAIT_REVIEW或COMPLETED', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '认领操作账号标识', + MODIFY COLUMN `operator_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '认领操作员名称快照', + MODIFY COLUMN `reviewer_key` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '复核账号标识', + MODIFY COLUMN `reviewer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '复核员名称快照', + MODIFY COLUMN `completion_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完成提交备注', + MODIFY COLUMN `review_decision` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近复核结论:APPROVE、REWORK或CUSTOMER_CONFIRMED', + MODIFY COLUMN `review_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近复核备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_pda_unit_fact` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `old_label` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扫描的实物旧标签或箱标', + MODIFY COLUMN `new_label` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扫描的换标后新标签', + MODIFY COLUMN `result` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '逐件结果:RELABELLED、SKIPPED或EXCEPTION', + MODIFY COLUMN `exception_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常编码', + MODIFY COLUMN `reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '跳过或异常原因', + MODIFY COLUMN `operator_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号标识', + MODIFY COLUMN `operator_name` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作员名称快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_relabel_status_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_carton_count_session` + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台PDA操作员标识', + MODIFY COLUMN `warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '认领时绑定海外仓标识', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_carton_stock_receipt` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + MODIFY COLUMN `receipt_no` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱回仓实收业务号', + MODIFY COLUMN `source_outbound_no` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库单业务号', + MODIFY COLUMN `carton_mark` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱业务箱码快照', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际回仓海外仓标识', + MODIFY COLUMN `target_pallet_no` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标托盘业务码', + MODIFY COLUMN `target_location_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标库位业务码', + MODIFY COLUMN `sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库快照中的商品编码', + MODIFY COLUMN `product_name_zh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原出库快照中的中文品名', + MODIFY COLUMN `received_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次原箱实收确认操作人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_inventory_balance` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_inventory_carton` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + MODIFY COLUMN `source_batch_no` text COLLATE utf8mb4_0900_ai_ci COMMENT '实际消耗来源签收批次号,多个批次逗号分隔', + MODIFY COLUMN `source_return_no` text COLLATE utf8mb4_0900_ai_ci COMMENT '实际消耗来源退货单号,多个单号逗号分隔', + MODIFY COLUMN `source_unit_type` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源实物类型', + MODIFY COLUMN `source_unit_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源实物编码', + MODIFY COLUMN `pallet_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收时绑定的托盘码', + MODIFY COLUMN `carton_mark` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货箱号和箱唛编码', + MODIFY COLUMN `fba_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA箱唛', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + MODIFY COLUMN `relabel_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '绑定换标单号', + MODIFY COLUMN `relabel_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'AVAILABLE可用或MERGED已合箱', + MODIFY COLUMN `new_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鎹㈡爣鍚庢柊绠卞敍', + MODIFY COLUMN `location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '退货箱当前库位', + MODIFY COLUMN `count_status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CONFIRMED' COMMENT '箱内清点状态 PENDING待清点 CONFIRMED已确认', + MODIFY COLUMN `counted_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱内清点确认操作人', + MODIFY COLUMN `label_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'WAIT_LABEL寰呰创鏍� CONFIRMED宸叉壂鐮佺‘璁ゆ爣绛�', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_inventory_carton_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + MODIFY COLUMN `product_name_zh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_inventory_operation` + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作人ID', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA-256', + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型,当前MERGE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_inventory_outbound_movement` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户ID和隔离键', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际出库海外仓ID', + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冻结的真实退货箱业务码', + MODIFY COLUMN `outbound_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次退货出库业务单号', + MODIFY COLUMN `sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次出库SKU编码快照', + MODIFY COLUMN `product_name_zh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_order` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `return_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货订单号', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + MODIFY COLUMN `warehouse_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中转仓联系人快照', + MODIFY COLUMN `warehouse_contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中转仓联系电话快照', + MODIFY COLUMN `customer_reference_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户参考号', + MODIFY COLUMN `lastleg_order_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'linked lastleg order no', + MODIFY COLUMN `relabel_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '绑定换标单号', + MODIFY COLUMN `relabel_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PENDING_RECEIPT、PARTIALLY_RECEIVED或COMPLETED', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户备注', + MODIFY COLUMN `discrepancy_reason` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '手动完结差异原因', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求SHA-256', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_order_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + MODIFY COLUMN `product_name_zh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_packing_plan` + MODIFY COLUMN `plan_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `mode` varchar(40) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建载荷摘要', + MODIFY COLUMN `completion_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完成载荷摘要', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_packing_trace` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原客户隔离键', + MODIFY COLUMN `source_carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源箱唛 空值表示目标箱原有库存快照', + MODIFY COLUMN `target_carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标箱唛', + MODIFY COLUMN `return_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原始退货单号', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商品SKU编码', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_receipt` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `receipt_no` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收单号', + MODIFY COLUMN `receipt_batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收批次号', + MODIFY COLUMN `unit_type` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收实物类型 PALLET/BOX/PARCEL', + MODIFY COLUMN `unit_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收实物编码', + MODIFY COLUMN `measurement_source` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '尺寸重量来源 PALLET_MEASURED托盘实测 UNIT_SUM子箱汇总', + MODIFY COLUMN `pallet_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次签收绑定的托盘码', + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收生成或绑定的退货箱号', + MODIFY COLUMN `tracking_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次签收包裹的可选快递单号', + MODIFY COLUMN `bound_by` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '开始签收方式,RETURN_NO退货单号或SKU候选', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收状态,当前SIGNED', + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作人ID', + MODIFY COLUMN `operator_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA操作人名称', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA确认幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA确认请求SHA-256', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_receipt_batch` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收批次号', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + MODIFY COLUMN `storage_billing_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓储计费状态,初始PENDING_PRICING', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_receipt_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN `sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_sku_conversion` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN `overseas_warehouse_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + MODIFY COLUMN `relabel_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标单号', + MODIFY COLUMN `round_key` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业轮次,退回重做使用新轮次', + MODIFY COLUMN `carton_mark` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '完工时仓库识别码', + MODIFY COLUMN `old_sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标前SKU', + MODIFY COLUMN `new_sku_code` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标后SKU', + MODIFY COLUMN `product_name_zh` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'APPLIED待客户确认/CONFIRMED已确认/REVERSED退回冲回', + MODIFY COLUMN `ownership_json` longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次转换件数的来源退货单快照,供精确冲回', + MODIFY COLUMN `storage_rent_shares_json` longtext COLLATE utf8mb4_0900_ai_ci COMMENT '原仓租批次迁移快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_return_stock_receipt` + MODIFY COLUMN `customer_id` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据归属', + MODIFY COLUMN `receipt_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退回实收业务编号', + MODIFY COLUMN `source_outbound_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原发运出库业务编号', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_security_event_inbox` + MODIFY COLUMN `event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '跨区安全事件ID', + MODIFY COLUMN `event_type` varchar(96) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'IAM安全事件类型', + MODIFY COLUMN `payload_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化载荷SHA-256哈希', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '消费状态:RECEIVED或PROCESSED', + MODIFY COLUMN `result` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '处理结果:APPLIED、STALE、DUPLICATE或DUPLICATE_VERSION', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_security_projection` + MODIFY COLUMN `aggregate_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型:USER、TENANT或AUTHORIZATION', + MODIFY COLUMN `aggregate_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户或客户聚合ID', + MODIFY COLUMN `security_status` varchar(24) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前安全状态:ACTIVE或DISABLED', + MODIFY COLUMN `payload_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '当前版本载荷哈希', + MODIFY COLUMN `last_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最后应用的事件ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_storage_rent_inbound` + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_storage_rent_lot` + MODIFY COLUMN `source_key` varchar(80) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实收来源幂等键', + MODIFY COLUMN `customer_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `customer_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称', + MODIFY COLUMN `warehouse_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓标识', + MODIFY COLUMN `warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称', + MODIFY COLUMN `business_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原入库业务类型', + MODIFY COLUMN `business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原入库业务单号', + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓码', + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原实收批次', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商品编码', + MODIFY COLUMN `rule_code` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓租规则', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_storage_rent_preparation` + MODIFY COLUMN `warehouse_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业海外仓', + MODIFY COLUMN `customer_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用客户', + MODIFY COLUMN `mode` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '扫码类型', + MODIFY COLUMN `execution_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际作业单号', + MODIFY COLUMN `request_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原扫码幂等键', + MODIFY COLUMN `request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原扫码内容哈希', + MODIFY COLUMN `business_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次应收业务类型', + MODIFY COLUMN `business_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次应收业务单号', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资金与扫码状态', + MODIFY COLUMN `exchange_rate_month` varchar(7) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '汇率月份', + MODIFY COLUMN `freeze_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '冻结指令事件', + MODIFY COLUMN `settle_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扣款指令事件', + MODIFY COLUMN `release_event_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '解冻指令事件', + MODIFY COLUMN `release_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '解冻回执状态,失败后由恢复任务重发', + MODIFY COLUMN `hold_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '财务冻结主键', + MODIFY COLUMN `ledger_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '财务扣款流水', + MODIFY COLUMN `error_message` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金处理结果', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_storage_rent_share` + MODIFY COLUMN `batch_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '普通库存当前批次,换标搬移保持原计租批次引用', + MODIFY COLUMN `customer_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `warehouse_id` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓标识', + MODIFY COLUMN `carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前箱唛', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '商品编码', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_us_truck_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `order_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `transport_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `origin` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `origin_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `destination` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `destination_address` varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `container_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `currency` varchar(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD', + MODIFY COLUMN `contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '旧本土卡车字段,新单使用起终点联系人及时间', + MODIFY COLUMN `contact_info` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '旧本土卡车字段,新单使用起终点联系人及时间', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `receipt_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `receipt_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `vehicle_type` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车辆类型:PALLET_15为15拖,PALLET_30为30拖;拼车未提供时为空', + MODIFY COLUMN `origin_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系人', + MODIFY COLUMN `origin_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地联系电话', + MODIFY COLUMN `destination_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系人', + MODIFY COLUMN `destination_contact_phone` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地联系电话', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_us_truck_order_operation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `operation_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '具名操作类型', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作请求内容哈希', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_us_truck_order_pallet` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_us_truck_order_status_history` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operation_type` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'UPDATE' COMMENT '具名操作类型', + MODIFY COLUMN `from_status` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `to_status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operator_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_vehicle` + MODIFY COLUMN `plate_number` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车牌号', + MODIFY COLUMN `model` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车型', + MODIFY COLUMN `driver_or_dispatch_company` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机姓名或外派单位', + MODIFY COLUMN `phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机或外派单位联系电话', + MODIFY COLUMN `region` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '区域:DOMESTIC/OVERSEAS', + MODIFY COLUMN `ownership` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车辆归属:OWNED/DISPATCHED', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '状态:IN_SERVICE/DISPATCHED/MAINTENANCE/INACTIVE/RETURNED', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + MODIFY COLUMN `updated_by` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_wallet_event_inbox` + MODIFY COLUMN `event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内Finance资金结果事件ID', + MODIFY COLUMN `command_event_id` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原海外资金指令事件ID', + MODIFY COLUMN `payload_hash` varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化载荷SHA-256,包含sha256:前缀', + MODIFY COLUMN `status` varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIVED或PROCESSED', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_carton` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '系统生成的一箱一码箱唛', + MODIFY COLUMN `customer_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户原箱唛,用于换标现场绑定', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'EXPECTED' COMMENT '箱状态:EXPECTED待实收', + MODIFY COLUMN `count_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱内清点幂等键', + MODIFY COLUMN `count_request_hash` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱内清点请求摘要', + MODIFY COLUMN `counted_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱内清点操作人', + MODIFY COLUMN `discrepancy_reason` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '实收与预报箱数差异原因', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_inventory_allocation` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RESERVED', + MODIFY COLUMN `active_position_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次来源分配的实际SKU快照', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `sku_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `product_name_zh` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `shipping_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_measurement_photo` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `file_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件名快照', + MODIFY COLUMN `content_type` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件媒体类型快照', + MODIFY COLUMN `uploaded_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA上传操作人', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `transfer_no` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `lastleg_order_no` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `operating_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `fba_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA目的仓编码', + MODIFY COLUMN `delivery_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '提货地址或中转仓收货地址', + MODIFY COLUMN `pickup_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货联系人', + MODIFY COLUMN `pickup_contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货联系电话', + MODIFY COLUMN `delivery_method` varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓方式', + MODIFY COLUMN `fba_shipment_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA货件编号', + MODIFY COLUMN `tracking_no` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `fba_box_nos` varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `relabel_no` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW', + MODIFY COLUMN `review_decision` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核决定', + MODIFY COLUMN `review_remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核备注或驳回原因', + MODIFY COLUMN `reviewed_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', + MODIFY COLUMN `allocation_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '库存分配幂等键', + MODIFY COLUMN `allocation_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '库存分配请求哈希', + MODIFY COLUMN `outbound_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库幂等键', + MODIFY COLUMN `outbound_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库请求哈希', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + MODIFY COLUMN `relabel_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标联系人', + MODIFY COLUMN `relabel_contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标联系电话', + MODIFY COLUMN `relabel_delivery_method` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标后派送方式', + MODIFY COLUMN `palletize_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA打托幂等键', + MODIFY COLUMN `palletize_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA打托请求哈希', + MODIFY COLUMN `confirmation_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户测量确认幂等键', + MODIFY COLUMN `confirmation_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户测量确认请求哈希', + MODIFY COLUMN `destination_type` varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', + MODIFY COLUMN `destination_warehouse_id` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + MODIFY COLUMN `destination_warehouse_name` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + MODIFY COLUMN `private_destination_address` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓完整地址', + MODIFY COLUMN `private_destination_postal_code` varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编', + MODIFY COLUMN `private_destination_contact_name` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人', + MODIFY COLUMN `private_destination_contact_phone` varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话', + MODIFY COLUMN `destination_binding_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地绑定幂等键', + MODIFY COLUMN `destination_binding_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地绑定请求哈希', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_pallet` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `pallet_no` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鐢熸垚鍚庣殑鐪熷疄鎵樼洏鐮', + MODIFY COLUMN `warehouse_location_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实库位码', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '打托状态', + MODIFY COLUMN `draft_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鑽夌?淇濆瓨骞傜瓑閿', + MODIFY COLUMN `draft_request_hash` char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鑽夌?璇锋眰鎽樿?', + MODIFY COLUMN `generate_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鏂版墭鐩樼敓鎴愬箓绛夐敭', + MODIFY COLUMN `bind_idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '鎵?爜缁戝畾骞傜瓑閿', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_pallet_item` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_receipt` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inventory_operation_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `created_by` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_receipt_command` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户标识', + MODIFY COLUMN `idempotency_key` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原始收货幂等键', + MODIFY COLUMN `request_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '完整原始收货请求摘要', + MODIFY COLUMN `target_hash` char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '共享目标资源绑定摘要', + MODIFY COLUMN `reservation_key` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '同转运同目标托盘共享资源占用键', + MODIFY COLUMN `status` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令状态PREPARED准备完成RESERVED资源占用COMPLETED收货完成', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_relabel_binding` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + MODIFY COLUMN `operation_type` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标类型', + MODIFY COLUMN `customer_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户原箱唛', + MODIFY COLUMN `original_sku` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '旧SKU', + MODIFY COLUMN `new_sku` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '新SKU', + MODIFY COLUMN `fba_carton_mark` varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '新FBA箱唛', + MODIFY COLUMN `destination_warehouse_code` varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA目的仓', + MODIFY COLUMN `remark` varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_lastleg`.`ll_warehouse_transfer_source_order` + MODIFY COLUMN `customer_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `source_lastleg_order_no` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `inbound_code` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL, + MODIFY COLUMN `tenant_id` varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'BAIYUE' COMMENT 'SaaS租户标识,当前单租户固定为BAIYUE', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER DATABASE `baiyue_order` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; +ALTER TABLE `baiyue_order`.`ord_document_sequence` + MODIFY COLUMN `sequence_key` varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务前缀与北京时间日期组成的全局序列键', + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; diff --git a/deploy/sql/README.md b/deploy/sql/README.md index b929d287f..ed7145ad7 100644 --- a/deploy/sql/README.md +++ b/deploy/sql/README.md @@ -1,5 +1,7 @@ # 单测试环境数据库空库初始化 +`20261104-unify-utf8mb4-0900-ai-ci.sql` 是本机 MySQL 8.4.11 五个业务库的排序规则汇总脚本,覆盖 `baiyue_event_bridge`、`baiyue_event_bridge_overseas`、`baiyue_firstleg`、`baiyue_lastleg`、`baiyue_order`。脚本已在本机执行并核验 209 张表、1,644 个文本字段;其他环境执行前必须核对实际字段定义和唯一索引冲突,不能默认部署。脚本只收敛旧的 Unicode 不区分大小写排序规则,保留有意使用的 `utf8mb4_bin`。 + 退货仓租改为原托整托计费、余一箱仍计一托,现有阶梯不变。已有 Lastleg 库先执行 [整托计费结构增量](return-storage-rent-whole-pallet.sql) 增加 `ll_storage_rent_lot.charged_days`,再发布匹配的 Lastleg;源基线和海外空库基线已同步。实际出库事务推进已生成费用的截止库龄日,同托同计租日不重复收费。切换期间暂停相关出库、取消未消费预占,并逐单核对旧比例费用;脚本不修改既有费用、库存或资金。本次仅准备代码及脚本,未执行环境 SQL 或部署。 散板收货闭环:`migrations/overseas/baiyue_lastleg/V37__looseboard_receiving_workflow.sql` 为已有 Lastleg 库增加入仓方式、收货仓、联系人、预计到仓、物流号及转运关联字段;新库使用同步后的海外统一基线。IAM 使用 `migrations/cn/baiyue_iam/V7__looseboard_demand_cargo_permission.sql` 补齐“散板需求”菜单及“加入散板货物”按钮,并为既有平台管理员补取货排车创建权限;权限源同步于 `iam/src/main/resources/db/fleet-capacity-offer-cargo-permission.sql` 和国内统一基线。两项已在本机应用并通过两场景HTTP验收,未据此认定TEST或生产已部署;已有库不可重放空库基线,V37执行前须核对九个新增字段尚不存在。 @@ -52,7 +54,7 @@ 本土散板简化下单的当前结构同步于 Lastleg 源基线及海外统一空库基线:移除散板柜型与旧要求日期,增加商品名称、申报预计托数及当地取货/送达时间,移除运输方式,增加起运地及目的地各自的联系人和联系电话;四项联系信息、取货及送货时间均必填;打盘与运输安排允许未知。预计托数不代表实收。字段语义唯一见工作区 `docs/海外仓业务/README.md`,不回填测试存量,不提供自动重置或启动时 SQL;需与匹配 Lastleg、Admin 和 Client 一起发布。本说明不表示 SQL 已执行。 -`migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql` 将退货进销存 UNION 涉及的八张表、22 个文本字段及表默认规则显式统一为 `utf8mb4_unicode_ci`,同步 Lastleg 两份源基线与海外统一空库基线。执行前核对字段长度、默认值、可空性及目标规则下唯一索引无冲突;只修改规则,不回填或删除数据,不重放空库基线。DDL 非事务,失败时停止并复查实际已完成项;可按最终定义重跑。脚本存在不表示测试库已执行,执行后用原始计数/分页查询验证,无需发布查询转换代码。 +`migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql` 将退货进销存 UNION 涉及的八张表、22 个文本字段及表默认规则显式统一为 `utf8mb4_0900_ai_ci`,同步 Lastleg 两份源基线与海外统一空库基线。执行前核对字段长度、默认值、可空性及目标规则下唯一索引无冲突;只修改规则,不回填或删除数据,不重放空库基线。DDL 非事务,失败时停止并复查实际已完成项;可按最终定义重跑。脚本存在不表示测试库已执行,执行后用原始计数/分页查询验证,无需发布查询转换代码。 `migrations/overseas/baiyue_lastleg/V22__selfop_warehouse_daily_sales.sql` 新增自营仓库每日汇总表及销量版本 `warehouse_daily_ready` 标记。与匹配 Lastleg 一起发布;汇总随 SKU 日事实批次原子构建,完整性验证后方可发布。已有未构建汇总的销量版本须重新构建发布,不回填旧版本、不回退旧查询;空版本同样必须有就绪证据。源基线与海外空库基线同步。 @@ -72,11 +74,11 @@ `reset-test-fba-appointments.sql` 仅用于明确授权的 TEST 预约模型重建:删除并按当前基线重建 `ll_inbound_fba_appointment`、`ll_inbound_fba_appointment_item`,并首次创建 `ll_fba_appointment_command` 保存同事务幂等结果与历史。执行任何DROP前必须确认命令表尚不存在;若已存在,先核对上次执行结果,本脚本不清空命令历史、不支持盲目重试。它会丢弃旧预约及关联明细,但不修改订单、入仓计划、库存和排车。调用者必须核对测试连接及两张表的具体重置授权;不得作为自动启动脚本或用于生产。主单区分计划日期/时段、系统单号、外部确认号和确认UTC/IANA时区;明细按稳定货源占用,不再依赖入仓计划明细。结构必须与匹配Lastleg和Admin一同发布,失败立即停止,不回填旧数据。权限从IAM种子核对;文件存在不表示已执行。 -`migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql` 仅将 `ll_inbound_plan.creation_mode` 从旧统一基线的 `VARCHAR(16)` 扩至模块基线已有的 `VARCHAR(32)`,容纳实际来货审核写入的 `WAREHOUSE_TRANSFER`(18字符)。保留 `utf8mb4_unicode_ci`、非空及 `AUTO` 默认值;不更新已有计划或状态。执行前核对目标库该列的长度、排序规则、可空性和默认值,已符合最终定义则核对后跳过;执行结果不确定时先只读复查,不盲目重试。统一空库基线同步最终定义,不重放模块历史初始化脚本。 +`migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql` 仅将 `ll_inbound_plan.creation_mode` 从旧统一基线的 `VARCHAR(16)` 扩至模块基线已有的 `VARCHAR(32)`,容纳实际来货审核写入的 `WAREHOUSE_TRANSFER`(18字符)。保留 `utf8mb4_0900_ai_ci`、非空及 `AUTO` 默认值;不更新已有计划或状态。执行前核对目标库该列的长度、排序规则、可空性和默认值,已符合最终定义则核对后跳过;执行结果不确定时先只读复查,不盲目重试。统一空库基线同步最终定义,不重放模块历史初始化脚本。 `migrations/overseas/baiyue_lastleg/V12__preserve_unknown_pool_order_fields.sql` 仅放开散板打盘需求及两类本土订单柜型三列为空、默认空,供未提供这些事实的拼车商业订单使用;普通订单输入校验仍由原服务端请求合同执行。对应源及统一空库基线同步最终定义,不回填已生成订单或把托盘数量解释成打盘服务需求。 -内部拼车需求池的当前结构在 Lastleg 源基线和海外统一空库基线同步维护,独立五项权限在 IAM 源种子和国内统一基线维护。已存在基础表的指定环境结构补齐使用 `migrations/overseas/baiyue_lastleg/V10__fleet_capacity_pool.sql` 与 `migrations/cn/baiyue_iam/V4__fleet_capacity_offer_permissions.sql`;执行前确认三张新表、六个新增字段均未存在,并单独核对目标环境。随后 `V11__align_capacity_pool_collation.sql` 将预订与商业桥的客户关联字段显式统一为 `utf8mb4_unicode_ci`,与原订单域一致,避免依赖MySQL实例默认排序规则导致JOIN失败。它们不回填、删除或重置业务数据,不能重放整个空库基线。候选文件存在不表示已经执行。 +内部拼车需求池的当前结构在 Lastleg 源基线和海外统一空库基线同步维护,独立五项权限在 IAM 源种子和国内统一基线维护。已存在基础表的指定环境结构补齐使用 `migrations/overseas/baiyue_lastleg/V10__fleet_capacity_pool.sql` 与 `migrations/cn/baiyue_iam/V4__fleet_capacity_offer_permissions.sql`;执行前确认三张新表、六个新增字段均未存在,并单独核对目标环境。随后 `V11__align_capacity_pool_collation.sql` 将预订与商业桥的客户关联字段显式统一为 `utf8mb4_0900_ai_ci`,与原订单域一致,避免依赖MySQL实例默认排序规则导致JOIN失败。它们不回填、删除或重置业务数据,不能重放整个空库基线。候选文件存在不表示已经执行。 平台自营领星统计十张 `ll_selfop_*` 表直接同步 Lastleg 源基线及海外统一空库基线;时间使用 UTC 存储及已确认北京时间业务日,数量使用 DECIMAL 保留 PCS 精度,维持独立发布版本。包含账号共享预算/冷却、验证根用途与硬预算、TEST BUSINESS 根会话持久预算、稳定任务号、阶段进度/心跳和旧版替代时间;任务的 `business_root_task_id` 标记共享根,只有根保存 `business_budget_json`,生产任务不使用该测试预算。库存 run 包含每日代表日期、选择规则及账号/仓库/日期唯一约束,代表库存与 profile 不适用销量副本淘汰。IAM 权限源为 `iam/src/main/resources/db/selfoperated-analytics-permissions.sql`,自营业务下经营总览、销量分析、库存分析、数据采集的菜单资源与独立读写权限同步国内统一基线,仅平台管理员默认授权。执行和部署状态只维护于工作区测试环境主契约;真实采集模式默认 OFF。 diff --git a/deploy/sql/lastleg-dispatch-daily-sequence.sql b/deploy/sql/lastleg-dispatch-daily-sequence.sql index ca4740ee2..0d9a0ecc8 100644 --- a/deploy/sql/lastleg-dispatch-daily-sequence.sql +++ b/deploy/sql/lastleg-dispatch-daily-sequence.sql @@ -4,4 +4,4 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_daily_sequence ( business_date DATE NOT NULL COMMENT '排车编号业务日期(Asia/Shanghai)', last_sequence INT NOT NULL COMMENT '当日已分配排车流水号,范围0001至9999', PRIMARY KEY(business_date) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车单号每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车单号每日独立原子流水'; diff --git a/deploy/sql/lastleg-dispatch-transport-tasks.sql b/deploy/sql/lastleg-dispatch-transport-tasks.sql index 84c08b315..d84812bc5 100644 --- a/deploy/sql/lastleg-dispatch-transport-tasks.sql +++ b/deploy/sql/lastleg-dispatch-transport-tasks.sql @@ -69,7 +69,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_daily_sequence ( business_date DATE NOT NULL COMMENT '排车编号业务日期(Asia/Shanghai)', last_sequence INT NOT NULL COMMENT '当日已分配排车流水号,范围0001至9999', PRIMARY KEY (business_date) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车单号每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车单号每日独立原子流水'; CREATE TABLE IF NOT EXISTS ll_dispatch_truck_task ( dispatch_no VARCHAR(64) NOT NULL COMMENT '排车业务号', @@ -81,13 +81,13 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_truck_task ( UNIQUE KEY uk_transport_trip (trip_no), UNIQUE KEY uk_transport_source (active_order), KEY idx_transport_order (customer_id, order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车与本土卡车原单关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车与本土卡车原单关联'; CREATE TABLE IF NOT EXISTS ll_dispatch_transport_create ( trip_no VARCHAR(64) NOT NULL COMMENT '本次运输资源记录号', request_hash CHAR(64) NOT NULL COMMENT '首次安排请求摘要', PRIMARY KEY (trip_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土卡车排车创建请求账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土卡车排车创建请求账本'; CREATE TABLE IF NOT EXISTS ll_dispatch_transport_command ( dispatch_no VARCHAR(64) NOT NULL COMMENT '排车业务号', @@ -96,7 +96,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_transport_command ( evidence_json JSON NULL COMMENT '已确认运输完成凭证标识列表', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '业务命令提交时间', PRIMARY KEY (dispatch_no, request_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车运输执行命令与凭证账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车运输执行命令与凭证账本'; -- 当前承运占用查询还依赖散板来源标识(与V33一致);仅补结构,不创建散板业务记录。 SET @dispatch_transport_pool_ddl = IF( diff --git a/deploy/sql/migrations/cn/baiyue_firstleg/V4__add_sailing_calendar_schema.sql b/deploy/sql/migrations/cn/baiyue_firstleg/V4__add_sailing_calendar_schema.sql index 63cd59683..dfd8d0c87 100644 --- a/deploy/sql/migrations/cn/baiyue_firstleg/V4__add_sailing_calendar_schema.sql +++ b/deploy/sql/migrations/cn/baiyue_firstleg/V4__add_sailing_calendar_schema.sql @@ -27,7 +27,7 @@ CREATE TABLE IF NOT EXISTS fl_sailing_channel ( PRIMARY KEY (id), UNIQUE KEY uk_fl_sailing_channel_code (channel_code), KEY idx_fl_sailing_channel_status (status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE IF NOT EXISTS fl_sailing_template ( id BIGINT NOT NULL, @@ -63,7 +63,7 @@ CREATE TABLE IF NOT EXISTS fl_sailing_template ( KEY idx_fl_sailing_template_filter (warehouse_id,channel_id,status,weekday), CONSTRAINT ck_fl_sailing_template_weekday CHECK (weekday BETWEEN 1 AND 7), CONSTRAINT ck_fl_sailing_template_cutoff_days CHECK (cutoff_days BETWEEN 0 AND 30) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE IF NOT EXISTS fl_sailing ( id BIGINT NOT NULL, @@ -100,7 +100,7 @@ CREATE TABLE IF NOT EXISTS fl_sailing ( KEY idx_fl_sailing_calendar (etd_at,warehouse_id,channel_id,status), KEY idx_fl_sailing_route (departure_port_code,destination_port_code), CONSTRAINT ck_fl_sailing_status CHECK (status IN ('DRAFT','OPEN','CLOSED','DEPARTED','CANCELLED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE IF NOT EXISTS fl_sailing_history ( id BIGINT NOT NULL, @@ -114,7 +114,7 @@ CREATE TABLE IF NOT EXISTS fl_sailing_history ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), PRIMARY KEY (id), KEY idx_fl_sailing_history_sailing (sailing_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /* * 船期日历的事实契约。 diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V11__align_capacity_pool_collation.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V11__align_capacity_pool_collation.sql index 477eb0c40..1a18fdb32 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V11__align_capacity_pool_collation.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V11__align_capacity_pool_collation.sql @@ -2,6 +2,6 @@ -- Schema: baiyue_lastleg -- Purpose: 拼车履约客户关联字段与现有订单域排序规则一致 -- Preconditions: 外接预订和商业履约桥已存在,客户字段为VARCHAR(128)且非空 --- Postconditions: 两个客户关联字段使用utf8mb4_unicode_ci;不修改客户标识或业务状态 -ALTER TABLE ll_fleet_external_booking MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属'; -ALTER TABLE ll_fleet_pool_order_link MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围'; +-- Postconditions: 两个客户关联字段使用utf8mb4_0900_ai_ci;不修改客户标识或业务状态 +ALTER TABLE ll_fleet_external_booking MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属'; +ALTER TABLE ll_fleet_pool_order_link MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql index 4fd9028ae..45842eb1f 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V13__widen_inbound_plan_creation_mode.sql @@ -1,8 +1,8 @@ -- Region: OVERSEAS -- Schema: baiyue_lastleg -- Purpose: 仓储转运来货审核生成入仓计划时允许完整WAREHOUSE_TRANSFER来源值 --- Preconditions: ll_inbound_plan.creation_mode现为VARCHAR(16),utf8mb4_unicode_ci、NOT NULL、DEFAULT AUTO +-- Preconditions: ll_inbound_plan.creation_mode现为VARCHAR(16),utf8mb4_0900_ai_ci、NOT NULL、DEFAULT AUTO -- Postconditions: 仅将本列扩至VARCHAR(32);保留排序规则、非空、默认值和已有业务数据 ALTER TABLE ll_inbound_plan - MODIFY COLUMN creation_mode VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci + MODIFY COLUMN creation_mode VARCHAR(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AUTO' COMMENT '计划生成方式:AUTO柜级自动、MANUAL单票人工、WAREHOUSE_TRANSFER仓储转运'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V15__procurement_fee_versions.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V15__procurement_fee_versions.sql index 1fcc56763..4ea967a29 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V15__procurement_fee_versions.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V15__procurement_fee_versions.sql @@ -45,4 +45,4 @@ CREATE TABLE ll_procurement_wallet_attempt ( UNIQUE KEY uk_procurement_attempt_number(fee_id,attempt_no), KEY idx_procurement_attempt_order(customer_id,order_id,status), CONSTRAINT chk_procurement_attempt_status CHECK(status IN('PENDING','SUCCEEDED','FAILED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购费用资金命令尝试与不可变结果'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购费用资金命令尝试与不可变结果'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V16__procurement_purchase_facts.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V16__procurement_purchase_facts.sql index 61e7bf813..784b7216f 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V16__procurement_purchase_facts.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V16__procurement_purchase_facts.sql @@ -31,7 +31,7 @@ CREATE TABLE ll_procurement_flow ( PRIMARY KEY(order_id), KEY idx_procurement_flow_customer(customer_id,order_id), CONSTRAINT chk_procurement_purchase_quantity CHECK(purchased_quantity IS NULL OR purchased_quantity>0), CONSTRAINT chk_procurement_purchase_amount CHECK(purchase_amount IS NULL OR purchase_amount>=0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购单一批次履约事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购单一批次履约事实'; CREATE TABLE ll_procurement_command ( id BIGINT NOT NULL COMMENT '操作记录ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', @@ -42,7 +42,7 @@ CREATE TABLE ll_procurement_command ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '执行时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_command(order_id,action,idempotency_key), KEY idx_procurement_command_customer(customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购节点幂等与不可变审计'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购节点幂等与不可变审计'; CREATE TABLE ll_procurement_budget_authorization ( id BIGINT NOT NULL COMMENT '预算授权ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', @@ -54,4 +54,4 @@ CREATE TABLE ll_procurement_budget_authorization ( PRIMARY KEY(id), KEY idx_procurement_budget_order(customer_id,order_id,id), CONSTRAINT chk_procurement_budget_amount CHECK(authorized_amount>=0 AND previous_amount>=0), CONSTRAINT chk_procurement_budget_currency CHECK(currency IN('CNY','USD') AND previous_currency IN('CNY','USD')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购货款预算授权核验历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购货款预算授权核验历史'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V17__procurement_physical_facts.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V17__procurement_physical_facts.sql index 084f7b810..d5386796d 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V17__procurement_physical_facts.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V17__procurement_physical_facts.sql @@ -10,7 +10,7 @@ CREATE TABLE ll_procurement_receipt ( PRIMARY KEY(id), UNIQUE KEY uk_procurement_receipt_no(receipt_no), KEY idx_procurement_receipt_source(order_id,leg,source_carton_id,active), CONSTRAINT chk_procurement_receipt_quantity CHECK(good_quantity>=0 AND damaged_quantity>=0 AND extra_quantity>=0 AND good_quantity+damaged_quantity+extra_quantity>0), CONSTRAINT chk_procurement_receipt_leg CHECK((leg='OVERSEAS' AND source_carton_id IS NULL) OR (leg='DOMESTIC' AND source_carton_id IS NOT NULL)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购分次实收与受控更正事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购分次实收与受控更正事实'; CREATE TABLE ll_procurement_disposition ( id BIGINT NOT NULL COMMENT '差异处理ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户隔离键', @@ -22,7 +22,7 @@ CREATE TABLE ll_procurement_disposition ( created_by VARCHAR(128) NOT NULL COMMENT '采购管理人员', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '确认时间', PRIMARY KEY(id), KEY idx_procurement_disposition_source(order_id,leg,source_carton_id,receipt_id,kind), CONSTRAINT chk_procurement_disposition_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购单内差异处置,不自动退款'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购单内差异处置,不自动退款'; CREATE TABLE ll_procurement_manifest ( id BIGINT NOT NULL COMMENT '装箱清单ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户隔离键', @@ -31,7 +31,7 @@ CREATE TABLE ll_procurement_manifest ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '版本保存时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_manifest_version(order_id,version), CONSTRAINT chk_procurement_manifest_status CHECK(status IN('DRAFT','CONFIRMED','SUPERSEDED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购装箱清单不可变版本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购装箱清单不可变版本'; CREATE TABLE ll_procurement_carton ( id BIGINT NOT NULL COMMENT '版本内箱记录ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', manifest_id BIGINT NOT NULL COMMENT '装箱清单版本', @@ -40,12 +40,12 @@ CREATE TABLE ll_procurement_carton ( gross_weight_kg DECIMAL(12,3) NOT NULL COMMENT '封箱毛重千克', quantity BIGINT NOT NULL COMMENT '本箱合格商品总件数', PRIMARY KEY(id), UNIQUE KEY uk_procurement_carton_version(manifest_id,carton_no), KEY idx_procurement_carton_order(order_id,manifest_id), CONSTRAINT chk_procurement_carton_measurement CHECK(length_cm>0 AND width_cm>0 AND height_cm>0 AND gross_weight_kg>0 AND quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购版本化逐箱实测与件数'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购版本化逐箱实测与件数'; CREATE TABLE ll_procurement_carton_source ( carton_id BIGINT NOT NULL COMMENT '版本内箱ID', receipt_id BIGINT NOT NULL COMMENT '海外实收明细来源', quantity BIGINT NOT NULL COMMENT '从该实收装入本箱的件数', PRIMARY KEY(carton_id,receipt_id), KEY idx_procurement_carton_receipt(receipt_id), CONSTRAINT chk_procurement_carton_source_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购箱内货物的实收来源与数量'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购箱内货物的实收来源与数量'; CREATE TABLE ll_procurement_shipment ( id BIGINT NOT NULL COMMENT '采购交寄ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户隔离键', @@ -55,11 +55,11 @@ CREATE TABLE ll_procurement_shipment ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '确认时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_shipment_leg(order_id,leg), UNIQUE KEY uk_procurement_shipment_no(shipment_no), CONSTRAINT chk_procurement_shipment_leg CHECK(leg IN('OVERSEAS','DOMESTIC')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购两段各一次整批真实交寄'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购两段各一次整批真实交寄'; CREATE TABLE ll_procurement_shipment_item ( shipment_id BIGINT NOT NULL COMMENT '采购交寄ID', carton_id BIGINT NOT NULL COMMENT '原海外装箱版本内箱ID', quantity BIGINT NOT NULL COMMENT '本次实际交寄件数', carrier VARCHAR(128) NOT NULL COMMENT '承运商快照', tracking_no VARCHAR(128) NOT NULL COMMENT '运单号快照', label_snapshot JSON NOT NULL COMMENT '当次箱规、面单及货物来源快照', PRIMARY KEY(shipment_id,carton_id), CONSTRAINT chk_procurement_shipment_item_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购整批交寄逐箱事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购整批交寄逐箱事实'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V18__procurement_transport_facts.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V18__procurement_transport_facts.sql index cef0f7d88..5fab257bf 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V18__procurement_transport_facts.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V18__procurement_transport_facts.sql @@ -7,7 +7,7 @@ CREATE TABLE ll_procurement_label_set ( created_by VARCHAR(128) NOT NULL COMMENT '制单操作人', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '上传确认时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_label_version(order_id,leg,version), CONSTRAINT chk_procurement_label_leg CHECK(leg IN('OVERSEAS','DOMESTIC')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购两段面单不可变版本和地址快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购两段面单不可变版本和地址快照'; CREATE TABLE ll_procurement_label_item ( label_set_id BIGINT NOT NULL COMMENT '面单批版本ID', carton_id BIGINT NOT NULL COMMENT '原海外清单箱ID', @@ -15,14 +15,14 @@ CREATE TABLE ll_procurement_label_item ( carrier VARCHAR(128) NOT NULL COMMENT '承运商', tracking_no VARCHAR(128) NOT NULL COMMENT '箱主或子运单号', applied_at DATETIME(3) NULL COMMENT '真实贴单时间', applied_by VARCHAR(128) NULL COMMENT '贴单确认人', PRIMARY KEY(label_set_id,carton_id), CONSTRAINT chk_procurement_label_page CHECK(page_no>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购逐箱文件页关联及贴单事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购逐箱文件页关联及贴单事实'; CREATE TABLE ll_procurement_estimate_review ( id BIGINT NOT NULL COMMENT '预估核对ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', label_set_id BIGINT NOT NULL COMMENT '已核对国际面单版本', fee_id BIGINT NOT NULL COMMENT '唯一有效预估费用版本', reviewed_by VARCHAR(128) NOT NULL COMMENT '核价人员', reviewed_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '核对时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_estimate_review(label_set_id,fee_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='面单清单与预估冻结的显式核对关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='面单清单与预估冻结的显式核对关联'; CREATE TABLE ll_procurement_repack ( id BIGINT NOT NULL COMMENT '换包装版本ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', carton_id BIGINT NOT NULL COMMENT '原国际交寄箱ID,保持一对一来源', @@ -32,9 +32,9 @@ CREATE TABLE ll_procurement_repack ( created_by VARCHAR(128) NOT NULL COMMENT '国内作业人员', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '登记时间', PRIMARY KEY(id), KEY idx_procurement_repack_carton(order_id,carton_id,id), CONSTRAINT chk_procurement_repack_measurement CHECK(length_cm>0 AND width_cm>0 AND height_cm>0 AND gross_weight_kg>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购国内原箱一对一换包装不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购国内原箱一对一换包装不可变历史'; ALTER TABLE ll_overseas_procurement_file DROP CHECK chk_ll_procurement_file_category, - MODIFY COLUMN category VARCHAR(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'RECEIPT实收、VOUCHER费用、LABEL面单、PURCHASE采购、BUDGET预算、EXCEPTION异常凭证', + MODIFY COLUMN category VARCHAR(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIPT实收、VOUCHER费用、LABEL面单、PURCHASE采购、BUDGET预算、EXCEPTION异常凭证', ADD CONSTRAINT chk_ll_procurement_file_category CHECK(category IN ('RECEIPT','VOUCHER','LABEL','PURCHASE','BUDGET','EXCEPTION')); diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V19__procurement_fee_correction.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V19__procurement_fee_correction.sql index a90a59396..e7be92310 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V19__procurement_fee_correction.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V19__procurement_fee_correction.sql @@ -12,9 +12,9 @@ CREATE TABLE ll_procurement_fee_correction ( PRIMARY KEY(id), UNIQUE KEY uk_procurement_correction_no(correction_no), UNIQUE KEY uk_procurement_correction_request(order_id,idempotency_key), KEY idx_procurement_correction_root(order_id,root_fee_id,id), CONSTRAINT chk_procurement_correction_amount CHECK(target_original_amount>=0 AND target_amount>=0 AND previous_net_amount>=0 AND exchange_rate>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购费用链更正目标与原汇率快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购费用链更正目标与原汇率快照'; CREATE TABLE ll_procurement_fee_correction_item ( correction_id BIGINT NOT NULL COMMENT '本次费用链更正ID', fee_id BIGINT NOT NULL COMMENT '本次产生的独立正差额或退款费用ID', PRIMARY KEY(correction_id,fee_id), UNIQUE KEY uk_procurement_correction_fee(fee_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购费用目标更正与逐笔资金事实关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购费用目标更正与逐笔资金事实关联'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V1__align_lastleg_production_schema.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V1__align_lastleg_production_schema.sql index 4cf897372..73b54d23f 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V1__align_lastleg_production_schema.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V1__align_lastleg_production_schema.sql @@ -133,15 +133,15 @@ PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; CREATE TABLE IF NOT EXISTS ll_warehouse_transfer_measurement_photo ( id bigint NOT NULL COMMENT '测量照片引用ID', transfer_order_id bigint NOT NULL COMMENT '仓储转运单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', file_id bigint NOT NULL COMMENT '文件服务文件ID', - file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件名快照', - content_type varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件媒体类型快照', + file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件名快照', + content_type varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件媒体类型快照', size_bytes bigint NOT NULL DEFAULT 0 COMMENT '文件字节数快照', - uploaded_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA上传操作人', + uploaded_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA上传操作人', uploaded_at datetime(3) NOT NULL COMMENT '上传时间', submitted_at datetime(3) DEFAULT NULL COMMENT '随测量打托提交时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_transfer_measurement_photo_file (customer_id,transfer_order_id,file_id), KEY idx_ll_transfer_measurement_photo_order (customer_id,transfer_order_id,uploaded_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运PDA测量现场照片引用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运PDA测量现场照片引用'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V20__procurement_exception_control.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V20__procurement_exception_control.sql index 1014956d7..e3aeb5ebb 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V20__procurement_exception_control.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V20__procurement_exception_control.sql @@ -10,7 +10,7 @@ CREATE TABLE ll_procurement_control_note ( resolved_by VARCHAR(128) NULL COMMENT '处理确认人', resolved_at DATETIME(3) NULL COMMENT '阻断解除时间', resolution_reason VARCHAR(1000) NULL COMMENT '内部处理结果', resolution_voucher_id BIGINT NULL COMMENT '本单处理凭证', PRIMARY KEY(id), UNIQUE KEY uk_procurement_note_no(note_no), KEY idx_procurement_note_block(order_id,blocking,resolved_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购不可覆盖事实的更正说明及阻断异常'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购不可覆盖事实的更正说明及阻断异常'; CREATE TABLE ll_procurement_closure ( id BIGINT NOT NULL COMMENT '采购异常关闭ID', order_id BIGINT NOT NULL COMMENT '采购订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户隔离键', @@ -19,7 +19,7 @@ CREATE TABLE ll_procurement_closure ( reason VARCHAR(1000) NOT NULL COMMENT '内部关闭原因', client_summary VARCHAR(500) NOT NULL COMMENT '人工确认的对客关闭摘要', created_by VARCHAR(128) NOT NULL COMMENT '采购管理确认人', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '关闭确认时间', PRIMARY KEY(id), UNIQUE KEY uk_procurement_closure_order(order_id), UNIQUE KEY uk_procurement_closure_no(closure_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购实物资金收口后的异常关闭事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='采购实物资金收口后的异常关闭事实'; CREATE TABLE ll_procurement_closure_item ( id BIGINT NOT NULL COMMENT '关闭货物处置ID', closure_id BIGINT NOT NULL COMMENT '采购关闭ID', @@ -28,4 +28,4 @@ CREATE TABLE ll_procurement_closure_item ( destination VARCHAR(500) NOT NULL COMMENT '实际去向及接收方说明', voucher_file_id BIGINT NOT NULL COMMENT '本单实物处置证明', PRIMARY KEY(id), KEY idx_procurement_closure_source(closure_id,source_kind,source_id), CONSTRAINT chk_procurement_closure_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='异常关闭逐来源剩余货物最终去向,不产生新发运'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='异常关闭逐来源剩余货物最终去向,不产生新发运'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql index 588c40a39..62b49924f 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V23__align_return_movement_collation.sql @@ -2,43 +2,43 @@ -- Schema: baiyue_lastleg -- Purpose: 统一退货进销存 UNION 文本列排序规则,去除查询转换需求 -- Preconditions: 八张退货表已存在;核对字段长度、可空性、默认值及唯一索引无目标规则冲突 --- Postconditions: 指定文本字段及表默认规则统一为 utf8mb4_unicode_ci;不修改数量、状态或业务标识 +-- Postconditions: 指定文本字段及表默认规则统一为 utf8mb4_0900_ai_ci;不修改数量、状态或业务标识 -- 不重放空库基线;本文件可重复执行。DDL 非事务,失败停止并核对后续执行范围。 ALTER TABLE ll_return_order - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID'; ALTER TABLE ll_return_order_item - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名'; ALTER TABLE ll_return_receipt - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收单号'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收单号'; ALTER TABLE ll_return_receipt_item - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码'; ALTER TABLE ll_return_inventory_carton - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - MODIFY COLUMN carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '退货箱号和箱唛编码'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + MODIFY COLUMN carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货箱号和箱唛编码'; ALTER TABLE ll_return_inventory_carton_item - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名'; ALTER TABLE ll_return_inventory_outbound_movement - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存所属客户ID和隔离键', - MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际出库海外仓ID', - MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次出库SKU编码快照', - MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', - MODIFY COLUMN outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次退货出库业务单号'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户ID和隔离键', + MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际出库海外仓ID', + MODIFY COLUMN sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次出库SKU编码快照', + MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', + MODIFY COLUMN outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次退货出库业务单号'; ALTER TABLE ll_return_sku_conversion - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离键', - MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', - MODIFY COLUMN old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标前SKU', - MODIFY COLUMN new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标后SKU', - MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', - MODIFY COLUMN relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标单号'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + MODIFY COLUMN overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + MODIFY COLUMN old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标前SKU', + MODIFY COLUMN new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标后SKU', + MODIFY COLUMN product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', + MODIFY COLUMN relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标单号'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V24__cargo_discard_photos.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V24__cargo_discard_photos.sql index 1373e87ce..21d33d4f9 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V24__cargo_discard_photos.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V24__cargo_discard_photos.sql @@ -13,4 +13,4 @@ CREATE TABLE IF NOT EXISTS ll_cargo_discard_photo ( PRIMARY KEY (id), UNIQUE KEY uk_cargo_discard_photo_file (file_id), KEY idx_cargo_discard_photo_application (customer_id, application_id, pallet_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V28__merge_transfer_measurement_and_compact_numbers.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V28__merge_transfer_measurement_and_compact_numbers.sql index 19c90b39e..a0c749cae 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V28__merge_transfer_measurement_and_compact_numbers.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V28__merge_transfer_measurement_and_compact_numbers.sql @@ -8,7 +8,7 @@ CREATE TABLE IF NOT EXISTS ll_compact_number_clock ( number_key VARCHAR(16) NOT NULL COMMENT '业务前缀和客户名称缩写', last_second BIGINT NOT NULL COMMENT '最后分配的Unix逻辑秒', PRIMARY KEY (number_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外业务短单号分配时钟'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外业务短单号分配时钟'; -- 仓储转运逐箱测量与清点;仅增加字段,不修改业务数据。 SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_warehouse_transfer_carton' AND column_name='length_cm'), 'SELECT 1', 'ALTER TABLE ll_warehouse_transfer_carton ADD COLUMN length_cm DECIMAL(12,2) NULL COMMENT ''箱子实测长度厘米''')); diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V2__align_schema_baseline.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V2__align_schema_baseline.sql index b8369fedf..ada1b6c6e 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V2__align_schema_baseline.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V2__align_schema_baseline.sql @@ -25,9 +25,9 @@ PREPARE stmt FROM @guard; EXECUTE stmt; DEALLOCATE PREPARE stmt; -- 测试环境当前缺失、生产已存在的 PDA 废弃作业字段。 SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'actual_discard_packages'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN actual_discard_packages int NULL COMMENT ''PDA确认实际废弃箱数'' AFTER discard_packages', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'pda_status'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN pda_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT ''PENDING'' COMMENT ''PDA处理状态:待处理PENDING、已完成COMPLETED'' AFTER actual_discard_packages', 'SELECT 1'); +SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'pda_status'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN pda_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT ''PENDING'' COMMENT ''PDA处理状态:待处理PENDING、已完成COMPLETED'' AFTER actual_discard_packages', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'pda_operator_id'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN pda_operator_id varchar(128) COLLATE utf8mb4_unicode_ci NULL COMMENT ''PDA操作人'' AFTER pda_status', 'SELECT 1'); +SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'pda_operator_id'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN pda_operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NULL COMMENT ''PDA操作人'' AFTER pda_status', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_cargo_discard_item' AND column_name = 'pda_completed_at'), 'ALTER TABLE ll_cargo_discard_item ADD COLUMN pda_completed_at datetime(3) NULL COMMENT ''PDA完成时间'' AFTER pda_operator_id', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; @@ -35,36 +35,36 @@ PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -- 生产环境当前缺失、测试已存在的换标与退货字段。 SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_pda_unit_fact' AND column_name = 'quantity'), 'ALTER TABLE ll_relabel_pda_unit_fact ADD COLUMN quantity int NOT NULL DEFAULT 1 COMMENT ''本次事实处理件数,箱级作业固定为1'' AFTER reason', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_inventory_carton' AND column_name = 'pallet_code'), 'ALTER TABLE ll_return_inventory_carton ADD COLUMN pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NULL COMMENT ''签收时绑定的托盘码'' AFTER source_return_no', 'SELECT 1'); +SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_inventory_carton' AND column_name = 'pallet_code'), 'ALTER TABLE ll_return_inventory_carton ADD COLUMN pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NULL COMMENT ''签收时绑定的托盘码'' AFTER source_return_no', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_order' AND column_name = 'discrepancy_reason'), 'ALTER TABLE ll_return_order ADD COLUMN discrepancy_reason varchar(500) COLLATE utf8mb4_unicode_ci NULL COMMENT ''手动完结差异原因'' AFTER status', 'SELECT 1'); +SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_order' AND column_name = 'discrepancy_reason'), 'ALTER TABLE ll_return_order ADD COLUMN discrepancy_reason varchar(500) COLLATE utf8mb4_0900_ai_ci NULL COMMENT ''手动完结差异原因'' AFTER status', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_order' AND column_name = 'manually_completed_at'), 'ALTER TABLE ll_return_order ADD COLUMN manually_completed_at datetime(3) NULL COMMENT ''手动差异完结时间'' AFTER discrepancy_reason', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_receipt' AND column_name = 'pallet_code'), 'ALTER TABLE ll_return_receipt ADD COLUMN pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NULL COMMENT ''本次签收绑定的托盘码'' AFTER carton_mark', 'SELECT 1'); +SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_return_receipt' AND column_name = 'pallet_code'), 'ALTER TABLE ll_return_receipt ADD COLUMN pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NULL COMMENT ''本次签收绑定的托盘码'' AFTER carton_mark', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_delivery_order' AND column_name = 'delivery_group_key' AND (column_type <> 'varchar(255)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_unicode_ci')), 'ALTER TABLE ll_delivery_order MODIFY COLUMN delivery_group_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT ''同一出库单内按目的FBA仓拆单的稳定分组键''', 'SELECT 1'); +SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_delivery_order' AND column_name = 'delivery_group_key' AND (column_type <> 'varchar(255)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_0900_ai_ci')), 'ALTER TABLE ll_delivery_order MODIFY COLUMN delivery_group_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT ''同一出库单内按目的FBA仓拆单的稳定分组键''', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_local_looseboard_order' AND column_name = 'container_type' AND (column_type <> 'varchar(32)' OR is_nullable <> 'NO' OR column_default <> '40HQ' OR collation_name <> 'utf8mb4_unicode_ci')), 'ALTER TABLE ll_local_looseboard_order MODIFY COLUMN container_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT ''40HQ'' COMMENT ''平台统一柜型:40GP、40HQ、45HQ''', 'SELECT 1'); +SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_local_looseboard_order' AND column_name = 'container_type' AND (column_type <> 'varchar(32)' OR is_nullable <> 'NO' OR column_default <> '40HQ' OR collation_name <> 'utf8mb4_0900_ai_ci')), 'ALTER TABLE ll_local_looseboard_order MODIFY COLUMN container_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT ''40HQ'' COMMENT ''平台统一柜型:40GP、40HQ、45HQ''', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_us_truck_order' AND column_name = 'container_type' AND (column_type <> 'varchar(32)' OR is_nullable <> 'NO' OR column_default <> '40HQ' OR collation_name <> 'utf8mb4_unicode_ci')), 'ALTER TABLE ll_us_truck_order MODIFY COLUMN container_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT ''40HQ'' COMMENT ''平台统一柜型:40GP、40HQ、45HQ''', 'SELECT 1'); +SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_us_truck_order' AND column_name = 'container_type' AND (column_type <> 'varchar(32)' OR is_nullable <> 'NO' OR column_default <> '40HQ' OR collation_name <> 'utf8mb4_0900_ai_ci')), 'ALTER TABLE ll_us_truck_order MODIFY COLUMN container_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT ''40HQ'' COMMENT ''平台统一柜型:40GP、40HQ、45HQ''', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_outbound_pda_pick' AND column_name = 'inventory_position_id' AND (column_type <> 'bigint' OR is_nullable <> 'NO')), 'ALTER TABLE ll_outbound_pda_pick MODIFY COLUMN inventory_position_id bigint NOT NULL COMMENT ''库存仓位ID''', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = IF( - EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_item' AND column_name = 'new_sku_code' AND (column_type <> 'varchar(128)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_unicode_ci')) - OR EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_item' AND column_name = 'source_warehouse_id' AND (column_type <> 'varchar(128)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_unicode_ci')), - 'ALTER TABLE ll_relabel_item MODIFY COLUMN new_sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT ''换标后SKU编码'', MODIFY COLUMN source_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT ''原海外中转仓ID''', + EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_item' AND column_name = 'new_sku_code' AND (column_type <> 'varchar(128)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_0900_ai_ci')) + OR EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_item' AND column_name = 'source_warehouse_id' AND (column_type <> 'varchar(128)' OR is_nullable <> 'NO' OR collation_name <> 'utf8mb4_0900_ai_ci')), + 'ALTER TABLE ll_relabel_item MODIFY COLUMN new_sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT ''换标后SKU编码'', MODIFY COLUMN source_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT ''原海外中转仓ID''', 'SELECT 1' ); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; -SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_pda_task' AND column_name = 'review_decision' AND (column_type <> 'varchar(16)' OR is_nullable <> 'YES' OR collation_name <> 'utf8mb4_unicode_ci')), 'ALTER TABLE ll_relabel_pda_task MODIFY COLUMN review_decision varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT ''最近复核结论:APPROVE或REWORK''', 'SELECT 1'); +SET @ddl = IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'll_relabel_pda_task' AND column_name = 'review_decision' AND (column_type <> 'varchar(16)' OR is_nullable <> 'YES' OR collation_name <> 'utf8mb4_0900_ai_ci')), 'ALTER TABLE ll_relabel_pda_task MODIFY COLUMN review_decision varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''最近复核结论:APPROVE或REWORK''', 'SELECT 1'); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = IF( - (SELECT table_collation FROM information_schema.tables WHERE table_schema = DATABASE() AND table_name = 'll_warehouse_transfer_measurement_photo') <> 'utf8mb4_unicode_ci', - 'ALTER TABLE ll_warehouse_transfer_measurement_photo CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci', + (SELECT table_collation FROM information_schema.tables WHERE table_schema = DATABASE() AND table_name = 'll_warehouse_transfer_measurement_photo') <> 'utf8mb4_0900_ai_ci', + 'ALTER TABLE ll_warehouse_transfer_measurement_photo CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci', 'SELECT 1' ); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V32__dispatch_transport_tasks.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V32__dispatch_transport_tasks.sql index 4bbd4a3e3..c4488e09f 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V32__dispatch_transport_tasks.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V32__dispatch_transport_tasks.sql @@ -8,11 +8,11 @@ CREATE TABLE ll_dispatch_truck_task ( active_order VARCHAR(193) NULL COMMENT '有效原单唯一键;取消置空,完成保留', PRIMARY KEY(dispatch_no), UNIQUE KEY uk_transport_trip(trip_no), UNIQUE KEY uk_transport_source(active_order), KEY idx_transport_order(customer_id,order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车与本土卡车原单关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车与本土卡车原单关联'; CREATE TABLE ll_dispatch_transport_create ( trip_no VARCHAR(64) NOT NULL PRIMARY KEY COMMENT '本次运输资源记录号', request_hash CHAR(64) NOT NULL COMMENT '首次安排请求摘要' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土卡车排车创建请求账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土卡车排车创建请求账本'; CREATE TABLE ll_dispatch_transport_command ( dispatch_no VARCHAR(64) NOT NULL COMMENT '排车业务号', request_key VARCHAR(128) NOT NULL COMMENT '客户端幂等请求键', @@ -20,4 +20,4 @@ CREATE TABLE ll_dispatch_transport_command ( evidence_json JSON NULL COMMENT '已确认运输完成凭证标识列表', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '业务命令提交时间', PRIMARY KEY(dispatch_no,request_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车运输执行命令与凭证账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车运输执行命令与凭证账本'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V36__align_order_budget_collation.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V36__align_order_budget_collation.sql index 4349db920..4117f30d4 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V36__align_order_budget_collation.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V36__align_order_budget_collation.sql @@ -2,9 +2,9 @@ -- Schema: baiyue_lastleg -- Purpose: 预算释放查询的客户和订单号关联字段与采购单、卡车单排序规则一致 -- Preconditions: ll_order_budget_reservation 已存在;核对列长度、可空性及索引 --- Postconditions: customer_id、order_no 使用 utf8mb4_unicode_ci;不修改任何业务数据 +-- Postconditions: customer_id、order_no 使用 utf8mb4_0900_ai_ci;不修改任何业务数据 -- DDL 非事务,执行前核对目标库;失败后检查列定义再继续。 ALTER TABLE baiyue_lastleg.ll_order_budget_reservation - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, - MODIFY COLUMN customer_id VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离标识', - MODIFY COLUMN order_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '成功创建的业务单号'; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, + MODIFY COLUMN customer_id VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离标识', + MODIFY COLUMN order_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '成功创建的业务单号'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V3__relax_valid_nullable_fields.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V3__relax_valid_nullable_fields.sql index 6b5c7795d..82bf8984c 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V3__relax_valid_nullable_fields.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V3__relax_valid_nullable_fields.sql @@ -8,5 +8,5 @@ ALTER TABLE ll_outbound_pda_pick MODIFY COLUMN inventory_position_id bigint NULL COMMENT '库存仓位ID;退货箱直接出库时为空'; ALTER TABLE ll_relabel_item - MODIFY COLUMN new_sku_code varchar(128) COLLATE utf8mb4_unicode_ci NULL COMMENT '换标后SKU编码;批量SKU换标使用子明细JSON时为空', - MODIFY COLUMN source_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NULL COMMENT '原海外中转仓ID;预入仓批量SKU换标时为空'; + MODIFY COLUMN new_sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NULL COMMENT '换标后SKU编码;批量SKU换标使用子明细JSON时为空', + MODIFY COLUMN source_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NULL COMMENT '原海外中转仓ID;预入仓批量SKU换标时为空'; diff --git a/deploy/sql/migrations/overseas/baiyue_lastleg/V9__add_transfer_receipt_resource_command.sql b/deploy/sql/migrations/overseas/baiyue_lastleg/V9__add_transfer_receipt_resource_command.sql index 2e0e6f4cc..bb02f86a8 100644 --- a/deploy/sql/migrations/overseas/baiyue_lastleg/V9__add_transfer_receipt_resource_command.sql +++ b/deploy/sql/migrations/overseas/baiyue_lastleg/V9__add_transfer_receipt_resource_command.sql @@ -27,4 +27,4 @@ CREATE TABLE ll_warehouse_transfer_receipt_command ( UNIQUE KEY uk_ll_wh_receipt_cmd_key (customer_id, idempotency_key), KEY idx_ll_wh_receipt_cmd_target (customer_id, transfer_order_id, target_pallet_id), CONSTRAINT ck_ll_wh_receipt_cmd_status CHECK (status IN ('PREPARED','RESERVED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; diff --git a/deploy/sql/overseas-fees-storage-rent-structure-add.sql b/deploy/sql/overseas-fees-storage-rent-structure-add.sql index 1db557726..b45f7bef9 100644 --- a/deploy/sql/overseas-fees-storage-rent-structure-add.sql +++ b/deploy/sql/overseas-fees-storage-rent-structure-add.sql @@ -41,7 +41,7 @@ BEGIN IF inbound_exists>0 THEN IF (SELECT COUNT(*) FROM information_schema.TABLES WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='ll_storage_rent_inbound' - AND TABLE_TYPE='BASE TABLE' AND ENGINE='InnoDB' AND TABLE_COLLATION='utf8mb4_unicode_ci')<>1 + AND TABLE_TYPE='BASE TABLE' AND ENGINE='InnoDB' AND TABLE_COLLATION='utf8mb4_0900_ai_ci')<>1 OR (SELECT COUNT(*) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='ll_storage_rent_inbound')<>4 OR (SELECT COUNT(*) FROM information_schema.COLUMNS @@ -81,7 +81,7 @@ BEGIN created_at datetime(3) NOT NULL COMMENT '计租登记时间,采用协调世界时', PRIMARY KEY (receipt_id), KEY idx_storage_rent_inbound_lot (lot_id) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程实收计租幂等登记'; + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程实收计租幂等登记'; END IF; END$$ DELIMITER ; diff --git a/deploy/sql/reset-test-fba-appointments.sql b/deploy/sql/reset-test-fba-appointments.sql index 647947332..b8f1fc257 100644 --- a/deploy/sql/reset-test-fba-appointments.sql +++ b/deploy/sql/reset-test-fba-appointments.sql @@ -52,7 +52,7 @@ CREATE TABLE ll_inbound_fba_appointment ( UNIQUE KEY uk_ll_fba_appointment_no (appointment_no), KEY idx_ll_fba_appointment_list (appointment_at,appointment_status,fba_warehouse_code), KEY idx_ll_fba_appointment_planned (planned_at,appointment_status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='FBA预约安排与正式确认唯一主记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='FBA预约安排与正式确认唯一主记录'; CREATE TABLE ll_inbound_fba_appointment_item ( id BIGINT NOT NULL COMMENT '记录主键', @@ -74,7 +74,7 @@ CREATE TABLE ll_inbound_fba_appointment_item ( KEY idx_ll_fba_active_order (customer_id,order_id,active), KEY idx_ll_fba_item_source_lookup (source_key,customer_id), KEY idx_ll_fba_item_customer_order (customer_id,order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓前后共用的预约真实货源'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓前后共用的预约真实货源'; CREATE TABLE ll_appointment_cargo_verification ( id BIGINT NOT NULL COMMENT '核实记录主键', @@ -97,7 +97,7 @@ CREATE TABLE ll_appointment_cargo_verification ( UNIQUE KEY uk_ll_cargo_verification_command (customer_id,source_key,command_key), CONSTRAINT chk_ll_cargo_verification_quantity CHECK (package_count IS NULL OR package_count > 0), CONSTRAINT chk_ll_cargo_verification_version CHECK (version > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; CREATE TABLE ll_fba_appointment_command ( command_key VARCHAR(128) NOT NULL COMMENT '持久化幂等键', @@ -109,4 +109,4 @@ CREATE TABLE ll_fba_appointment_command ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建UTC时间', PRIMARY KEY(command_key), KEY idx_ll_fba_command_appointment(appointment_no,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约命令与变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约命令与变更历史'; diff --git a/deploy/sql/头程数据库统一增量-MySQL8.sql b/deploy/sql/头程数据库统一增量-MySQL8.sql index 205a14395..cf686251b 100644 --- a/deploy/sql/头程数据库统一增量-MySQL8.sql +++ b/deploy/sql/头程数据库统一增量-MySQL8.sql @@ -4144,7 +4144,7 @@ CREATE TABLE fl_direct_delivery_unloading ( PRIMARY KEY (container_booking_id,inbound_id), UNIQUE KEY uk_direct_unloading_command (container_booking_id,idempotency_key), CONSTRAINT fk_direct_unloading_container FOREIGN KEY (container_booking_id) REFERENCES fl_container_booking(id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='直送目的仓真实卸货凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='直送目的仓真实卸货凭据'; CREATE TABLE fl_terminal_drayage ( @@ -8070,7 +8070,7 @@ CREATE TABLE fl_sailing_channel ( PRIMARY KEY (id), UNIQUE KEY uk_fl_sailing_channel_code (channel_code), KEY idx_fl_sailing_channel_status (status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing_template ( id BIGINT NOT NULL, @@ -8106,7 +8106,7 @@ CREATE TABLE fl_sailing_template ( KEY idx_fl_sailing_template_filter (warehouse_id,channel_id,status,weekday), CONSTRAINT ck_fl_sailing_template_weekday CHECK (weekday BETWEEN 1 AND 7), CONSTRAINT ck_fl_sailing_template_cutoff_days CHECK (cutoff_days BETWEEN 0 AND 30) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing ( id BIGINT NOT NULL, @@ -8143,7 +8143,7 @@ CREATE TABLE fl_sailing ( KEY idx_fl_sailing_calendar (etd_at,warehouse_id,channel_id,status), KEY idx_fl_sailing_route (departure_port_code,destination_port_code), CONSTRAINT ck_fl_sailing_status CHECK (status IN ('DRAFT','OPEN','CLOSED','DEPARTED','CANCELLED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing_history ( id BIGINT NOT NULL, @@ -8157,7 +8157,7 @@ CREATE TABLE fl_sailing_history ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), PRIMARY KEY (id), KEY idx_fl_sailing_history_sailing (sailing_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; USE baiyue_iam; @@ -8453,7 +8453,7 @@ CREATE TABLE ord_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_ord_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水'; USE baiyue_warehouse; CREATE TABLE wh_document_sequence ( @@ -8461,7 +8461,7 @@ CREATE TABLE wh_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_wh_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水'; -- 海外费用查询菜单;编辑、审核继续使用独立财务按钮授权。 USE baiyue_iam; diff --git a/deploy/sql/海外区域统一增量-MySQL8.sql b/deploy/sql/海外区域统一增量-MySQL8.sql index ac21876a6..70f42583d 100644 --- a/deploy/sql/海外区域统一增量-MySQL8.sql +++ b/deploy/sql/海外区域统一增量-MySQL8.sql @@ -8,31 +8,31 @@ SET NAMES utf8mb4 COLLATE utf8mb4_0900_ai_ci; SET SESSION sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'; -- 服务 schema:baiyue_lastleg -CREATE DATABASE IF NOT EXISTS baiyue_lastleg DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; +CREATE DATABASE IF NOT EXISTS baiyue_lastleg DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; CREATE TABLE ll_cargo_discard_application ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', customer_confirmed_at datetime(3) DEFAULT NULL COMMENT '客户确认完成时间', - discard_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '废弃申请单号', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓名称快照', - inbound_codes varchar(2000) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号集合', + discard_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '废弃申请单号', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称快照', + inbound_codes varchar(2000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号集合', total_packages int NOT NULL COMMENT '总箱数', fee_per_package decimal(18,2) NOT NULL COMMENT '每箱处理费用', total_fee decimal(18,2) NOT NULL COMMENT '费用合计', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD' COMMENT '币种', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', - created_by_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '申请人姓名快照', - reviewed_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人ID', - review_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核备注', - review_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核幂等键', - review_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核请求内容哈希', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '币种', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', + created_by_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '申请人姓名快照', + reviewed_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', + review_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核备注', + review_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核幂等键', + review_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核请求内容哈希', reviewed_at datetime(3) DEFAULT NULL COMMENT '审核时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -41,45 +41,45 @@ CREATE TABLE ll_cargo_discard_application ( UNIQUE KEY uk_ll_cargo_discard_key (customer_id,idempotency_key), KEY idx_ll_cargo_discard_list (customer_id,status,created_at), KEY idx_ll_cargo_discard_warehouse (customer_id,overseas_warehouse_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物废弃申请单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='货物废弃申请单'; CREATE TABLE ll_cargo_discard_carton ( id bigint NOT NULL COMMENT '主键ID', application_id bigint NOT NULL COMMENT '申请单ID', item_id bigint NOT NULL COMMENT '明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', carton_id bigint NOT NULL COMMENT '箱唛记录ID', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '箱唛', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱唛', source_type VARCHAR(32) NOT NULL DEFAULT 'DROPSHIP' COMMENT '箱子来源:一件代发DROPSHIP、入仓箱INBOUND、转运箱TRANSFER', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_cargo_discard_carton (application_id,carton_id), KEY idx_ll_cargo_discard_carton_application (customer_id,application_id,item_id), KEY idx_ll_cargo_discard_carton_identity (customer_id,carton_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物废弃锁定箱明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='货物废弃锁定箱明细'; CREATE TABLE ll_cargo_discard_item ( id bigint NOT NULL COMMENT '主键ID', application_id bigint NOT NULL COMMENT '申请单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint DEFAULT NULL COMMENT '一件代发订单ID', - source_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'DROPSHIP' COMMENT '库存来源:一件代发DROPSHIP、退货箱RETURN_CARTON、通用库存INVENTORY', + source_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DROPSHIP' COMMENT '库存来源:一件代发DROPSHIP、退货箱RETURN_CARTON、通用库存INVENTORY', return_carton_id bigint DEFAULT NULL COMMENT '退货库存箱ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号快照', profile_id bigint DEFAULT NULL COMMENT '托盘档案ID', sku_inventory_id bigint DEFAULT NULL COMMENT 'SKU库存记录ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品名称', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称', inventory_position_id BIGINT NULL COMMENT '废弃来源库存仓位ID', carton_marks_json TEXT NULL COMMENT '本次废弃所选真实箱唛快照JSON数组', carton_scan_required TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否需要逐箱核对本次所选箱子', actual_carton_marks_json JSON NULL COMMENT 'PDA现场实际废弃箱唛清单,与客户选箱快照独立保存', available_packages_snapshot int NOT NULL COMMENT '可用箱数快照', discard_packages int NOT NULL COMMENT '申请废弃箱数', - completion_photo_file_ids text COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA完工照片文件ID JSON数组', + completion_photo_file_ids text COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA完工照片文件ID JSON数组', actual_discard_packages int DEFAULT NULL COMMENT 'PDA确认实际废弃箱数', - pda_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT 'PDA处理状态:待处理PENDING、已完成COMPLETED', - pda_operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA操作人', + pda_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT 'PDA处理状态:待处理PENDING、已完成COMPLETED', + pda_operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA操作人', pda_completed_at datetime(3) DEFAULT NULL COMMENT 'PDA完成时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), @@ -88,116 +88,116 @@ CREATE TABLE ll_cargo_discard_item ( KEY idx_ll_cargo_discard_item_list (customer_id,application_id), KEY idx_ll_cargo_discard_item_inbound (customer_id,inbound_code,sku_code) ,KEY idx_ll_cargo_discard_return_carton (customer_id,return_carton_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物废弃SKU明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='货物废弃SKU明细'; CREATE TABLE ll_cargo_discard_status_history ( id bigint NOT NULL COMMENT '主键ID', application_id bigint NOT NULL COMMENT '申请单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_cargo_discard_history (customer_id,application_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物废弃审批历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='货物废弃审批历史'; CREATE TABLE ll_container_arrival_time_operation ( id bigint NOT NULL COMMENT '柜级预计到仓时间修改操作ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '稳定来源柜预订ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '平台请求幂等键', - request_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台请求幂等键', + request_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', result_version int NOT NULL COMMENT '修改成功后的柜级时间版本', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '平台操作人名称', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '预计到仓时间修改备注', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人名称', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '预计到仓时间修改备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '操作时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_container_arrival_time_idempotency (idempotency_key), KEY idx_ll_container_arrival_time_container (source_container_booking_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜级预计到仓时间修改幂等审计记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜级预计到仓时间修改幂等审计记录'; CREATE TABLE ll_container_loading_evidence ( id bigint NOT NULL COMMENT '海外整柜装柜照片投影ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国内稳定来源柜预订ID', - evidence_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PHOTO_STEP_1至PHOTO_STEP_4或SEAL', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内稳定来源柜预订ID', + evidence_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PHOTO_STEP_1至PHOTO_STEP_4或SEAL', source_file_id bigint NOT NULL COMMENT '国内File服务文件ID', - file_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国内文件名快照', + file_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内文件名快照', created_at datetime(3) NOT NULL COMMENT '投影创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_container_loading_evidence_type (source_container_booking_id,evidence_type), UNIQUE KEY uk_ll_container_loading_evidence_file (source_container_booking_id,source_file_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外拆柜只读国内装柜照片引用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外拆柜只读国内装柜照片引用'; CREATE TABLE ll_container_plan_conversion_command ( id bigint NOT NULL COMMENT '柜级转换命令ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '稳定来源柜预订ID', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '调用方幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '确认请求SHA-256摘要', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '调用方幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '确认请求SHA-256摘要', snapshot_version bigint NOT NULL COMMENT '确认的柜级快照版本', - snapshot_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '确认的柜级快照SHA-256', + snapshot_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '确认的柜级快照SHA-256', warehouse_id bigint NOT NULL COMMENT '海外接柜仓ID', - batch_key varchar(160) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓托盘批次幂等键', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '命令状态:PREPARED/APPLYING/FAILED/LOCAL_COMMITTED/COMPLETED', - lease_token varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '当前执行租约令牌,用于陈旧执行者隔离', + batch_key varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓托盘批次幂等键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令状态:PREPARED/APPLYING/FAILED/LOCAL_COMMITTED/COMPLETED', + lease_token varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前执行租约令牌,用于陈旧执行者隔离', preparation_json json NOT NULL COMMENT '稳定计划号与托盘业务键快照', result_json json DEFAULT NULL COMMENT '本地计划提交结果', - last_error varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次跨服务错误', + last_error varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次跨服务错误', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '命令创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '命令状态或租约更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_container_conversion_command (source_container_booking_id), UNIQUE KEY uk_ll_container_conversion_batch (warehouse_id,batch_key), KEY idx_ll_container_conversion_status (status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜级入库计划转换Saga与幂等命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜级入库计划转换Saga与幂等命令'; CREATE TABLE ll_container_shipping_gate ( - container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源头程柜预订ID', - ocean_booking_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源海运订舱ID;货柜未关联订舱时为空', - container_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际集装箱号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'AWAITING_PICKUP_READY' COMMENT '海外收货门禁状态:AWAITING_PICKUP_READY、RECEIVING_AVAILABLE', - standard_node varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最新有效标准船节点', + container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源头程柜预订ID', + ocean_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源海运订舱ID;货柜未关联订舱时为空', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际集装箱号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AWAITING_PICKUP_READY' COMMENT '海外收货门禁状态:AWAITING_PICKUP_READY、RECEIVING_AVAILABLE', + standard_node varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最新有效标准船节点', node_sequence int NOT NULL DEFAULT '0' COMMENT '最新有效节点单调序号', observed_at datetime(3) DEFAULT NULL COMMENT '供应商节点观测时间', actual_at datetime(3) DEFAULT NULL COMMENT '节点实际发生时间', - location_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '节点地点编码', - location_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '节点地点名称', - provider_code varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '船节点供应商编码', - provider_event_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '供应商事件ID', - provider_node_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '供应商原始节点编码', - source_reference varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '供应商来源引用', - raw_payload_hash varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '供应商原始负载SHA-256', + location_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '节点地点编码', + location_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '节点地点名称', + provider_code varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '船节点供应商编码', + provider_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商事件ID', + provider_node_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商原始节点编码', + source_reference varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商来源引用', + raw_payload_hash varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商原始负载SHA-256', aggregate_version bigint NOT NULL DEFAULT '0' COMMENT '来源查询聚合版本', handover_version bigint NOT NULL DEFAULT '1' COMMENT '跨区交接版本', - last_event_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近采纳的跨区事件ID', - payload_hash varchar(71) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近采纳事件规范化负载摘要', + last_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近采纳的跨区事件ID', + payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近采纳事件规范化负载摘要', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (container_booking_id), KEY idx_ll_shipping_gate_version (container_booking_id,aggregate_version,node_sequence), KEY idx_ll_shipping_gate_candidate (container_no,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA柜号船节点收货资格快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA柜号船节点收货资格快照'; CREATE TABLE ll_customer_visit ( id bigint NOT NULL COMMENT '客户回访记录ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', delivery_order_id bigint NOT NULL COMMENT '关联派送单ID', - delivery_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '关联派送单号', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户名称快照', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户联系人姓名快照', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户联系人电话快照', - destination varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送目的仓编码汇总快照', + delivery_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '关联派送单号', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户联系人姓名快照', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户联系人电话快照', + destination varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送目的仓编码汇总快照', delivery_completed_at datetime(3) NOT NULL COMMENT '派送完成时间', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '回访状态:PENDING待回访或COMPLETED已回访', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '回访状态:PENDING待回访或COMPLETED已回访', selected_last_mile_order_id bigint DEFAULT NULL COMMENT '本次回访选择的尾程订单ID', - selected_last_mile_order_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本次回访选择的尾程订单号', + selected_last_mile_order_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次回访选择的尾程订单号', selected_inbound_order_id bigint DEFAULT NULL COMMENT '本次回访选择的入仓单ID', - selected_inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本次回访选择的入仓码', - visit_result varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次回访结果', - customer_feedback varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次客户反馈', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次回访备注', + selected_inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次回访选择的入仓码', + visit_result varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访结果', + customer_feedback varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次客户反馈', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访备注', attachment_json json DEFAULT NULL COMMENT '当前回访资料文件元数据列表', - visited_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次回访操作人ID', + visited_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次回访操作人ID', visited_at datetime(3) DEFAULT NULL COMMENT '最近一次回访时间', visit_count int NOT NULL DEFAULT '0' COMMENT '累计保存回访次数', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -206,71 +206,71 @@ CREATE TABLE ll_customer_visit ( UNIQUE KEY uk_ll_customer_visit_delivery (customer_id,delivery_order_id), KEY idx_ll_customer_visit_list (customer_id,status,delivery_completed_at), KEY idx_ll_customer_visit_delivery_no (customer_id,delivery_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派送单维度客户回访记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派送单维度客户回访记录'; CREATE TABLE ll_delivery_document_revision ( id bigint NOT NULL COMMENT '派送资料历史ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '派送所属客户隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '派送所属客户隔离键', delivery_order_id bigint NOT NULL COMMENT '派送单ID', version bigint NOT NULL COMMENT '保存成功时派送单版本', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '资料保存幂等键', - request_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '完整保存请求哈希', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资料保存幂等键', + request_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '完整保存请求哈希', snapshot_json json NOT NULL COMMENT '不可变三类资料及BOL号结果快照', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '保存操作人ID', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '保存操作人ID', created_at datetime(3) NOT NULL COMMENT '资料保存时间', PRIMARY KEY (id), UNIQUE KEY uk_delivery_document_command (customer_id,delivery_order_id,idempotency_key), UNIQUE KEY uk_delivery_document_version (customer_id,delivery_order_id,version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派送资料版本历史与幂等保存记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派送资料版本历史与幂等保存记录'; CREATE TABLE ll_delivery_operation ( id bigint NOT NULL COMMENT '派送操作主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', delivery_order_id bigint NOT NULL COMMENT '派送单ID', - operation_node varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作节点', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人名称', - result varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '处理结果', + operation_node varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作节点', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人名称', + result varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理结果', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '操作时间', PRIMARY KEY (id), KEY idx_ll_delivery_operation_order (customer_id,delivery_order_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派送单操作记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派送单操作记录'; CREATE TABLE ll_delivery_order ( id bigint NOT NULL COMMENT '派送单主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - delivery_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '派送单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + delivery_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '派送单号', outbound_order_id bigint NOT NULL COMMENT '关联出库单ID', - outbound_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '关联出库单号', + outbound_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '关联出库单号', dispatch_order_id bigint DEFAULT NULL COMMENT '关联派车单ID,仓储转运直接出库时为空', - dispatch_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联派车单号,仓储转运直接出库时为空', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓ID', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓名称快照', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户名称快照', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本派送单目的FBA仓ID快照', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本派送单目的FBA仓编码快照,私人仓为空', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本派送单目的FBA仓名称快照', - destination_type varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的地类型:FBA或PRIVATE', - delivery_address varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓派送地址', - postal_code varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓邮编', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系人', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系电话', - delivery_group_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '同一出库单内按目的FBA仓拆单的稳定分组键', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'WAIT_DELIVERY' COMMENT '派送状态:WAIT_DELIVERY待派送及后续正式状态', - waybill_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '承运运单号', - bol_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送资料BOL号,不作为文件归属标识', + dispatch_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联派车单号,仓储转运直接出库时为空', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓ID', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称快照', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓ID快照', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓编码快照,私人仓为空', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本派送单目的FBA仓名称快照', + destination_type varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地类型:FBA或PRIVATE', + delivery_address varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓派送地址', + postal_code varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话', + delivery_group_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '同一出库单内按目的FBA仓拆单的稳定分组键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_DELIVERY' COMMENT '派送状态:WAIT_DELIVERY待派送及后续正式状态', + waybill_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '承运运单号', + bol_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送资料BOL号,不作为文件归属标识', documents_json json DEFAULT NULL COMMENT '派送三类资料当前绑定及权威文件元数据快照', - delivery_method varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送方式', - carrier_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送承运商', - pickup_method varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '提货方式', - loading_type varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '装车类型', - vehicle_type varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '车辆类型', - vehicle_size varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '车辆大小', - vehicle_plate varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '车牌号', - driver_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '司机或车队名称', - driver_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '车队联系电话', - appointment_account varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '预约账号', - seller_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '卖家姓名', + delivery_method varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送方式', + carrier_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送承运商', + pickup_method varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货方式', + loading_type varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '装车类型', + vehicle_type varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车辆类型', + vehicle_size varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车辆大小', + vehicle_plate varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车牌号', + driver_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机或车队名称', + driver_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '车队联系电话', + appointment_account varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '预约账号', + seller_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '卖家姓名', package_count int NOT NULL DEFAULT '0' COMMENT '派送箱数', pallet_count int NOT NULL DEFAULT '0' COMMENT '派送托盘数', total_weight_kg DECIMAL(18,4) NULL COMMENT '总重量(千克),任一来源未确认时为空', @@ -279,9 +279,9 @@ CREATE TABLE ll_delivery_order ( dispatched_at datetime(3) DEFAULT NULL COMMENT '实际派送时间', expected_arrival_at datetime(3) DEFAULT NULL COMMENT '预计到达时间', signed_at datetime(3) DEFAULT NULL COMMENT '签收时间', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送备注', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送备注', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', version bigint NOT NULL DEFAULT '0' COMMENT '派送单乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -293,28 +293,28 @@ CREATE TABLE ll_delivery_order ( UNIQUE KEY uk_ll_delivery_idempotency (customer_id,idempotency_key), UNIQUE KEY uk_ll_delivery_outbound_destination (customer_id,outbound_order_id,delivery_group_key), KEY idx_ll_delivery_list (customer_id,status,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程派送单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程派送单'; CREATE TABLE ll_destuff_pallet_cost ( id bigint NOT NULL COMMENT '主键ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源柜次业务ID', - container_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '集装箱号', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源柜次业务ID', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', warehouse_id bigint DEFAULT NULL COMMENT '海外仓ID', pallet_count int NOT NULL COMMENT '实际打托数', total_actual_volume_cbm decimal(20,6) NOT NULL COMMENT '客户实收总体积', total_cost decimal(20,2) NOT NULL COMMENT '打托总成本', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'CNY' COMMENT '成本币种', - status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '生成状态', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '成本币种', + status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '生成状态', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_destuff_cost_booking (source_container_booking_id), CONSTRAINT chk_ll_destuff_cost CHECK (((pallet_count > 0) and (total_actual_volume_cbm > 0) and (total_cost > 0) and (currency = _utf8mb4'CNY'))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='拆柜打托实际成本汇总'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='拆柜打托实际成本汇总'; CREATE TABLE ll_destuff_pallet_cost_allocation ( id bigint NOT NULL COMMENT '主键ID', cost_id bigint NOT NULL COMMENT '打托成本汇总ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', actual_volume_cbm decimal(20,6) NOT NULL COMMENT '客户实收体积', allocated_amount decimal(20,2) NOT NULL COMMENT '客户分摊金额', fee_source_id bigint DEFAULT NULL COMMENT '人工审核后关联的海外费用来源ID', @@ -323,18 +323,18 @@ CREATE TABLE ll_destuff_pallet_cost_allocation ( UNIQUE KEY uk_ll_destuff_customer (cost_id,customer_id), UNIQUE KEY uk_ll_destuff_fee_source (fee_source_id), CONSTRAINT chk_ll_destuff_allocation CHECK (((actual_volume_cbm > 0) and (allocated_amount >= 0))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='拆柜打托成本按客户实收体积分摊'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='拆柜打托成本按客户实收体积分摊'; CREATE TABLE ll_dispatch_draft ( id bigint NOT NULL COMMENT '主键ID', - draft_token varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '智能排车草稿随机标识', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '草稿拥有者身份,仅本人可维护及恢复命令', + draft_token varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '智能排车草稿随机标识', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '草稿拥有者身份,仅本人可维护及恢复命令', warehouse_id BIGINT NOT NULL COMMENT '本草稿唯一起运公共仓库引用', record_version BIGINT NOT NULL DEFAULT 0 COMMENT '草稿并发版本,显式零版本合法', sources_json LONGTEXT NOT NULL COMMENT '服务端核验的真实来源及客户版本快照数组', - plan_ids_json longtext COLLATE utf8mb4_unicode_ci COMMENT '所选入仓计划ID列表JSON,容纳最多五百个完整长整型引用', - containers_json longtext COLLATE utf8mb4_unicode_ci COMMENT '草稿装车布局JSON快照', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '草稿状态:ACTIVE有效、RELEASED释放、CONVERTED已整批转换', + plan_ids_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '所选入仓计划ID列表JSON,容纳最多五百个完整长整型引用', + containers_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '草稿装车布局JSON快照', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '草稿状态:ACTIVE有效、RELEASED释放、CONVERTED已整批转换', expires_at datetime(3) DEFAULT NULL COMMENT '草稿失效时间', released_at datetime(3) DEFAULT NULL COMMENT '草稿释放时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -342,12 +342,12 @@ CREATE TABLE ll_dispatch_draft ( PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_draft_token (draft_token), KEY idx_ll_dispatch_draft_operator (operator_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='智能排车草稿'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='智能排车草稿'; CREATE TABLE ll_dispatch_draft_container ( id bigint NOT NULL COMMENT '主键ID', draft_id bigint NOT NULL COMMENT '智能排车草稿ID', - draft_token varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '智能排车草稿随机标识', + draft_token varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '智能排车草稿随机标识', sequence_no int NOT NULL COMMENT '草稿车厢顺序号', capacity int NOT NULL COMMENT '草稿车厢托盘容量', source_keys_json LONGTEXT NOT NULL COMMENT '本装车容器已取得本草稿占用的来源键数组', @@ -356,7 +356,7 @@ CREATE TABLE ll_dispatch_draft_container ( PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_draft_container_sequence (draft_id,sequence_no), KEY idx_ll_dispatch_draft_container_token (draft_token) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='智能排车草稿装车容器,每个非空容器转换一张整车单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='智能排车草稿装车容器,每个非空容器转换一张整车单'; CREATE TABLE ll_dispatch_draft_command ( id BIGINT NOT NULL COMMENT '草稿命令内部主键', @@ -369,7 +369,7 @@ CREATE TABLE ll_dispatch_draft_command ( created_at DATETIME(3) NOT NULL COMMENT '命令创建UTC时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_draft_command_key (idempotency_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='智能排车草稿持久命令及原结果'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='智能排车草稿持久命令及原结果'; CREATE TABLE ll_dispatch_item ( customer_name VARCHAR(255) NULL COMMENT '本条真实客户名称快照', @@ -414,7 +414,7 @@ CREATE TABLE ll_dispatch_item ( KEY idx_ll_dispatch_item_order (customer_id,order_id), KEY idx_ll_dispatch_item_inbound (customer_id,inbound_code), KEY idx_ll_dispatch_item_pallet (customer_id,plan_pallet_id,warehouse_pallet_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派车货物冻结明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派车货物冻结明细'; CREATE TABLE ll_dispatch_order ( id BIGINT NOT NULL COMMENT '整车排车主单内部主键', @@ -462,7 +462,7 @@ CREATE TABLE ll_dispatch_order ( UNIQUE KEY uk_dispatch_trip (trip_id), KEY idx_ll_dispatch_order_list (overseas_warehouse_id,status,stage,created_at,id), KEY idx_ll_dispatch_order_vehicle (vehicle_plate,status,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='平台整车排车作业主单,客户归属在真实明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='平台整车排车作业主单,客户归属在真实明细'; CREATE TABLE ll_dispatch_history ( id BIGINT NOT NULL COMMENT '排车历史内部主键', @@ -475,7 +475,7 @@ CREATE TABLE ll_dispatch_history ( occurred_at DATETIME(3) NOT NULL COMMENT '真实操作发生时间', PRIMARY KEY (id), KEY idx_dispatch_history_version (dispatch_id,record_version,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车版本与审核轮次的追加历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车版本与审核轮次的追加历史'; CREATE TABLE ll_dispatch_item_source ( id BIGINT NOT NULL COMMENT '逻辑运输来源贡献快照主键', @@ -504,13 +504,13 @@ CREATE TABLE ll_dispatch_item_source ( KEY idx_dispatch_item_source_relabel (customer_id,relabel_application_id,relabel_item_id), CONSTRAINT chk_dispatch_item_source_packages CHECK(notified_package_count>=0 AND package_count>0), CONSTRAINT chk_dispatch_item_source_quantity CHECK(product_quantity IS NULL OR product_quantity>=0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='换标逻辑来源实际贡献不可变快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='换标逻辑来源实际贡献不可变快照'; CREATE TABLE ll_physical_pallet_guard ( warehouse_pallet_id BIGINT NOT NULL COMMENT '真实全局物理托盘ID', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '首次建立串行点时间', PRIMARY KEY (warehouse_pallet_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车冻结与仓内实托组成修改的共同串行点'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车冻结与仓内实托组成修改的共同串行点'; CREATE TABLE ll_dispatch_physical_pallet_lock ( id BIGINT NOT NULL COMMENT '物理实托占用主键', @@ -533,7 +533,7 @@ CREATE TABLE ll_dispatch_physical_pallet_lock ( KEY idx_dispatch_physical_draft (draft_token,draft_container_id,status), CONSTRAINT chk_dispatch_physical_active_key CHECK((status='ACTIVE' AND active_warehouse_pallet_id IS NOT NULL AND active_warehouse_pallet_id=warehouse_pallet_id) OR (status<>'ACTIVE' AND active_warehouse_pallet_id IS NULL)), CONSTRAINT chk_dispatch_physical_owner CHECK((dispatch_order_id IS NOT NULL AND draft_token IS NULL AND draft_container_id IS NULL) OR (dispatch_order_id IS NULL AND draft_token IS NOT NULL AND draft_container_id IS NOT NULL)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='同车共享且跨车排他的物理实托占用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='同车共享且跨车排他的物理实托占用'; CREATE TABLE ll_dispatch_pallet_lock ( id BIGINT NOT NULL COMMENT '主键ID', @@ -561,39 +561,39 @@ CREATE TABLE ll_dispatch_pallet_lock ( KEY idx_dispatch_logical_physical (physical_lock_id,status), KEY idx_ll_dispatch_pallet_lock_order (customer_id,dispatch_order_id,status), KEY idx_ll_dispatch_pallet_lock_source (customer_id,source_pallet_key,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户逻辑运输来源占用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户逻辑运输来源占用'; CREATE TABLE ll_dispatch_pda_operation ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', task_id bigint DEFAULT NULL COMMENT 'PDA任务ID', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作类型', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - result_json longtext COLLATE utf8mb4_unicode_ci COMMENT '处理结果JSON', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作处理状态', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作类型', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + result_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '处理结果JSON', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作处理状态', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_pda_operation_key (customer_id,idempotency_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派车PDA操作幂等记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派车PDA操作幂等记录'; CREATE TABLE ll_dispatch_pda_pick ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', task_id bigint NOT NULL COMMENT 'PDA任务ID', dispatch_item_id bigint NOT NULL COMMENT '派车明细ID', inventory_position_id BIGINT NULL COMMENT '普通库存仓位记录ID', packages bigint NOT NULL COMMENT '本次操作箱数', product_quantity bigint NOT NULL DEFAULT '0' COMMENT '产品数量', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', picked_at datetime(3) NOT NULL COMMENT '拣货时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', return_carton_id BIGINT NULL COMMENT '独立退货库存箱ID,与普通仓位互斥', PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_pda_pick_key (customer_id,idempotency_key), KEY idx_ll_dispatch_pda_pick_item (customer_id,task_id,dispatch_item_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='派车PDA拣货记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='派车PDA拣货记录'; CREATE TABLE ll_return_stock_receipt ( id BIGINT NOT NULL COMMENT '退回入仓实收凭据ID', @@ -617,7 +617,7 @@ CREATE TABLE ll_return_stock_receipt ( KEY idx_return_stock_receipt_order(customer_id,order_id), KEY idx_return_stock_receipt_position(customer_id,inventory_balance_id,inventory_position_id), CONSTRAINT chk_return_stock_receipt_packages CHECK(received_packages>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='真实退回入仓及再次发运来源凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='真实退回入仓及再次发运来源凭据'; CREATE TABLE ll_dispatch_pda_pick_order ( id BIGINT NOT NULL COMMENT '主键ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户租户ID', pick_id BIGINT NOT NULL COMMENT 'PDA拣货记录ID', @@ -633,16 +633,16 @@ CREATE TABLE ll_dispatch_pda_pick_order ( PRIMARY KEY (id), KEY idx_ll_dispatch_pick_order_pick (customer_id,pick_id), KEY idx_ll_dispatch_pick_order_receipt (customer_id,receipt_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PDA拣货订单归属记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PDA拣货订单归属记录'; CREATE TABLE ll_dispatch_pda_task ( id bigint NOT NULL COMMENT '主键ID', dispatch_order_id bigint NOT NULL COMMENT '唯一整车排车单引用,客户归属保留在扫码明细', - task_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA任务号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Token绑定的海外仓库ID', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人姓名', + task_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA任务号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Token绑定的海外仓库ID', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人姓名', pushed_at datetime(3) NOT NULL COMMENT '任务下发时间', completed_at datetime(3) DEFAULT NULL COMMENT '完成时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -650,21 +650,21 @@ CREATE TABLE ll_dispatch_pda_task ( PRIMARY KEY (id), UNIQUE KEY uk_ll_dispatch_pda_task_dispatch (dispatch_order_id), UNIQUE KEY uk_ll_dispatch_pda_task_no (task_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车PDA拣货任务,一张排车单仅一条任务'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车PDA拣货任务,一张排车单仅一条任务'; CREATE TABLE ll_dropship_carton ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint NOT NULL COMMENT '订单ID', profile_id bigint NOT NULL COMMENT '托盘档案ID', warehouse_pallet_id bigint DEFAULT NULL COMMENT '仓库实物托盘ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '托盘号', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '箱唛', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '托盘号', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱唛', product_quantity bigint NOT NULL COMMENT '该箱实收商品件数', carton_sequence int NOT NULL COMMENT '箱唛序号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_INBOUND' COMMENT '业务状态', - outbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '出库单号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_INBOUND' COMMENT '业务状态', + outbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库单号', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -672,16 +672,16 @@ CREATE TABLE ll_dropship_carton ( UNIQUE KEY uk_ll_dropship_carton (customer_id,order_id,carton_mark), KEY idx_ll_dropship_carton_status (customer_id,status), KEY idx_ll_dropship_carton_sku (customer_id,sku_code,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发箱唛明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发箱唛明细'; CREATE TABLE ll_dropship_carton_sku ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', profile_id bigint NOT NULL COMMENT '一件代发托盘档案ID', carton_id bigint NOT NULL COMMENT '一件代发物理箱ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '箱内SKU编码', - product_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品名称快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱内SKU编码', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称快照', product_quantity bigint NOT NULL COMMENT '该物理箱内此SKU实收件数', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -689,43 +689,43 @@ CREATE TABLE ll_dropship_carton_sku ( UNIQUE KEY uk_ll_dropship_carton_sku (carton_id,sku_code), KEY idx_ll_dropship_carton_sku_order (customer_id,order_id,sku_code), KEY idx_ll_dropship_carton_sku_profile (customer_id,profile_id,sku_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发物理箱内SKU明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发物理箱内SKU明细'; CREATE TABLE ll_dropship_carton_ledger ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint NOT NULL COMMENT '订单ID', carton_id bigint NOT NULL COMMENT '箱唛记录ID', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '箱唛', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱唛', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型', before_packages bigint NOT NULL COMMENT '变动前箱数', delta_packages bigint NOT NULL COMMENT '箱数变动量', after_packages bigint NOT NULL COMMENT '变动后箱数', - business_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '业务单号', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + business_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '业务单号', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', occurred_at datetime(3) NOT NULL COMMENT '业务发生时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_dropship_ledger_key (customer_id,idempotency_key), KEY idx_ll_dropship_ledger_sku (customer_id,sku_code,carton_mark) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发箱唛库存流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发箱唛库存流水'; CREATE TABLE ll_dropship_order_profile ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint NOT NULL COMMENT '订单ID', warehouse_pallet_id bigint DEFAULT NULL COMMENT '仓库实物托盘ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '托盘号', - source_pallet_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源托盘号快照', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '托盘号', + source_pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源托盘号快照', manifest_version int NOT NULL COMMENT '整托清单版本', manifest_package_count int NOT NULL COMMENT '整托总箱数', manifest_fragment_count int NOT NULL COMMENT '整托客户分片总数', - manifest_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '整托完整清单摘要', + manifest_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '整托完整清单摘要', inventory_position_id bigint DEFAULT NULL COMMENT '库存仓位记录ID', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_INBOUND' COMMENT '业务状态', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_INBOUND' COMMENT '业务状态', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -734,15 +734,15 @@ CREATE TABLE ll_dropship_order_profile ( UNIQUE KEY uk_ll_dropship_profile_key (customer_id,idempotency_key), KEY idx_ll_dropship_profile_order (customer_id,order_id), KEY idx_ll_dropship_profile_manifest (source_pallet_no,manifest_hash) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发托盘档案'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发托盘档案'; CREATE TABLE ll_dropship_sku_inventory ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint NOT NULL COMMENT '订单ID', profile_id bigint NOT NULL COMMENT '托盘档案ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品名称', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称', package_count bigint NOT NULL COMMENT '箱数', product_quantity bigint NOT NULL COMMENT '产品数量', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -750,88 +750,88 @@ CREATE TABLE ll_dropship_sku_inventory ( PRIMARY KEY (id), UNIQUE KEY uk_ll_dropship_sku_inventory (profile_id,sku_code), KEY idx_ll_dropship_sku_order (customer_id,order_id,sku_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发SKU库存汇总'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发SKU库存汇总'; CREATE TABLE ll_event_conflict ( id bigint NOT NULL COMMENT '冲突记录主键', - event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '冲突事件 ID', + event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突事件 ID', customer_id bigint NOT NULL COMMENT '租户 ID', - conflict_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '冲突类型', - conflict_message varchar(512) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '冲突说明', + conflict_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突类型', + conflict_message varchar(512) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '冲突说明', created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_conflict_event (event_id,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='事件冲突记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='事件冲突记录'; CREATE TABLE ll_event_inbox ( id bigint NOT NULL COMMENT '事件接收记录主键', - event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件全局唯一 ID', + event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局唯一 ID', customer_id bigint NOT NULL COMMENT '租户 ID', - event_type varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件类型', - aggregate_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '聚合类型', - aggregate_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '聚合 ID', + event_type varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', + aggregate_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + aggregate_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合 ID', aggregate_version bigint NOT NULL COMMENT '聚合版本', - payload_hash varchar(71) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '负载摘要', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '消费状态', - error_message varchar(512) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '错误信息', + payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '负载摘要', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '消费状态', + error_message varchar(512) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '错误信息', created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_inbox_event (event_id), KEY idx_ll_inbox_source (customer_id,aggregate_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='通用事件接收幂等箱'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='通用事件接收幂等箱'; CREATE TABLE ll_event_outbox ( id bigint NOT NULL COMMENT '事件主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - aggregate_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '聚合类型', - aggregate_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '聚合标识', - event_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件类型', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + aggregate_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合类型', + aggregate_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '聚合标识', + event_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', event_version int NOT NULL COMMENT '事件版本', - event_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - payload_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件载荷JSON', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '发布状态', + event_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + payload_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件载荷JSON', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '发布状态', retry_count int NOT NULL DEFAULT '0' COMMENT '重试次数', next_retry_at datetime(3) DEFAULT NULL COMMENT '下次重试时间', published_at datetime(3) DEFAULT NULL COMMENT '发布时间', locked_at datetime(3) DEFAULT NULL COMMENT '投递租约获取时间', - locked_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '投递租约持有者', - last_error varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最后一次发布错误', + locked_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '投递租约持有者', + last_error varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后一次发布错误', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_event_outbox_key (event_key), KEY idx_ll_event_outbox_publish (status,next_retry_at,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程跨区业务事件发件箱'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程跨区业务事件发件箱'; CREATE TABLE ll_exception_order ( id bigint NOT NULL COMMENT '异常订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - exception_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '异常订单号', - exception_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '异常类型', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '异常处理状态', - reason varchar(1000) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '异常原因', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + exception_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常订单号', + exception_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常类型', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '异常处理状态', + reason varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常原因', last_mile_order_id bigint DEFAULT NULL COMMENT '关联尾程订单ID', - last_mile_order_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联尾程订单号', + last_mile_order_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联尾程订单号', inbound_order_id bigint DEFAULT NULL COMMENT '关联入仓单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联入仓码', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联入仓码', delivery_order_id bigint DEFAULT NULL COMMENT '关联派送单ID', - delivery_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联派送单号', - outbound_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联出库单号', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户名称快照', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓ID快照', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓名称快照', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '异常货物SKU', + delivery_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联派送单号', + outbound_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联出库单号', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓ID快照', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常货物SKU', package_count int DEFAULT NULL COMMENT '异常箱数', - return_direction varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '退回方向', - return_logistics_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '退回物流单号', - handling_action varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '异常处理措施', - handling_result varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '异常处理结果', + return_direction varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '退回方向', + return_logistics_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '退回物流单号', + handling_action varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常处理措施', + handling_result varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常处理结果', evidence_file_ids_json json DEFAULT NULL COMMENT '异常处理证据文件ID列表', inventory_adjustment_id bigint DEFAULT NULL COMMENT '退回库存恢复操作ID', - handler_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '处理人ID', - handler_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '处理人名称', - source_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'MANUAL' COMMENT '异常来源类型', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + handler_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '处理人ID', + handler_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '处理人名称', + source_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'MANUAL' COMMENT '异常来源类型', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', exception_at datetime(3) NOT NULL COMMENT '异常发生时间', completed_at datetime(3) DEFAULT NULL COMMENT '异常处理完成时间', version bigint NOT NULL DEFAULT '0' COMMENT '异常订单乐观锁版本', @@ -845,32 +845,32 @@ CREATE TABLE ll_exception_order ( KEY idx_ll_exception_list (customer_id,status,exception_at), KEY idx_ll_exception_tail (customer_id,last_mile_order_no), KEY idx_ll_exception_inbound (customer_id,inbound_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外仓异常订单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外仓异常订单'; CREATE TABLE ll_exception_order_command ( id bigint NOT NULL COMMENT '异常处理命令ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', exception_order_id bigint NOT NULL COMMENT '异常订单ID', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '异常处理动作', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '幂等键', - request_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容SHA256哈希', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '异常处理动作', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '幂等键', + request_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA256哈希', result_json json NOT NULL COMMENT '命令结果快照', created_at datetime(3) NOT NULL COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_exception_command_key (customer_id,action,idempotency_key), KEY idx_ll_exception_command_order (customer_id,exception_order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='异常处理命令幂等审计'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='异常处理命令幂等审计'; CREATE TABLE ll_exception_return_item ( id bigint NOT NULL COMMENT '异常退回明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', exception_order_id bigint NOT NULL COMMENT '异常订单ID', outbound_pallet_item_id bigint NOT NULL COMMENT '原出库托盘明细ID', inventory_position_id bigint DEFAULT NULL COMMENT '普通原出库库存位置;与退货原箱互斥', return_carton_id bigint DEFAULT NULL COMMENT '原生退货箱标识;与普通库存位置互斥', - return_carton_mark varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原生退货箱业务箱码快照', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原出库托盘码快照', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原出库SKU快照', + return_carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原生退货箱业务箱码快照', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原出库托盘码快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原出库SKU快照', max_return_packages bigint NOT NULL COMMENT '原出库可退箱数上限', approved_return_packages bigint NOT NULL COMMENT '批准退回箱数', created_at datetime(3) NOT NULL COMMENT '创建时间', @@ -882,28 +882,28 @@ CREATE TABLE ll_exception_return_item ( PRIMARY KEY (id), UNIQUE KEY uk_ll_exception_return_source (customer_id,exception_order_id,outbound_pallet_item_id,inventory_position_id), KEY idx_ll_exception_return_order (customer_id,exception_order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='异常退回原出库库存冻结明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='异常退回原出库库存冻结明细'; CREATE TABLE ll_return_carton_stock_receipt ( id BIGINT NOT NULL COMMENT '原箱回仓凭据明细标识', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原箱回仓实收业务号', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱回仓实收业务号', exception_order_id BIGINT NOT NULL COMMENT '本次异常退回订单', exception_return_item_id BIGINT NOT NULL COMMENT '本次冻结的原箱来源明细', delivery_order_id BIGINT NOT NULL COMMENT '原运输派送单', source_pick_id BIGINT NOT NULL COMMENT '原箱实际出库拣货凭据', - source_outbound_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原出库单业务号', + source_outbound_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库单业务号', source_dispatch_item_id BIGINT NOT NULL COMMENT '原排车货物明细', source_outbound_pallet_item_id BIGINT NOT NULL COMMENT '原出库托盘明细', return_carton_id BIGINT NOT NULL COMMENT '真实退货原箱标识', - carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原箱业务箱码快照', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际回仓海外仓标识', + carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱业务箱码快照', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际回仓海外仓标识', target_pallet_id BIGINT NOT NULL COMMENT '实际回仓目标实物托盘', - target_pallet_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际目标托盘业务码', + target_pallet_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标托盘业务码', target_location_id BIGINT NOT NULL COMMENT '实际回仓目标库位', - target_location_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际目标库位业务码', - sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原出库快照中的商品编码', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '原出库快照中的中文品名', + target_location_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标库位业务码', + sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库快照中的商品编码', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '原出库快照中的中文品名', quantity BIGINT NOT NULL COMMENT '本次原SKU实际恢复件数', packages BIGINT NOT NULL COMMENT '本箱仅首条SKU记录计一箱其余为零', evidence_file_ids_json JSON NOT NULL COMMENT '本次实收证据文件引用', @@ -914,74 +914,74 @@ CREATE TABLE ll_return_carton_stock_receipt ( KEY idx_return_carton_receipt_exception(customer_id,exception_order_id,received_at), KEY idx_return_carton_receipt_delivery(customer_id,delivery_order_id), CONSTRAINT chk_return_carton_receipt_quantity CHECK(quantity>0 AND packages IN (0,1)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='原生退货箱按原出库SKU实际回仓的不可变凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='原生退货箱按原出库SKU实际回仓的不可变凭据'; CREATE TABLE ll_finance_fee_command ( id bigint NOT NULL COMMENT '幂等命令ID', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人ID', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用写操作动作:CREATE、SUBMIT、REVIEW、ADJUST、VOID或资金重试', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容SHA-256', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用写操作动作:CREATE、SUBMIT、REVIEW、ADJUST、VOID或资金重试', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA-256', source_fee_id bigint NOT NULL COMMENT '稳定费用来源ID', source_version int NOT NULL COMMENT '命令结果版本', created_at datetime(3) NOT NULL COMMENT '命令创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_finance_fee_command (operator_id,action,idempotency_key), KEY idx_ll_finance_fee_command_source (source_fee_id,source_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外费用来源写操作幂等审计'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外费用来源写操作幂等审计'; CREATE TABLE ll_finance_fee_source ( id bigint NOT NULL COMMENT '费用版本记录ID', source_fee_id bigint NOT NULL COMMENT '跨版本稳定费用来源ID', source_version int NOT NULL COMMENT '费用来源版本,从1递增', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - customer_name varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户名称快照', - source_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外费用来源类型', - source_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源业务编号或入仓码快照', - business_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源业务类型', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + customer_name varchar(200) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + source_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外费用来源类型', + source_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务编号或入仓码快照', + business_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务类型', business_id bigint DEFAULT NULL COMMENT '来源业务记录ID', - business_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源业务编号', + business_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源业务编号', order_id bigint DEFAULT NULL COMMENT '关联订单ID', inbound_id bigint DEFAULT NULL COMMENT '关联海外入仓计划或入仓记录ID', - inbound_code varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联入仓码;并非所有费用必填', + inbound_code varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联入仓码;并非所有费用必填', container_id bigint DEFAULT NULL COMMENT '关联柜次ID', container_booking_id bigint DEFAULT NULL COMMENT '来源订舱柜ID', - container_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '真实集装箱号快照', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实集装箱号快照', warehouse_id bigint DEFAULT NULL COMMENT '关联海外仓ID', - fee_item_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用项目编码快照', - fee_item_name varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用项目名称快照', - fee_remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '费用说明,补收或重复作业原因', - direction varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'RECEIVABLE应收或PAYABLE应付', + fee_item_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目编码快照', + fee_item_name varchar(200) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目名称快照', + fee_remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '费用说明,补收或重复作业原因', + direction varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIVABLE应收或PAYABLE应付', supplier_id bigint DEFAULT NULL COMMENT '应付供应商ID', - supplier_name varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '应付供应商名称快照', - supplier_category varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '应付供应商类别约束', - settlement_mode varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'ON_ACCOUNT账期应付或DIRECT_PAID业务已付', + supplier_name varchar(200) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '应付供应商名称快照', + supplier_category varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '应付供应商类别约束', + settlement_mode varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'ON_ACCOUNT账期应付或DIRECT_PAID业务已付', paid_at datetime(3) DEFAULT NULL COMMENT '直接已付时间', - payment_method varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '直接已付方式', - payment_reference_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '直接已付流水号', + payment_method varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '直接已付方式', + payment_reference_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '直接已付流水号', wallet_settlement json DEFAULT NULL COMMENT '已实扣应收的Finance资金命令、冻结和消费流水引用', payment_voucher_file_ids json DEFAULT NULL COMMENT '直接已付凭证文件ID快照', business_date date NOT NULL COMMENT '费用业务日期', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'CNY' COMMENT '财务结算币种,固定CNY', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '财务结算币种,固定CNY', amount decimal(20,6) NOT NULL COMMENT '人民币结算金额', - original_currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务原币种,支持CNY或USD', + original_currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务原币种,支持CNY或USD', original_amount decimal(20,6) NOT NULL COMMENT '业务原币金额', exchange_rate decimal(20,6) DEFAULT NULL COMMENT '原币折算人民币汇率,人民币固定为1,自动零元仓租可空', - exchange_rate_month char(7) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '汇率月份yyyy-MM', + exchange_rate_month char(7) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '汇率月份yyyy-MM', chargeable_quantity decimal(20,6) DEFAULT NULL COMMENT '计费数量,如箱数、托数、体积或天数', - quantity_unit varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '计费数量单位', + quantity_unit varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '计费数量单位', unit_price decimal(20,6) DEFAULT NULL COMMENT '原币计费单价', period_start date DEFAULT NULL COMMENT '仓租等期间费用开始日期', period_end date DEFAULT NULL COMMENT '仓租等期间费用结束日期', - review_status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'DRAFT、PENDING、APPROVED或REJECTED', - publication_status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'UNPUBLISHED或PUBLISHED', - source_status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'ACTIVE、SUPERSEDED或VOIDED', - review_reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核或作废原因', - reviewer_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人ID', - reviewer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人名称快照', + review_status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'DRAFT、PENDING、APPROVED或REJECTED', + publication_status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'UNPUBLISHED或PUBLISHED', + source_status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'ACTIVE、SUPERSEDED或VOIDED', + review_reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核或作废原因', + reviewer_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', + reviewer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人名称快照', reviewed_at datetime(3) DEFAULT NULL COMMENT '审核时间', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人ID', - updated_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '最后更新人ID', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人ID', + updated_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最后更新人ID', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '最后更新时间', PRIMARY KEY (id), @@ -998,7 +998,7 @@ CREATE TABLE ll_finance_fee_source ( CONSTRAINT chk_ll_finance_fee_publication CHECK ((publication_status in (_utf8mb4'UNPUBLISHED',_utf8mb4'PUBLISHED'))), CONSTRAINT chk_ll_finance_fee_review CHECK ((review_status in (_utf8mb4'DRAFT',_utf8mb4'PENDING',_utf8mb4'APPROVED',_utf8mb4'REJECTED'))), CONSTRAINT chk_ll_finance_fee_status CHECK ((source_status in (_utf8mb4'ACTIVE',_utf8mb4'SUPERSEDED',_utf8mb4'VOIDED'))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外业务不可变费用来源版本;发布后经跨区事件进入Finance'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外业务不可变费用来源版本;发布后经跨区事件进入Finance'; -- V13 receiving coverage and pending changes; baseline only, no test data migration. CREATE TABLE ll_fba_receiving_agreement ( @@ -1010,7 +1010,7 @@ CREATE TABLE ll_fba_receiving_agreement ( snapshot_json LONGTEXT NOT NULL COMMENT '客户逐来源覆盖、确认时区及仓库依据快照', PRIMARY KEY (agreement_key), UNIQUE KEY uk_fba_receiving_confirmation (destination_key, confirmation_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='独立于送货批次的收货预约'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='独立于送货批次的收货预约'; CREATE TABLE ll_fba_receiving_member ( agreement_key VARCHAR(64) NOT NULL COMMENT '所属收货预约业务键', @@ -1020,7 +1020,7 @@ CREATE TABLE ll_fba_receiving_member ( PRIMARY KEY (agreement_key,batch_key,customer_id), UNIQUE KEY uk_fba_receiving_active_member (active_ref), KEY idx_fba_receiving_batch (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约当前覆盖关联及退出历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约当前覆盖关联及退出历史'; CREATE TABLE ll_fba_receiving_change ( change_key VARCHAR(64) NOT NULL COMMENT '客户预约变化业务键', @@ -1034,21 +1034,21 @@ CREATE TABLE ll_fba_receiving_change ( PRIMARY KEY (change_key), UNIQUE KEY uk_fba_receiving_pending (active_ref), KEY idx_fba_receiving_pending_batch (batch_key,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保留原安排且阻止误发车的客户变化'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='保留原安排且阻止误发车的客户变化'; CREATE TABLE ll_fba_receiving_revision ( agreement_key VARCHAR(64) NOT NULL COMMENT '收货预约业务键', version INT NOT NULL COMMENT '不可变覆盖与确认版本', snapshot_json LONGTEXT NOT NULL COMMENT '该版本完整客户覆盖、确认时段及回复依据', PRIMARY KEY (agreement_key,version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约覆盖与确认不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约覆盖与确认不可变历史'; CREATE TABLE ll_fba_receiving_plan ( batch_key VARCHAR(128) NOT NULL COMMENT '稳定送货批次键', customer_id VARCHAR(128) NOT NULL COMMENT '计划所属客户标识', snapshot_json LONGTEXT NOT NULL COMMENT '本客户未确认计划、目标窗口及业务时区,不含有效预约确认', PRIMARY KEY (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='按批次及客户保存的未确认收货计划'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='按批次及客户保存的未确认收货计划'; CREATE TABLE ll_inbound_fba_appointment ( @@ -1079,7 +1079,7 @@ CREATE TABLE ll_inbound_fba_appointment ( UNIQUE KEY uk_ll_fba_appointment_no (appointment_no), KEY idx_ll_fba_appointment_list (appointment_at,appointment_status,fba_warehouse_code), KEY idx_ll_fba_appointment_planned (planned_at,appointment_status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='FBA预约安排与正式确认唯一主记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='FBA预约安排与正式确认唯一主记录'; CREATE TABLE ll_inbound_fba_appointment_item ( id BIGINT NOT NULL COMMENT '记录主键', @@ -1101,7 +1101,7 @@ CREATE TABLE ll_inbound_fba_appointment_item ( KEY idx_ll_fba_active_order (customer_id,order_id,active), KEY idx_ll_fba_item_source_lookup (source_key,customer_id), KEY idx_ll_fba_item_customer_order (customer_id,order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓前后共用的预约真实货源'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓前后共用的预约真实货源'; CREATE TABLE ll_appointment_cargo_verification ( id BIGINT NOT NULL COMMENT '核实记录主键', @@ -1124,7 +1124,7 @@ CREATE TABLE ll_appointment_cargo_verification ( UNIQUE KEY uk_ll_cargo_verification_command (customer_id,source_key,command_key), CONSTRAINT chk_ll_cargo_verification_quantity CHECK (package_count IS NULL OR package_count > 0), CONSTRAINT chk_ll_cargo_verification_version CHECK (version > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; CREATE TABLE ll_fba_appointment_command ( command_key VARCHAR(128) NOT NULL COMMENT '持久化幂等键', @@ -1136,48 +1136,48 @@ CREATE TABLE ll_fba_appointment_command ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建UTC时间', PRIMARY KEY(command_key), KEY idx_ll_fba_command_appointment(appointment_no,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约命令与变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约命令与变更历史'; CREATE TABLE ll_inbound_order ( id bigint NOT NULL COMMENT '入仓单主键', customer_id bigint NOT NULL COMMENT '租户 ID', - source_region varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源区域', - source_inbound_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源入仓分片 ID', - root_inbound_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '根入仓单 ID', - source_order_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源订单 ID', - source_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源订单号', - root_order_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '根订单 ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓码', - lx_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓 ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称', - destination_type varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + source_region varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域', + source_inbound_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓分片 ID', + root_inbound_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根入仓单 ID', + source_order_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单 ID', + source_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单号', + root_order_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根订单 ID', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓码', + lx_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓 ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + destination_type varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', package_count int NOT NULL DEFAULT '0' COMMENT '箱数', product_quantity int DEFAULT NULL COMMENT '数量', pallet_count int DEFAULT NULL COMMENT '托数', gross_weight_kg decimal(18,3) DEFAULT NULL COMMENT '毛重(千克)', net_weight_kg decimal(18,3) DEFAULT NULL COMMENT '净重(千克)', volume_cbm decimal(18,6) DEFAULT NULL COMMENT '体积(立方米)', - source_event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源事件 ID', - source_loading_plan_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '装柜计划 ID', + source_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件 ID', + source_loading_plan_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '装柜计划 ID', source_loading_plan_version bigint NOT NULL COMMENT '装柜计划版本', handover_version bigint NOT NULL COMMENT '交接版本', - payload_hash varchar(71) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '负载摘要', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单状态', - exception_flag varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'NONE' COMMENT '异常标记', + payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '负载摘要', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单状态', + exception_flag varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'NONE' COMMENT '异常标记', created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', updated_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_order_source (customer_id,source_region,source_inbound_id), UNIQUE KEY uk_ll_order_event (source_event_id,source_inbound_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入仓单快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入仓单快照'; CREATE TABLE ll_inbound_order_item ( id bigint NOT NULL COMMENT '入仓明细主键', customer_id bigint NOT NULL COMMENT '租户ID', order_id bigint NOT NULL COMMENT '入仓单ID', - source_inbound_detail_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源入仓明细ID', + source_inbound_detail_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓明细ID', package_count int NOT NULL COMMENT '箱数', product_quantity int DEFAULT NULL COMMENT '数量', pallet_count int DEFAULT NULL COMMENT '托数', @@ -1185,25 +1185,25 @@ CREATE TABLE ll_inbound_order_item ( net_weight_kg decimal(18,3) DEFAULT NULL COMMENT '净重(千克)', dimensional_weight_kg decimal(18,3) DEFAULT NULL COMMENT '体积重量(千克)', volume_cbm decimal(18,6) DEFAULT NULL COMMENT '体积(立方米)', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称', - fba_tracking_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA跟踪号', - shipment_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '货件编号', - shipping_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '唛头', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU编码', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名', - product_name_en varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '英文品名', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + fba_tracking_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA跟踪号', + shipment_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号', + shipping_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '唛头', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + product_name_en varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名', created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_item_order (customer_id,order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入仓商品明细快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入仓商品明细快照'; CREATE TABLE ll_inbound_pallet_merge ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', task_id bigint NOT NULL COMMENT 'PDA任务ID', - merge_group_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '合托分组号', + merge_group_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '合托分组号', source_pallet_id bigint NOT NULL COMMENT '来源托盘ID', target_pallet_id bigint NOT NULL COMMENT '目标托盘ID', source_allocation_id bigint NOT NULL COMMENT '来源分配记录ID', @@ -1215,38 +1215,38 @@ CREATE TABLE ll_inbound_pallet_merge ( moved_package_count int NOT NULL COMMENT '移动箱数', moved_volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '移动体积(立方米)', source_pallet_scrapped tinyint NOT NULL DEFAULT '0' COMMENT '来源托盘是否已报废', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务状态', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务状态', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_inbound_merge_task (customer_id,task_id), KEY idx_ll_inbound_merge_group (merge_group_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓托盘合托记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓托盘合托记录'; CREATE TABLE ll_inbound_pda_operation ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', task_id bigint NOT NULL COMMENT 'PDA任务ID', allocation_id bigint DEFAULT NULL COMMENT '分配记录ID', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作动作', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - request_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容JSON', - result_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '处理结果JSON', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作动作', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + request_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容JSON', + result_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理结果JSON', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_inbound_pda_operation_key (customer_id,idempotency_key), KEY idx_ll_inbound_pda_operation_task (task_id), KEY idx_ll_inbound_pda_operation_allocation (allocation_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓PDA操作幂等记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓PDA操作幂等记录'; CREATE TABLE ll_inbound_pda_task ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', plan_id bigint NOT NULL COMMENT '入仓计划ID', - task_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA任务号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '业务状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - operator_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人姓名', + task_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA任务号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '业务状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + operator_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人姓名', pushed_at datetime(3) DEFAULT NULL COMMENT '任务下发时间', started_at datetime(3) DEFAULT NULL COMMENT '开始时间', completed_at datetime(3) DEFAULT NULL COMMENT '完成时间', @@ -1259,23 +1259,23 @@ CREATE TABLE ll_inbound_pda_task ( PRIMARY KEY (id), UNIQUE KEY uk_ll_inbound_pda_task_plan (customer_id,plan_id), UNIQUE KEY uk_ll_inbound_pda_task_no (task_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓PDA作业任务'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓PDA作业任务'; CREATE TABLE ll_inbound_plan ( id bigint NOT NULL COMMENT '入库计划ID(雪花ID)', - plan_no varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入库单号', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户/客户账号标识', + plan_no varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入库单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', source_order_id bigint NOT NULL COMMENT '来源尾程订单ID,一张入仓单对应一张入库计划', - container_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '集装箱号', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', overseas_warehouse_id bigint DEFAULT NULL COMMENT '从尾程订单继承的平台预分配海外接柜仓ID', planned_arrival_date date DEFAULT NULL COMMENT '人工计划预计到仓日期', - pallet_type varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '人工计划托盘类型', + pallet_type varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '人工计划托盘类型', assigned_flag tinyint NOT NULL DEFAULT '0' COMMENT '人工计划是否已分配:0否1是', merge_required tinyint NOT NULL DEFAULT '0' COMMENT '人工计划是否要求合托:0否1是', urgent_flag tinyint NOT NULL DEFAULT '0' COMMENT '人工计划是否加急:0否1是', - creation_mode varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'AUTO' COMMENT '计划生成方式:AUTO柜级自动、MANUAL单票人工、WAREHOUSE_TRANSFER仓储转运', - plan_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓计划备注', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '入库计划状态:PENDING_ASSIGNMENT待分配及后续正式状态', + creation_mode varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'AUTO' COMMENT '计划生成方式:AUTO柜级自动、MANUAL单票人工、WAREHOUSE_TRANSFER仓储转运', + plan_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓计划备注', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '入库计划状态:PENDING_ASSIGNMENT待分配及后续正式状态', line_count int NOT NULL DEFAULT '0' COMMENT '入仓码明细数量', pallet_count int NOT NULL DEFAULT '0' COMMENT '系统自动分配托盘数量', total_volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '集装箱总体积(立方米)', @@ -1286,25 +1286,25 @@ CREATE TABLE ll_inbound_plan ( UNIQUE KEY uk_ll_inbound_plan_no (plan_no), UNIQUE KEY uk_ll_inbound_plan_source_order (customer_id,source_order_id), KEY idx_ll_inbound_plan_container (customer_id,container_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入库计划表:每张来源入仓单生成一张入库计划,同柜计划共享集装箱号'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入库计划表:每张来源入仓单生成一张入库计划,同柜计划共享集装箱号'; CREATE TABLE ll_inbound_plan_carton ( id bigint NOT NULL COMMENT '箱唛作业主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', order_id bigint DEFAULT NULL COMMENT '生成尾程订单时绑定的尾程订单ID', - source_inbound_detail_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源入库明细ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU编码快照', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国内冻结箱唛', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID快照', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', + source_inbound_detail_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入库明细ID', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码快照', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内冻结箱唛', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', plan_id bigint DEFAULT NULL COMMENT '海外入库计划ID', line_id bigint DEFAULT NULL COMMENT '入库计划明细ID', plan_pallet_id bigint DEFAULT NULL COMMENT '海外计划托盘ID', warehouse_pallet_id bigint DEFAULT NULL COMMENT '海外实物托盘ID', warehouse_location_id bigint DEFAULT NULL COMMENT '海外库位ID', pda_task_id bigint DEFAULT NULL COMMENT '首次扫码PDA任务ID', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '箱唛状态:未绑定UNASSIGNED、已绑托ON_PALLET、整票收货BULK_RECEIVED、可用AVAILABLE、待废弃DISCARD_PENDING、已废弃DISCARDED', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '箱唛状态:未绑定UNASSIGNED、已绑托ON_PALLET、整票收货BULK_RECEIVED、可用AVAILABLE、待废弃DISCARD_PENDING、已废弃DISCARDED', version int NOT NULL DEFAULT '0' COMMENT '乐观锁版本', bound_at datetime(3) DEFAULT NULL COMMENT '绑定托盘时间', received_at datetime(3) DEFAULT NULL COMMENT '完成入库时间', @@ -1314,23 +1314,23 @@ CREATE TABLE ll_inbound_plan_carton ( KEY idx_ll_inbound_carton_plan (plan_id,status), KEY idx_ll_inbound_carton_pallet (plan_pallet_id,status), KEY idx_ll_inbound_carton_order (order_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜次冻结箱唛及海外入库箱级作业账'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜次冻结箱唛及海外入库箱级作业账'; CREATE TABLE ll_inbound_plan_line ( id bigint NOT NULL COMMENT '入库计划明细ID(雪花ID)', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户账号标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', plan_id bigint NOT NULL COMMENT '入库计划ID', order_id bigint NOT NULL COMMENT '尾程订单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '头程入仓码快照', - fba_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA仓库编码', - destination_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'OVERSEAS' COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID快照', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', - delivery_address varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓目的地址快照', - postal_code varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓邮编快照', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系人快照', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系电话快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '头程入仓码快照', + fba_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA仓库编码', + destination_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'OVERSEAS' COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + delivery_address varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓目的地址快照', + postal_code varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编快照', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人快照', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话快照', volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '入仓码体积(立方米)', planned_pallet_count int NOT NULL DEFAULT '0' COMMENT '该明细分配的托盘数量', required_package_count int NOT NULL DEFAULT '0' COMMENT '计划明细应收箱数', @@ -1338,23 +1338,23 @@ CREATE TABLE ll_inbound_plan_line ( UNIQUE KEY uk_ll_inbound_line_order (plan_id,order_id), KEY idx_ll_inbound_line_plan (plan_id), KEY idx_ll_inbound_line_customer_plan (customer_id,plan_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入库计划明细表:按入仓码和尾程订单维度记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入库计划明细表:按入仓码和尾程订单维度记录'; CREATE TABLE ll_inbound_plan_pallet ( id bigint NOT NULL COMMENT '计划托盘ID(雪花ID)', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户账号标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', plan_id bigint NOT NULL COMMENT '入库计划ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'Warehouse权威实物托盘码', - source_pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', - pallet_type varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '人工计划托盘类型', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID快照', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', - destination_type varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', - delivery_address varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓目的地址快照', - postal_code varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓邮编快照', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系人快照', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系电话快照', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Warehouse权威实物托盘码', + source_pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', + pallet_type varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '人工计划托盘类型', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + destination_type varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', + delivery_address varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓目的地址快照', + postal_code varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编快照', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人快照', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话快照', capacity_cbm decimal(18,4) NOT NULL DEFAULT '2.0000' COMMENT '托盘容量,固定为2立方米', allocated_volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '已分配体积(立方米)', sequence_no int NOT NULL COMMENT '计划内托盘序号', @@ -1362,7 +1362,7 @@ CREATE TABLE ll_inbound_plan_pallet ( warehouse_pallet_id bigint DEFAULT NULL COMMENT '海外仓实物托盘ID', warehouse_location_id bigint DEFAULT NULL COMMENT '海外仓库位ID', warehouse_resource_lock_id bigint DEFAULT NULL COMMENT '海外仓资源锁ID', - assignment_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'UNASSIGNED' COMMENT '托盘分配状态:UNASSIGNED未分配及后续正式状态', + assignment_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'UNASSIGNED' COMMENT '托盘分配状态:UNASSIGNED未分配及后续正式状态', locked_at datetime(3) DEFAULT NULL COMMENT '资源锁定时间', actual_volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '实收体积(立方米)', actual_package_count int NOT NULL DEFAULT '0' COMMENT '实收箱数', @@ -1371,11 +1371,11 @@ CREATE TABLE ll_inbound_plan_pallet ( KEY idx_ll_inbound_pallet_no (pallet_no), KEY idx_ll_inbound_pallet_plan (plan_id), KEY idx_ll_inbound_pallet_customer_plan (customer_id,plan_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入库计划托盘表:按目的仓隔离合托'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入库计划托盘表:按目的仓隔离合托'; CREATE TABLE ll_inbound_plan_pallet_allocation ( id bigint NOT NULL COMMENT '托盘分配记录ID(雪花ID)', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户账号标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', plan_id bigint NOT NULL COMMENT '入库计划ID', line_id bigint NOT NULL COMMENT '入库计划明细ID', pallet_id bigint NOT NULL COMMENT '计划托盘ID', @@ -1384,61 +1384,61 @@ CREATE TABLE ll_inbound_plan_pallet_allocation ( counted_package_count int NOT NULL DEFAULT '0' COMMENT '清点箱数', picked_package_count int NOT NULL DEFAULT '0' COMMENT '已拣箱数', actual_volume_cbm decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '实收体积(立方米)', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_COUNT' COMMENT '分配作业状态:PENDING_COUNT待清点及后续正式状态', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_COUNT' COMMENT '分配作业状态:PENDING_COUNT待清点及后续正式状态', version int NOT NULL DEFAULT '0' COMMENT '托盘分配乐观锁版本', PRIMARY KEY (id), UNIQUE KEY uk_ll_inbound_allocation (line_id,pallet_id), KEY idx_ll_inbound_allocation_plan (plan_id), KEY idx_ll_inbound_allocation_customer_plan (customer_id,plan_id), KEY idx_ll_inbound_allocation_pallet (pallet_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程入库计划托盘分配表:记录入仓码明细与计划托盘的分配关系'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程入库计划托盘分配表:记录入仓码明细与计划托盘的分配关系'; CREATE TABLE ll_inbound_stock_receipt ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', plan_id bigint NOT NULL COMMENT '入仓计划ID', task_id bigint NOT NULL COMMENT 'PDA任务ID', allocation_id bigint NOT NULL COMMENT '分配记录ID', line_id bigint NOT NULL COMMENT '入仓计划明细ID', order_id bigint NOT NULL COMMENT '订单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号快照', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码快照', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名快照', - product_name_en varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '英文品名快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码快照', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + product_name_en varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名快照', warehouse_pallet_id bigint NOT NULL COMMENT '仓库实物托盘ID', - pallet_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓实物托盘码', - source_pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', + pallet_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓实物托盘码', + source_pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发不可变来源托盘号快照', warehouse_location_id bigint DEFAULT NULL COMMENT '仓库库位ID', - warehouse_location_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '仓库库位编码', - batch_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存批次号', + warehouse_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '仓库库位编码', + batch_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存批次号', received_packages bigint NOT NULL COMMENT '实收箱数', inventory_balance_id bigint NOT NULL COMMENT '库存余额记录ID', inventory_position_id bigint NOT NULL COMMENT '库存仓位记录ID', - inventory_operation_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存操作幂等键', + inventory_operation_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存操作幂等键', received_at datetime(3) NOT NULL COMMENT '实收时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_stock_receipt_task_allocation_sku (customer_id,task_id,allocation_id,sku_code), KEY idx_ll_stock_receipt_plan (customer_id,plan_id,line_id), KEY idx_ll_stock_receipt_inventory (inventory_balance_id,inventory_position_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓PDA库存实收快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓PDA库存实收快照'; CREATE TABLE ll_inventory_balance ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户名称不可变快照', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - overseas_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓编码快照', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓名称快照', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户名称不可变快照', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + overseas_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓编码快照', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓名称快照', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', inbound_order_id bigint NOT NULL COMMENT '入仓单ID', - inbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓单号快照', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号快照', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'UNSPECIFIED' COMMENT 'SKU快照;多SKU汇总时为MIXED,不参与当前库存唯一维度', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名快照', - product_name_en varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '英文品名快照', + inbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓单号快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'UNSPECIFIED' COMMENT 'SKU快照;多SKU汇总时为MIXED,不参与当前库存唯一维度', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名快照', + product_name_en varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名快照', available_packages bigint NOT NULL DEFAULT '0' COMMENT '可用箱数', hold_packages bigint NOT NULL DEFAULT '0' COMMENT '冻结箱数', allocated_packages bigint NOT NULL DEFAULT '0' COMMENT '已分配箱数', @@ -1454,39 +1454,39 @@ CREATE TABLE ll_inventory_balance ( KEY idx_ll_inventory_list (customer_id,overseas_warehouse_id,updated_at), KEY idx_ll_inventory_inbound (customer_id,inbound_code), KEY idx_ll_inventory_sku (customer_id,sku_code,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户入仓单与海外目的仓维度实时库存余额'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户入仓单与海外目的仓维度实时库存余额'; CREATE TABLE ll_inventory_ledger ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户名称不可变快照', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户名称不可变快照', balance_id bigint NOT NULL COMMENT '库存余额记录ID', position_id bigint DEFAULT NULL COMMENT '库存仓位记录ID', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', inbound_order_id bigint NOT NULL COMMENT '入仓单ID', pallet_id bigint DEFAULT NULL COMMENT '托盘ID', - pallet_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '托盘号', - batch_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '库存批次号', - warehouse_location_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '仓库库位编码', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU编码', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '箱唛', + pallet_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '托盘号', + batch_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '库存批次号', + warehouse_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '仓库库位编码', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛', carton_packages bigint DEFAULT NULL COMMENT '箱内箱数', - business_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务类型', + business_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务类型', business_order_id bigint DEFAULT NULL COMMENT '业务单据ID', - business_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '业务单号', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓单号快照', - inbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓单号快照', - outbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '出库单号', - source_event_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源事件ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - status_from varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作前状态', - status_to varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作后状态', + business_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '业务单号', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓单号快照', + inbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓单号快照', + outbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库单号', + source_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源事件ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + status_from varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作前状态', + status_to varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作后状态', before_packages bigint NOT NULL COMMENT '变动前箱数', delta_packages bigint NOT NULL COMMENT '箱数变动量', after_packages bigint NOT NULL COMMENT '变动后箱数', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', occurred_at datetime(3) NOT NULL COMMENT '业务发生时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), @@ -1494,41 +1494,41 @@ CREATE TABLE ll_inventory_ledger ( KEY idx_ll_inventory_ledger_query (customer_id,overseas_warehouse_id,occurred_at), KEY idx_ll_inventory_ledger_inbound (customer_id,inbound_code,occurred_at), KEY idx_ll_inventory_ledger_business (customer_id,business_type,business_order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='不可变库存变动流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='不可变库存变动流水'; CREATE TABLE ll_inventory_operation ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PROCESSING' COMMENT '库存命令处理状态', - result_json longtext COLLATE utf8mb4_unicode_ci COMMENT '处理结果JSON', - last_error varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最后错误信息', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PROCESSING' COMMENT '库存命令处理状态', + result_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '处理结果JSON', + last_error varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后错误信息', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_inventory_operation_key (customer_id,idempotency_key), KEY idx_ll_inventory_operation_status (customer_id,status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='库存命令幂等记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='库存命令幂等记录'; CREATE TABLE ll_inventory_position ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', balance_id bigint NOT NULL COMMENT '库存余额记录ID', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '目的仓编码快照', pallet_id bigint NOT NULL COMMENT '托盘ID', - pallet_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '托盘号', - batch_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '库存批次号', + pallet_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘号', + batch_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '库存批次号', warehouse_location_id bigint DEFAULT NULL COMMENT '仓库库位ID', - warehouse_location_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '仓库库位编码', + warehouse_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓库库位编码', available_packages bigint NOT NULL DEFAULT '0' COMMENT '可用箱数', hold_packages bigint NOT NULL DEFAULT '0' COMMENT '冻结箱数', allocated_packages bigint NOT NULL DEFAULT '0' COMMENT '已分配箱数', picked_packages bigint NOT NULL DEFAULT '0' COMMENT '已拣箱数', receiving_packages bigint NOT NULL DEFAULT '0' COMMENT '收货处理中箱数', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '业务状态', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '业务状态', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -1536,70 +1536,70 @@ CREATE TABLE ll_inventory_position ( UNIQUE KEY uk_ll_inventory_position (balance_id,pallet_id,batch_no), KEY idx_ll_inventory_position_pallet (customer_id,pallet_id), KEY idx_ll_inventory_position_location (customer_id,overseas_warehouse_id,warehouse_location_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='托盘库位批次库存明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='托盘库位批次库存明细'; CREATE TABLE ll_loading_event_inbox ( - event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件全局唯一标识', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户/客户账号标识', - event_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '事件类型', + event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件全局唯一标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', + event_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '事件类型', event_version int NOT NULL COMMENT '事件契约版本', - payload_hash varchar(71) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化事件负载 SHA-256 摘要', + payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化事件负载 SHA-256 摘要', payload_json json NOT NULL COMMENT '事件冻结负载 JSON', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'RECEIVED' COMMENT '消费状态:RECEIVED/PROCESSED', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RECEIVED' COMMENT '消费状态:RECEIVED/PROCESSED', received_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '接收时间', processed_at datetime(3) DEFAULT NULL COMMENT '处理完成时间', - last_error varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近一次处理错误', + last_error varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近一次处理错误', PRIMARY KEY (event_id), UNIQUE KEY uk_ll_loading_inbox_tenant_key (customer_id,event_type,event_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程装柜完成事件接收幂等箱'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程装柜完成事件接收幂等箱'; CREATE TABLE ll_loading_order_status_history ( id bigint NOT NULL AUTO_INCREMENT COMMENT '状态历史主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单 ID', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - event_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '触发事件 ID', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '状态变更备注', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + event_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '触发事件 ID', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '状态变更备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '记录时间', PRIMARY KEY (id), KEY idx_ll_loading_history_customer_order (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单状态变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单状态变更历史'; CREATE TABLE ll_local_looseboard_history ( id bigint NOT NULL COMMENT '主键ID', order_id bigint NOT NULL COMMENT '本土散板订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型:CREATE、UPDATE或STATUS', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作幂等键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型:CREATE、UPDATE或STATUS', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', change_detail json DEFAULT NULL COMMENT '字段变更前后值JSON', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作备注', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_local_looseboard_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土散板操作流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土散板操作流水'; CREATE TABLE ll_local_looseboard_operation ( id bigint NOT NULL COMMENT '操作记录ID', order_id bigint NOT NULL COMMENT '本土散板订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作请求内容哈希', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作请求内容哈希', result_version bigint NOT NULL COMMENT '操作完成后的订单版本', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_local_looseboard_operation_key (customer_id,order_id,idempotency_key), KEY idx_ll_local_looseboard_operation_order (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土散板订单幂等操作账'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土散板订单幂等操作账'; CREATE TABLE ll_local_looseboard_order ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', lastleg_order_id bigint DEFAULT NULL COMMENT '关联尾程主订单ID', delivery_mode VARCHAR(32) NULL COMMENT '入仓方式:送货到仓或仓库上门取货', operating_warehouse_id VARCHAR(128) NULL COMMENT '实际收货海外仓ID', @@ -1610,27 +1610,27 @@ CREATE TABLE ll_local_looseboard_order ( estimated_arrival_at DATETIME(3) NULL COMMENT '预计到仓时间', tracking_no VARCHAR(255) NULL COMMENT '物流跟踪号', transfer_no VARCHAR(64) NULL COMMENT '关联的仓储转运收货单号', - order_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本土散板订单号', - pallet_required varchar(8) COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '是否需要打盘:YES或NO;拼车来源未提供时为空', + order_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本土散板订单号', + pallet_required varchar(8) COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '是否需要打盘:YES或NO;拼车来源未提供时为空', transport_type VARCHAR(32) NULL DEFAULT NULL COMMENT '接单运输安排;下单不预设', - origin varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '起运地', - origin_address varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '起运详细地址', - destination varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '目的地', - destination_address varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的详细地址、码头或仓号', + origin varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起运地', + origin_address varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运详细地址', + destination varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的地', + destination_address varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的详细地址、码头或仓号', product_name VARCHAR(255) NULL COMMENT '商品名称', estimated_pallet_count INT NULL COMMENT '客户申报预计托数,不代表实际收货', package_count int NOT NULL DEFAULT '0' COMMENT '货物件数', total_weight_kg decimal(18,3) NOT NULL DEFAULT '0.000' COMMENT '总重量(千克)', total_volume_cbm decimal(18,6) NOT NULL DEFAULT '0.000000' COMMENT '总体积(立方米)', budget_amount decimal(18,2) DEFAULT NULL COMMENT '预算总价', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD' COMMENT '预算币种', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '预算币种', origin_contact_name VARCHAR(128) NULL COMMENT '起运地联系人', origin_contact_phone VARCHAR(128) NULL COMMENT '起运地联系电话', destination_contact_name VARCHAR(128) NULL COMMENT '目的地联系人', destination_contact_phone VARCHAR(128) NULL COMMENT '目的地联系电话', pickup_at DATETIME(3) NULL COMMENT '取货时间(当地时间,不转换时区)', delivery_at DATETIME(3) NULL COMMENT '送货时间(当地时间,不转换时区)', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_ACCEPTANCE' COMMENT '本土散板订单状态', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ACCEPTANCE' COMMENT '本土散板订单状态', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -1640,70 +1640,70 @@ CREATE TABLE ll_local_looseboard_order ( UNIQUE KEY uk_ll_local_looseboard_lastleg (lastleg_order_id), KEY idx_ll_local_looseboard_list (customer_id,status,created_at), KEY idx_ll_local_looseboard_date (customer_id,pickup_at,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土散板订单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土散板订单'; CREATE TABLE ll_monthly_exchange_rate ( id bigint NOT NULL COMMENT '月度汇率ID', - rate_month char(7) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '汇率月份,格式yyyy-MM', - base_currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD' COMMENT '基准币种', - quote_currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'CNY' COMMENT '报价币种', + rate_month char(7) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '汇率月份,格式yyyy-MM', + base_currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '基准币种', + quote_currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '报价币种', usd_to_cny_average decimal(18,8) NOT NULL COMMENT '美元兑人民币月平均汇率', - status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/INACTIVE', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '状态:ACTIVE/INACTIVE', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', record_version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人', - updated_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '更新人', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + updated_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_exchange_rate_month (rate_month), KEY idx_ll_exchange_rate_page (status,rate_month) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='美元兑人民币月度平均汇率'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='美元兑人民币月度平均汇率'; CREATE TABLE ll_monthly_exchange_rate_history ( id bigint NOT NULL COMMENT '汇率变更历史ID', exchange_rate_id bigint NOT NULL COMMENT '月度汇率ID', before_rate decimal(18,8) DEFAULT NULL COMMENT '变更前汇率', after_rate decimal(18,8) NOT NULL COMMENT '变更后汇率', - before_status varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - after_status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更说明', + before_status varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + after_status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更说明', created_at datetime(3) NOT NULL COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_exchange_rate_history (exchange_rate_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='月度汇率变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='月度汇率变更历史'; CREATE TABLE ll_order ( id bigint NOT NULL COMMENT '雪花 ID', - order_no varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '尾程单号', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户/客户账号标识', - order_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'FIRST_LEG' COMMENT '订单类型:FIRST_LEG头程订单、RELABEL_APPLICATION换标下单、WAREHOUSE_TRANSFER仓储转运、LOCAL_LOOSEBOARD本土散板、RETURN_RELABEL退货换标、ONE_CLICK_DROPSHIP一件代发', - lx_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', - destination_type varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '真实来源入仓码;无入仓关系的海外本土业务为空', - source_region varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源区域/系统', - source_inbound_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '最终实装 LOADED 分片 ID,建单幂等键', - root_inbound_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '根入仓单 ID', - source_order_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源订单 ID', - source_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源订单号', - root_order_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '根订单 ID', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '货主名称', - source_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源国内装柜仓 ID 快照', - source_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源国内装柜仓名称快照', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外接柜仓ID;新建尾程订单默认洛杉矶仓', - overseas_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外接柜仓名称快照', + order_no varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '尾程单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '租户/客户账号标识', + order_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'FIRST_LEG' COMMENT '订单类型:FIRST_LEG头程订单、RELABEL_APPLICATION换标下单、WAREHOUSE_TRANSFER仓储转运、LOCAL_LOOSEBOARD本土散板、RETURN_RELABEL退货换标、ONE_CLICK_DROPSHIP一件代发', + lx_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发领星入库单代码', + destination_type varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA按箱数接收、OVERSEAS逐箱扫码', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实来源入仓码;无入仓关系的海外本土业务为空', + source_region varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源区域/系统', + source_inbound_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最终实装 LOADED 分片 ID,建单幂等键', + root_inbound_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根入仓单 ID', + source_order_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单 ID', + source_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源订单号', + root_order_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '根订单 ID', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货主名称', + source_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源国内装柜仓 ID 快照', + source_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源国内装柜仓名称快照', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓ID;新建尾程订单默认洛杉矶仓', + overseas_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓名称快照', receiving_warehouse_version int NOT NULL DEFAULT '0' COMMENT '柜级接柜仓分配乐观锁版本', - transfer_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '转入目的仓ID', - transfer_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '转入目的仓编码', - transfer_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '转入目的仓名称', - fba_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA 仓库编码', - container_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '集装箱号', + transfer_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓ID', + transfer_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓编码', + transfer_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '转入目的仓名称', + fba_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA 仓库编码', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '集装箱号', abnormal tinyint NOT NULL DEFAULT '0' COMMENT '是否异常:0否1是', detained tinyint NOT NULL DEFAULT '0' COMMENT '是否暂扣:0否1是', hold_chargeable tinyint NOT NULL DEFAULT '0' COMMENT '当前暂扣是否计费:0否1是', - hold_reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '当前暂扣原因;解除后为空', + hold_reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前暂扣原因;解除后为空', manual_node_override tinyint NOT NULL DEFAULT '0' COMMENT '是否启用单票人工计划节点覆盖:0否1是,启用后不再继承柜级节点', version int NOT NULL DEFAULT '0' COMMENT '尾程订单命令乐观锁版本', pallet_count int NOT NULL DEFAULT '0' COMMENT '托数', @@ -1718,24 +1718,24 @@ CREATE TABLE ll_order ( actual_arrival_at datetime(3) DEFAULT NULL COMMENT '实际到港时间', estimated_warehouse_at datetime(3) DEFAULT NULL COMMENT '预计到仓时间', arrival_time_version int NOT NULL DEFAULT '0' COMMENT '柜级预计到仓时间乐观锁版本', - inbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入库单号', - outbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '出库单号', - delivery_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送单号', - relabel_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标单号', - relabel_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标状态', - pallet_merge_flag varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '合托标记', - pallet_merge_batch_id varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '平台预标记合托分组号', - current_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '当前业务状态:PENDING_ASSIGNMENT待分配、PENDING_INBOUND待入库、INBOUND_COMPLETED入库完成、PENDING_DELIVERY待派送、DELIVERING派送中、DELIVERED派送完成', - sub_order_status varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '子单据状态汇总', - private_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注(仅自己)', - customer_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注(客户)', - warehouse_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注(仓库)', - source_event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源事件 ID', - source_loading_plan_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源装柜计划 ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '来源头程货柜预订ID', + inbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入库单号', + outbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库单号', + delivery_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送单号', + relabel_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标单号', + relabel_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', + pallet_merge_flag varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '合托标记', + pallet_merge_batch_id varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '平台预标记合托分组号', + current_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_ASSIGNMENT' COMMENT '当前业务状态:PENDING_ASSIGNMENT待分配、PENDING_INBOUND待入库、INBOUND_COMPLETED入库完成、PENDING_DELIVERY待派送、DELIVERING派送中、DELIVERED派送完成', + sub_order_status varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '子单据状态汇总', + private_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(仅自己)', + customer_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(客户)', + warehouse_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注(仓库)', + source_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件 ID', + source_loading_plan_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源装柜计划 ID', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '来源头程货柜预订ID', source_loading_plan_version bigint DEFAULT NULL COMMENT '来源装柜计划版本', source_handover_version bigint DEFAULT NULL COMMENT '交接版本', - source_payload_hash varchar(71) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源事件负载摘要', + source_payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源事件负载摘要', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), @@ -1744,7 +1744,7 @@ CREATE TABLE ll_order ( KEY idx_ll_order_container (customer_id,container_no), KEY idx_ll_order_list (customer_id,current_status,created_at), KEY idx_ll_order_container_progress (source_container_booking_id,estimated_warehouse_at,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单主表'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单主表'; CREATE TABLE ll_appointment_followup ( id BIGINT NOT NULL COMMENT '预约筹划跟进记录ID', @@ -1772,29 +1772,29 @@ CREATE TABLE ll_appointment_followup ( CREATE TABLE ll_order_command_record ( id bigint NOT NULL COMMENT '尾程订单命令幂等记录ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '命令动作:MANUAL_PLAN、HOLD、MANUAL_NODES', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '平台操作人ID', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户端幂等键', - request_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化请求SHA-256摘要', - result_ref varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '结果业务引用', - result_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '首次成功响应JSON快照', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '命令动作:MANUAL_PLAN、HOLD、MANUAL_NODES', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人ID', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + request_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化请求SHA-256摘要', + result_ref varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '结果业务引用', + result_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '首次成功响应JSON快照', result_version int NOT NULL COMMENT '命令成功后的订单版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '首次成功时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_order_command_key (customer_id,order_id,action,operator_id,idempotency_key), KEY idx_ll_order_command_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单写命令幂等与结果审计记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单写命令幂等与结果审计记录'; CREATE TABLE ll_order_detail ( id bigint NOT NULL AUTO_INCREMENT COMMENT '订单明细主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单 ID', - source_inbound_detail_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源入仓明细 ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU 编码', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名', - product_name_en varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '英文品名', + source_inbound_detail_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓明细 ID', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU 编码', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', + product_name_en varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '英文品名', package_count int NOT NULL DEFAULT '0' COMMENT '箱数', product_quantity int DEFAULT NULL COMMENT '数量', pallet_count int DEFAULT NULL COMMENT '托数', @@ -1802,106 +1802,106 @@ CREATE TABLE ll_order_detail ( net_weight_kg decimal(18,4) DEFAULT NULL COMMENT '净重(千克)', dimensional_weight_kg decimal(18,4) DEFAULT NULL COMMENT '体积重量(千克)', volume_cbm decimal(18,4) DEFAULT NULL COMMENT '体积(立方米)', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓 ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称', - fba_tracking_no varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA跟踪号', - shipment_no varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '货件编号', - shipping_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '唛头', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓 ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', + fba_tracking_no varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA跟踪号', + shipment_no varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号', + shipping_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '唛头', PRIMARY KEY (id), UNIQUE KEY uk_ll_detail_source (order_id,source_inbound_detail_id), KEY idx_ll_detail_order (order_id), KEY idx_ll_detail_customer_order (customer_id,order_id,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单实装商品冻结明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单实装商品冻结明细'; CREATE TABLE ll_order_fee ( id bigint NOT NULL COMMENT '费用明细主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - fee_item varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用项目', - currency varchar(3) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '币种代码', + fee_item varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目', + currency varchar(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种代码', amount decimal(18,2) NOT NULL COMMENT '费用金额', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '费用状态:PENDING_REVIEW待审核、APPROVED审核通过、REJECTED已驳回', - supplier_description varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '供应商或费用说明', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建操作人', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '费用状态:PENDING_REVIEW待审核、APPROVED审核通过、REJECTED已驳回', + supplier_description varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商或费用说明', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建操作人', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), KEY idx_ll_order_fee_customer_order (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单费用明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单费用明细'; CREATE TABLE ll_order_hold_history ( id bigint NOT NULL COMMENT '尾程订单暂扣历史ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', held tinyint NOT NULL COMMENT '操作后是否暂扣:0否1是', chargeable tinyint NOT NULL COMMENT '本次暂扣是否计费:0否1是', - reason varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '暂扣或解除原因', + reason varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '暂扣或解除原因', order_version int NOT NULL COMMENT '操作成功后的订单版本', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人ID', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人名称', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户端幂等键', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', created_at datetime(3) NOT NULL COMMENT '操作时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_order_hold_key (customer_id,order_id,operator_id,idempotency_key), KEY idx_ll_order_hold_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单暂扣与解除不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单暂扣与解除不可变历史'; CREATE TABLE ll_order_manual_node ( id bigint NOT NULL COMMENT '尾程订单人工节点ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - node_code varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '八行人工展示节点稳定代码,与Carrier标准节点隔离', + node_code varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '八行人工展示节点稳定代码,与Carrier标准节点隔离', node_at datetime(3) DEFAULT NULL COMMENT '人工填写节点时间,允许为空', - source varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'MANUAL' COMMENT '节点来源,固定MANUAL', + source varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'MANUAL' COMMENT '节点来源,固定MANUAL', order_version int NOT NULL COMMENT '最近编辑后的订单版本', - updated_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '最近操作人ID', + updated_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '最近操作人ID', updated_at datetime(3) NOT NULL COMMENT '最近编辑时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_order_manual_node (customer_id,order_id,node_code), KEY idx_ll_order_manual_node_order (customer_id,order_id,node_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单当前人工节点覆盖事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单当前人工节点覆盖事实'; CREATE TABLE ll_order_manual_node_history ( id bigint NOT NULL COMMENT '尾程订单人工节点历史ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - nodes_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次全量人工节点JSON快照', + nodes_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次全量人工节点JSON快照', order_version int NOT NULL COMMENT '操作成功后的订单版本', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人ID', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人名称', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户端幂等键', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人ID', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', created_at datetime(3) NOT NULL COMMENT '操作时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_order_manual_node_history_key (customer_id,order_id,operator_id,idempotency_key), KEY idx_ll_order_manual_node_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单人工节点覆盖不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单人工节点覆盖不可变历史'; CREATE TABLE ll_dispatch_daily_sequence ( business_date DATE NOT NULL COMMENT '排车编号业务日期(Asia/Shanghai)', last_sequence INT NOT NULL COMMENT '当日已分配排车流水号,范围0001至9999', PRIMARY KEY(business_date) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车单号每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车单号每日独立原子流水'; CREATE TABLE ll_order_operation_log ( id bigint NOT NULL COMMENT '操作记录主键', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - operation_node varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作节点', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作人名称', - result varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '处理结果', + operation_node varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作节点', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作人名称', + result varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理结果', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '操作时间', PRIMARY KEY (id), KEY idx_ll_order_operation_customer_order (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单操作记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单操作记录'; CREATE TABLE ll_order_source_pallet ( id bigint NOT NULL COMMENT '来源托盘快照ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', order_id bigint NOT NULL COMMENT '尾程订单ID', - source_pallet_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '头程冻结托盘码', + source_pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '头程冻结托盘码', sequence_no int NOT NULL COMMENT '订单内稳定顺序', - source_event_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源装柜完成事件ID', + source_event_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源装柜完成事件ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_source_pallet_no (source_pallet_no), @@ -1909,47 +1909,47 @@ CREATE TABLE ll_order_source_pallet ( KEY idx_ll_source_pallet_order (customer_id,order_id), KEY fk_ll_source_pallet_order (order_id), CONSTRAINT fk_ll_source_pallet_order FOREIGN KEY (order_id) REFERENCES ll_order (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程交接的不可变托盘码快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程交接的不可变托盘码快照'; CREATE TABLE ll_order_status_history ( id bigint NOT NULL COMMENT '订单状态历史主键', customer_id bigint NOT NULL COMMENT '租户 ID', order_id bigint NOT NULL COMMENT '订单 ID', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - reason varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更原因', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + reason varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更原因', created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录时间', PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程订单状态历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程订单状态历史'; CREATE TABLE ll_outbound_order ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - outbound_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '出库单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + outbound_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '出库单号', dispatch_order_id bigint DEFAULT NULL COMMENT '派车单ID,一件代发为空', - dispatch_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派车单号,一件代发为空', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外仓ID', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'WAIT_OUTBOUND' COMMENT '业务状态', + dispatch_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派车单号,一件代发为空', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外仓ID', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_OUTBOUND' COMMENT '业务状态', package_count int NOT NULL DEFAULT '0' COMMENT '箱数', pallet_count int NOT NULL DEFAULT '0' COMMENT '托盘数', gross_weight_kg DECIMAL(18,3) NULL COMMENT '毛重(千克),来源未确认时为空', volume_weight_kg decimal(18,3) NOT NULL DEFAULT '0.000' COMMENT '材积重(千克)', volume_cbm DECIMAL(18,4) NULL COMMENT '体积(立方米),来源未确认时为空', fee_coverage_json JSON NULL COMMENT '本次发运引用的原费用版本、实际货物及明确服务覆盖确认快照', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', - outbound_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'DISPATCH_DELIVERY' COMMENT '出库类型:派送转出库、一件代发', - lx_codes varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联一件代发领星入库单代码汇总', - recipient_info varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发收件信息', - request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建或转派送业务请求摘要,用于幂等内容校验', + outbound_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DISPATCH_DELIVERY' COMMENT '出库类型:派送转出库、一件代发', + lx_codes varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联一件代发领星入库单代码汇总', + recipient_info varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发收件信息', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建或转派送业务请求摘要,用于幂等内容校验', PRIMARY KEY (id), UNIQUE KEY uk_ll_outbound_no (outbound_no), UNIQUE KEY uk_ll_outbound_idempotency (customer_id,idempotency_key), UNIQUE KEY uk_ll_outbound_dispatch (customer_id,dispatch_order_id), KEY idx_ll_outbound_list (customer_id,status,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='尾程出库单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='尾程出库单'; CREATE TABLE ll_dispatch_command ( id BIGINT NOT NULL COMMENT '持久命令内部主键', @@ -1965,7 +1965,7 @@ CREATE TABLE ll_dispatch_command ( PRIMARY KEY (id), UNIQUE KEY uk_dispatch_command_key (idempotency_key), KEY idx_dispatch_command_history (dispatch_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车公共持久命令账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车公共持久命令账本'; CREATE TABLE ll_dispatch_delivery_arrangement ( id BIGINT NOT NULL COMMENT '安排事实内部主键', @@ -1984,7 +1984,7 @@ CREATE TABLE ll_dispatch_delivery_arrangement ( UNIQUE KEY uk_dispatch_arrangement_dispatch (dispatch_order_id), UNIQUE KEY uk_dispatch_arrangement_key (arrangement_key), UNIQUE KEY uk_dispatch_arrangement_command (original_command_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车唯一派送安排事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车唯一派送安排事实'; CREATE TABLE ll_delivery_facts_changed ( id BIGINT NOT NULL COMMENT '持久信号内部主键', @@ -2005,7 +2005,7 @@ CREATE TABLE ll_delivery_facts_changed ( UNIQUE KEY uk_delivery_fact_version (customer_id,delivery_id,delivery_version), KEY idx_delivery_fact_due (state,next_attempt_at,id), KEY idx_delivery_fact_dispatch (dispatch_id,state,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='正常签收事实变化的本地持久待汇总信号'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='正常签收事实变化的本地持久待汇总信号'; CREATE TABLE ll_outbound_pallet_item ( return_sku_quantity BIGINT NULL COMMENT '本来源退货出库SKU件数,空表示整箱出库', @@ -2017,50 +2017,50 @@ CREATE TABLE ll_outbound_pallet_item ( source_return_carton_id BIGINT NULL COMMENT '本行实际退货换标来源箱ID', carton_marks VARCHAR(4000) NULL COMMENT '本行真实拣货箱唛快照', id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', outbound_order_id bigint NOT NULL COMMENT '出库单ID', warehouse_pallet_id bigint DEFAULT NULL COMMENT '仓库实物托盘ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '托盘号', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '托盘号', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', package_count int NOT NULL DEFAULT '0' COMMENT '箱数', gross_weight_kg DECIMAL(18,3) NULL COMMENT '毛重(千克),来源未确认时为空', volume_weight_kg decimal(18,3) NOT NULL DEFAULT '0.000' COMMENT '材积重(千克)', volume_cbm DECIMAL(18,4) NULL COMMENT '体积(立方米),来源未确认时为空', picked_package_count int NOT NULL DEFAULT '0' COMMENT '已拣箱数', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'WAIT_PICK' COMMENT '拣货状态', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '一件代发SKU', - order_refs varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联订单信息', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓单号快照', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_PICK' COMMENT '拣货状态', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '一件代发SKU', + order_refs varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联订单信息', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓单号快照', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_outbound_pallet (customer_id,outbound_order_id,warehouse_pallet_id,inbound_code,sku_code), UNIQUE KEY uk_outbound_source_attribution (customer_id,source_attribution_id), KEY idx_ll_outbound_pallet_list (customer_id,outbound_order_id), KEY idx_ll_outbound_pallet_destination (customer_id,destination_warehouse_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='出库托盘明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='出库托盘明细'; CREATE TABLE ll_outbound_pda_pick ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', task_id bigint NOT NULL COMMENT 'PDA任务ID', outbound_pallet_item_id bigint NOT NULL COMMENT '出库托盘明细ID', inventory_position_id bigint DEFAULT NULL COMMENT '库存仓位ID;退货箱直接出库时为空', packages bigint NOT NULL COMMENT '拣货箱数', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '拣货幂等键', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '拣货幂等键', picked_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '拣货时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_outbound_pda_pick_key (customer_id,idempotency_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发出库PDA托盘拣货记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发出库PDA托盘拣货记录'; CREATE TABLE ll_outbound_pda_task ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', outbound_order_id bigint NOT NULL COMMENT '出库单ID', - task_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA任务号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING' COMMENT '任务状态:待拣货、拣货中、已完成', - completion_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '完成命令幂等键', + task_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA任务号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING' COMMENT '任务状态:待拣货、拣货中、已完成', + completion_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完成命令幂等键', pushed_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '推送时间', completed_at datetime(3) DEFAULT NULL COMMENT '完成时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -2069,57 +2069,57 @@ CREATE TABLE ll_outbound_pda_task ( UNIQUE KEY uk_ll_outbound_pda_task_order (customer_id,outbound_order_id), UNIQUE KEY uk_ll_outbound_pda_task_no (task_no), UNIQUE KEY uk_ll_outbound_pda_complete_key (customer_id,completion_idempotency_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='一件代发出库PDA拣货任务'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='一件代发出库PDA拣货任务'; CREATE TABLE ll_overseas_procurement_file ( id bigint NOT NULL COMMENT '主键ID', order_id bigint NOT NULL COMMENT '采购订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID', - category varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'RECEIPT实收、VOUCHER费用、LABEL面单、PURCHASE采购、BUDGET预算、EXCEPTION异常凭证', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID', + category varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIPT实收、VOUCHER费用、LABEL面单、PURCHASE采购、BUDGET预算、EXCEPTION异常凭证', file_id bigint NOT NULL COMMENT 'File服务文件ID', - file_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '文件名快照', - content_type varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '媒体类型', + file_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '文件名快照', + content_type varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '媒体类型', size_bytes bigint NOT NULL DEFAULT '0' COMMENT '文件大小', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '上传人', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上传人', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '上传时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_procurement_file (order_id,file_id), KEY idx_ll_procurement_file_order (customer_id,order_id,category,created_at), CONSTRAINT chk_ll_procurement_file_category CHECK (category IN ('RECEIPT','VOUCHER','LABEL','PURCHASE','BUDGET','EXCEPTION')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外采购签收文件及费用凭证'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外采购签收文件及费用凭证'; CREATE TABLE ll_overseas_procurement_order ( procurement_direction VARCHAR(32) NOT NULL DEFAULT 'OVERSEAS_TO_DOMESTIC' COMMENT '采购方向:海外采购回国内/国内采购发海外', id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - customer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户名称快照', - order_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单号', - purchase_category varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '采购品类', - product_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品名称', - product_specification varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品规格', - product_url varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品链接', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + customer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户名称快照', + order_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '订单号', + purchase_category varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '采购品类', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '产品名称', + product_specification varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品规格', + product_url varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品链接', purchase_quantity bigint NOT NULL COMMENT '采购数量', budget_unit_price decimal(18,2) DEFAULT NULL COMMENT '预算单价', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD' COMMENT '币种', - receiving_address varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '收货地址', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系人姓名', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系人电话', - purchase_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '采购入仓仓库ID', - purchase_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '采购入仓仓库名称', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '币种', + receiving_address varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '收货地址', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '联系人姓名', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '联系人电话', + purchase_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '采购入仓仓库ID', + purchase_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '采购入仓仓库名称', inbound_quantity bigint NOT NULL DEFAULT '0' COMMENT '采购单据累计入库数量', estimated_arrival_at datetime(3) DEFAULT NULL COMMENT '预计到达时间', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', - reviewed_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人ID', - review_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核备注', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', + reviewed_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', + review_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核备注', customer_rejection_reason VARCHAR(1000) NULL COMMENT '客户采购结果驳回原因', rejected_photo_ids TEXT NULL COMMENT '本轮客户驳回的收货照片主键快照', - review_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核幂等键', - review_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核请求内容哈希', + review_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核幂等键', + review_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核请求内容哈希', reviewed_at datetime(3) DEFAULT NULL COMMENT '审核时间', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -2129,180 +2129,180 @@ CREATE TABLE ll_overseas_procurement_order ( UNIQUE KEY uk_ll_overseas_procurement_order_key (customer_id,idempotency_key), KEY idx_ll_overseas_procurement_list (customer_id,status,created_at), KEY idx_ll_overseas_procurement_warehouse (customer_id,purchase_warehouse_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外采购订单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外采购订单'; CREATE TABLE ll_overseas_procurement_status_history ( id bigint NOT NULL COMMENT '主键ID', order_id bigint NOT NULL COMMENT '订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型:CREATE、REVIEW或UPDATE', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作幂等键', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型:CREATE、REVIEW或UPDATE', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', change_detail json DEFAULT NULL COMMENT '字段变更前后值JSON', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_overseas_procurement_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外采购操作流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外采购操作流水'; CREATE TABLE ll_overseas_quote ( id bigint NOT NULL COMMENT '报价ID', - name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报价名称', + name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价名称', warehouse_id bigint NOT NULL COMMENT '国内平台海外合作仓ID', - warehouse_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '合作仓编码快照', - warehouse_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '合作仓名称快照', - country_code varchar(2) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国家二字码快照', - provider_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报价方', - currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '币种', + warehouse_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '合作仓编码快照', + warehouse_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '合作仓名称快照', + country_code varchar(2) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国家二字码快照', + provider_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价方', + currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '币种', effective_start date NOT NULL COMMENT '生效开始日期', effective_end date NOT NULL COMMENT '生效结束日期', - version_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务版本号', - status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'INACTIVE' COMMENT '状态:ACTIVE/INACTIVE', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + version_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务版本号', + status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'INACTIVE' COMMENT '状态:ACTIVE/INACTIVE', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', record_version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人', - updated_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '更新人', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + updated_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_quote_warehouse_provider_version (warehouse_id,provider_name,version_code), KEY idx_ll_quote_page (status,updated_at,id), KEY idx_ll_quote_effective (warehouse_id,provider_name,currency,effective_start,effective_end) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外仓报价主表'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外仓报价主表'; CREATE TABLE ll_overseas_quote_fee ( id bigint NOT NULL COMMENT '费用明细ID', quote_id bigint NOT NULL COMMENT '报价ID', sequence_no int NOT NULL COMMENT '显示顺序', - item varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用项目', - billing_unit varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '计费单位', + item varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '费用项目', + billing_unit varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '计费单位', unit_price decimal(18,4) NOT NULL COMMENT '单价', minimum_charge decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '最低收费', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', PRIMARY KEY (id), UNIQUE KEY uk_ll_quote_fee_sequence (quote_id,sequence_no), KEY idx_ll_quote_fee_quote (quote_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外仓报价仓库费用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外仓报价仓库费用'; CREATE TABLE ll_overseas_quote_transit_price ( id bigint NOT NULL COMMENT '中转价格ID', quote_id bigint NOT NULL COMMENT '报价ID', sequence_no int NOT NULL COMMENT '显示顺序', - fba_warehouse_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'FBA仓编码', - delivery_method varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '报价运输方式', + fba_warehouse_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'FBA仓编码', + delivery_method varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '报价运输方式', estimated_miles decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '预估英里数', price decimal(18,4) NOT NULL COMMENT '报价金额', minimum_charge decimal(18,4) NOT NULL DEFAULT '0.0000' COMMENT '最低收费', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', PRIMARY KEY (id), UNIQUE KEY uk_ll_quote_transit_sequence (quote_id,sequence_no), KEY idx_ll_quote_transit_quote (quote_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外仓报价中转价格明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外仓报价中转价格明细'; CREATE TABLE ll_pda_inventory_move ( id bigint NOT NULL COMMENT '移库操作ID', - move_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '移库操作单号', + move_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库操作单号', overseas_warehouse_id bigint NOT NULL COMMENT 'Token冻结的海外实际仓ID', pallet_id bigint NOT NULL COMMENT '整托移库的实物托盘ID', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实物托盘码快照', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实物托盘码快照', source_location_id bigint NOT NULL COMMENT '来源库位ID', - source_location_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源库位码快照', + source_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源库位码快照', target_location_id bigint NOT NULL COMMENT '目标库位ID', - target_location_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '目标库位码快照', + target_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目标库位码快照', customer_count int NOT NULL COMMENT '托盘涉及客户数', position_count int NOT NULL COMMENT '迁移库存位置数', package_count bigint NOT NULL COMMENT '迁移总箱数', pallet_version_before int NOT NULL COMMENT '迁移前托盘版本', pallet_version_after int DEFAULT NULL COMMENT '迁移后托盘版本', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作账号标识', - reason varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '移库原因', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '移库幂等键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '移库请求哈希', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '移库处理状态', - result_json longtext COLLATE utf8mb4_unicode_ci COMMENT '成功响应JSON', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + reason varchar(500) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库原因', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库幂等键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库请求哈希', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '移库处理状态', + result_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应JSON', created_at datetime(3) NOT NULL COMMENT '创建时间', completed_at datetime(3) DEFAULT NULL COMMENT '完成时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_pda_inventory_move_no (move_no), UNIQUE KEY uk_ll_pda_inventory_move_key (overseas_warehouse_id,operator_key,idempotency_key), KEY idx_ll_pda_inventory_move_pallet (overseas_warehouse_id,pallet_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA同仓整托移库记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA同仓整托移库记录'; CREATE TABLE ll_pda_operation_history ( id bigint NOT NULL COMMENT 'PDA作业历史ID', overseas_warehouse_id bigint NOT NULL COMMENT 'Token冻结的海外实际仓ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '作业涉及的客户标识', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作账号标识', - operation_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '作业类型', - business_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '作业业务键', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '作业结果状态', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '写操作幂等键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '写请求内容哈希', - summary varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '作业结果摘要', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '作业涉及的客户标识', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + operation_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业类型', + business_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业业务键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '作业结果状态', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '写操作幂等键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '写请求内容哈希', + summary varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '作业结果摘要', occurred_at datetime(3) NOT NULL COMMENT '作业发生时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_pda_history_idempotency (operator_key,idempotency_key), KEY idx_ll_pda_history_operator (overseas_warehouse_id,operator_key,occurred_at), KEY idx_ll_pda_history_business (overseas_warehouse_id,operation_type,business_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA真实作业历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA真实作业历史'; CREATE TABLE ll_pda_pallet_operation ( id bigint NOT NULL COMMENT 'PDA托盘作业ID', overseas_warehouse_id bigint NOT NULL COMMENT 'Token冻结的海外实际仓ID', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作账号标识', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '设备幂等键', - operation_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '托盘作业类型', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容摘要', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '处理状态:PROCESSING、COMPLETED、FAILED_COMPENSATED、COMPENSATION_REQUIRED', - result_json longtext COLLATE utf8mb4_unicode_ci COMMENT '成功响应快照', - remote_transitions_json longtext COLLATE utf8mb4_unicode_ci COMMENT '实物托盘状态变更回执', - last_error varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最后失败原因', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '设备幂等键', + operation_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘作业类型', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容摘要', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '处理状态:PROCESSING、COMPLETED、FAILED_COMPENSATED、COMPENSATION_REQUIRED', + result_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应快照', + remote_transitions_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '实物托盘状态变更回执', + last_error varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最后失败原因', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_pda_pallet_idempotency (operator_key,idempotency_key), KEY idx_ll_pda_pallet_warehouse (overseas_warehouse_id,status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA托盘作业幂等、补偿与结果记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA托盘作业幂等、补偿与结果记录'; CREATE TABLE ll_pda_stocktake_action ( id bigint NOT NULL COMMENT '盘点动作ID', overseas_warehouse_id bigint NOT NULL COMMENT 'Token冻结的海外实际仓ID', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作账号标识', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作幂等键', - action_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点动作类型', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作账号标识', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作幂等键', + action_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点动作类型', task_id bigint DEFAULT NULL COMMENT '盘点任务ID', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作请求哈希', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作处理状态', - result_json longtext COLLATE utf8mb4_unicode_ci COMMENT '成功响应JSON', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作请求哈希', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作处理状态', + result_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '成功响应JSON', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_pda_stocktake_action (overseas_warehouse_id,operator_key,idempotency_key), KEY idx_ll_pda_stocktake_action_task (task_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA盘点动作幂等记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA盘点动作幂等记录'; CREATE TABLE ll_pda_stocktake_item ( id bigint NOT NULL COMMENT '盘点明细ID', task_id bigint NOT NULL COMMENT '盘点任务ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存所属客户标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户标识', balance_id bigint NOT NULL COMMENT '库存余额ID', position_id bigint NOT NULL COMMENT '库存位置ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU快照', - product_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '品名快照', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '入仓码快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU快照', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '品名快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '入仓码快照', pallet_id bigint NOT NULL COMMENT '实物托盘ID', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实物托盘码快照', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实物托盘码快照', location_id bigint NOT NULL COMMENT '库位ID快照', - location_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库位码快照', + location_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库位码快照', book_packages bigint NOT NULL COMMENT '任务创建时账面总箱数', actual_packages bigint DEFAULT NULL COMMENT '现场实盘总箱数', difference_packages bigint DEFAULT NULL COMMENT '实盘与账面箱数差异', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点明细状态', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点明细状态', position_version bigint NOT NULL COMMENT '任务创建时库存位置版本', - counted_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '盘点操作账号标识', + counted_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '盘点操作账号标识', version bigint NOT NULL DEFAULT '0' COMMENT '明细乐观锁版本', counted_at datetime(3) DEFAULT NULL COMMENT '盘点时间', created_at datetime(3) NOT NULL COMMENT '创建时间', @@ -2310,24 +2310,24 @@ CREATE TABLE ll_pda_stocktake_item ( PRIMARY KEY (id), UNIQUE KEY uk_ll_pda_stocktake_item (task_id,position_id), KEY idx_ll_pda_stocktake_item_task (task_id,status,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA库存盘点位置明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA库存盘点位置明细'; CREATE TABLE ll_pda_stocktake_task ( id bigint NOT NULL COMMENT '盘点任务ID', - task_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点任务号', + task_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点任务号', overseas_warehouse_id bigint NOT NULL COMMENT 'Token冻结的海外实际仓ID', - scope_type varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点范围类型LOCATION或PALLET', + scope_type varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点范围类型LOCATION或PALLET', scope_resource_id bigint NOT NULL COMMENT '盘点库位或托盘资源ID', - scope_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点库位码或托盘码快照', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '盘点任务状态', + scope_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点库位码或托盘码快照', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '盘点任务状态', position_count int NOT NULL COMMENT '库存位置总数', counted_count int NOT NULL DEFAULT '0' COMMENT '已盘库存位置数', difference_count int NOT NULL DEFAULT '0' COMMENT '存在差异的库存位置数', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建操作账号标识', - submitted_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '提交操作账号标识', - submit_reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '盘点差异提交原因', - idempotency_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建幂等键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建请求哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建操作账号标识', + submitted_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提交操作账号标识', + submit_reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '盘点差异提交原因', + idempotency_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求哈希', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '更新时间', @@ -2336,36 +2336,36 @@ CREATE TABLE ll_pda_stocktake_task ( UNIQUE KEY uk_ll_pda_stocktake_no (task_no), UNIQUE KEY uk_ll_pda_stocktake_create (overseas_warehouse_id,created_by,idempotency_key), KEY idx_ll_pda_stocktake_list (overseas_warehouse_id,status,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA库存盘点任务'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA库存盘点任务'; CREATE TABLE ll_receiving_container_operation ( id bigint NOT NULL COMMENT '柜号收货操作ID', session_id bigint NOT NULL COMMENT '柜号签收会话ID', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作账号唯一标识', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作动作', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户端幂等键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - request_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容快照', - result_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '响应内容快照', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号唯一标识', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作动作', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户端幂等键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + request_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容快照', + result_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '响应内容快照', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_receiving_operation (operator_key,idempotency_key), KEY idx_ll_receiving_operation_session (session_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA柜号收货幂等审计记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA柜号收货幂等审计记录'; CREATE TABLE ll_receiving_container_session ( id bigint NOT NULL COMMENT '柜号签收会话ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '稳定来源柜预订ID', - container_fact_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '领取时整柜订单与计划事实摘要', - container_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '集装箱号', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + container_fact_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '领取时整柜订单与计划事实摘要', + container_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '集装箱号', overseas_warehouse_id bigint NOT NULL COMMENT '平台预分配并由操作员Token匹配的海外接柜仓ID', - overseas_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', - overseas_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '仓库服务校验后的海外接柜仓名称快照', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作账号唯一标识', - operator_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作账号名称', - active_operator_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '未完成会话平台操作账号全局唯一锁键', - active_container_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '未完成会话柜号全局唯一锁键', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'WAIT_SIGN' COMMENT '会话状态:WAIT_SIGN、SIGNED、RECEIVING、COMPLETED、COMPLETED_WITH_DIFFERENCE', + overseas_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '海外接柜仓业务编码快照', + overseas_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓库服务校验后的海外接柜仓名称快照', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号唯一标识', + operator_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作账号名称', + active_operator_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '未完成会话平台操作账号全局唯一锁键', + active_container_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '未完成会话柜号全局唯一锁键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_SIGN' COMMENT '会话状态:WAIT_SIGN、SIGNED、RECEIVING、COMPLETED、COMPLETED_WITH_DIFFERENCE', sign_photos json DEFAULT NULL COMMENT '签收卸柜照片角色与文件ID列表', prepared_at datetime(3) DEFAULT NULL COMMENT '选择柜号时间', signed_at datetime(3) DEFAULT NULL COMMENT '签收时间', @@ -2379,32 +2379,32 @@ CREATE TABLE ll_receiving_container_session ( UNIQUE KEY uk_ll_receiving_active_container (active_container_key), KEY idx_ll_receiving_container (container_no,status), KEY idx_ll_receiving_operator (operator_key,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA柜号签收收货会话'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA柜号签收收货会话'; CREATE TABLE ll_receiving_fba_pallet_count ( id bigint NOT NULL COMMENT 'FBA托盘现场累计箱数ID', session_id bigint NOT NULL COMMENT '柜号签收会话ID', - group_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '柜号与FBA仓组成的收货组键', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '现有FBA托盘码', + group_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '柜号与FBA仓组成的收货组键', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '现有FBA托盘码', actual_packages int NOT NULL COMMENT '该托现场累计实物箱数', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_receiving_fba_count (session_id,group_key,pallet_code), KEY idx_ll_receiving_fba_group (session_id,group_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA普通FBA托盘现场累计与超收标记'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA普通FBA托盘现场累计与超收标记'; CREATE TABLE ll_receiving_sku_receipt ( id bigint NOT NULL COMMENT 'FBA SKU实收进度ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户账号标识', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户账号标识', session_id bigint NOT NULL COMMENT '柜号签收会话ID', plan_id bigint NOT NULL COMMENT '入仓计划ID', line_id bigint NOT NULL COMMENT '入仓计划明细ID', pallet_id bigint NOT NULL COMMENT '计划托盘ID', order_id bigint NOT NULL COMMENT '尾程订单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓码快照', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码快照', - product_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品名称快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓码快照', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码快照', + product_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品名称快照', received_packages int NOT NULL COMMENT 'SKU实收箱数', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -2413,64 +2413,64 @@ CREATE TABLE ll_receiving_sku_receipt ( UNIQUE KEY uk_ll_receiving_sku_pallet (customer_id,line_id,pallet_id,sku_code), KEY idx_ll_receiving_sku_session (customer_id,session_id,line_id), KEY idx_ll_receiving_sku_plan (customer_id,plan_id,line_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA柜号FBA SKU实收进度'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA柜号FBA SKU实收进度'; CREATE TABLE ll_receiving_warehouse_operation ( id bigint NOT NULL COMMENT '柜级接柜仓修改操作ID', - source_container_booking_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '稳定来源柜预订ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '平台请求幂等键', - request_hash varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', + source_container_booking_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '稳定来源柜预订ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台请求幂等键', + request_hash varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化修改请求SHA-256摘要', result_version int NOT NULL COMMENT '修改成功后的柜级分配版本', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '平台操作人名称', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '接柜仓修改备注', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '平台操作人名称', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '接柜仓修改备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '操作时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_receiving_warehouse_idempotency (idempotency_key), KEY idx_ll_receiving_warehouse_container (source_container_booking_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜级海外接柜仓修改幂等审计记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜级海外接柜仓修改幂等审计记录'; CREATE TABLE ll_relabel_application ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - relabel_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标申请单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + relabel_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标申请单号', lastleg_order_id bigint NOT NULL COMMENT '尾程订单ID', - customer_order_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户订单号', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', + customer_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户订单号', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', label_deadline datetime(3) NOT NULL COMMENT '换标截止时间', - contact_name varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系人姓名', - contact_phone varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '联系人电话', - delivery_method varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '派送方式:TRUCK平台卡车、EXPRESS快递、PICKUP自提、AMAZON_PICKUP亚马逊自提、CUSTOMER_PICKUP客户自提;仅平台卡车进入预排车', + contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '联系人姓名', + contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '联系人电话', + delivery_method varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '派送方式:TRUCK平台卡车、EXPRESS快递、PICKUP自提、AMAZON_PICKUP亚马逊自提、CUSTOMER_PICKUP客户自提;仅平台卡车进入预排车', print_shipping_label tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否需要打印面单', - shipping_label_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户上传面单文件ID', - shipping_label_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户上传面单文件名', - shipping_label_file_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户上传面单下载地址', - fulfillment_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'WAIT_RELABEL' COMMENT '换标后履约状态', - outbound_order_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '自提或快递生成的换标出库单号', - customer_confirmation_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户确认完成幂等键', + shipping_label_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单文件ID', + shipping_label_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单文件名', + shipping_label_file_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户上传面单下载地址', + fulfillment_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'WAIT_RELABEL' COMMENT '换标后履约状态', + outbound_order_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '自提或快递生成的换标出库单号', + customer_confirmation_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户确认完成幂等键', customer_confirmed_at datetime(3) DEFAULT NULL COMMENT '客户确认换标完成时间', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - total_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '总换标PDF文件ID', - total_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '总换标PDF文件名', - total_file_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '总换标PDF预览地址', - carton_total_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '箱唛总文件ID', - carton_total_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '箱唛总文件名', - carton_total_file_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '箱唛总文件地址', - sku_total_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU总文件ID', - sku_total_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU总文件名', - sku_total_file_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU总文件地址', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_PROCESSING' COMMENT '业务状态', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + total_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF文件ID', + total_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF文件名', + total_file_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '总换标PDF预览地址', + carton_total_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件ID', + carton_total_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件名', + carton_total_file_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '箱唛总文件地址', + sku_total_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件ID', + sku_total_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件名', + sku_total_file_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU总文件地址', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_PROCESSING' COMMENT '业务状态', item_count int NOT NULL DEFAULT '0' COMMENT '明细数量', total_package_count int NOT NULL DEFAULT '0' COMMENT '总箱数', notified_package_count int NOT NULL DEFAULT '0' COMMENT '已通知箱数', charge_amount decimal(20,2) NOT NULL DEFAULT '0.00' COMMENT '换标费用CNY', - charge_currency char(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'CNY' COMMENT '费用币种', - wallet_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'FREEZE_PENDING' COMMENT '资金状态', - wallet_error_code varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '资金错误码', - wallet_error_message varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '资金错误说明', - wallet_command_event_id varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '当前资金指令事件ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + charge_currency char(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CNY' COMMENT '费用币种', + wallet_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'FREEZE_PENDING' COMMENT '资金状态', + wallet_error_code varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误码', + wallet_error_message varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '资金错误说明', + wallet_command_event_id varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '当前资金指令事件ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), @@ -2480,103 +2480,103 @@ CREATE TABLE ll_relabel_application ( KEY idx_ll_relabel_application_list (customer_id,status,created_at), KEY idx_ll_relabel_application_customer (customer_id,customer_order_no), KEY idx_ll_relabel_application_warehouse (customer_id,overseas_warehouse_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户换标申请单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户换标申请单'; CREATE TABLE ll_relabel_item ( return_carton_id bigint DEFAULT NULL COMMENT '退货换箱唛来源退货库存箱ID', - source_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '退货换箱唛原箱唛快照', - new_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '退货换箱唛新箱唛', + source_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '退货换箱唛原箱唛快照', + new_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '退货换箱唛新箱唛', id bigint NOT NULL COMMENT '主键ID', application_id bigint NOT NULL COMMENT '申请单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'SKU编码(选填)', - product_image_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品图片文件ID', - product_image_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品图片文件名', - product_image_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品图片地址', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品中文名称', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'SKU编码(选填)', + product_image_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品图片文件ID', + product_image_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品图片文件名', + product_image_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '产品图片地址', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '产品中文名称', total_package_count int NOT NULL COMMENT '总箱数', notified_package_count int NOT NULL COMMENT '已通知箱数', - shipment_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '货件编号(无FBA去向时为空)', - tracking_code varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '物流跟踪编码', - new_sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标后SKU编码;批量SKU换标使用子明细JSON时为空', - label_requirement varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标要求', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '货物明细备注', - relabel_file_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标文件ID', - relabel_file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标文件名', - relabel_file_url varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标文件地址', - carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户自有箱唛', - fba_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '关联FBA箱唛', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '该箱目的海外仓ID', - destination_fba_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '可选FBA目的仓编码(与海外操作仓分离)', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'CARTON_LABEL' COMMENT '换标模式:箱唛、SKU或组合换标', + shipment_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货件编号(无FBA去向时为空)', + tracking_code varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物流跟踪编码', + new_sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标后SKU编码;批量SKU换标使用子明细JSON时为空', + label_requirement varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标要求', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '货物明细备注', + relabel_file_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标文件ID', + relabel_file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标文件名', + relabel_file_url varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标文件地址', + carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户自有箱唛', + fba_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '关联FBA箱唛', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '该箱目的海外仓ID', + destination_fba_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA目的仓编码(与海外操作仓分离)', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CARTON_LABEL' COMMENT '换标模式:箱唛、SKU或组合换标', sku_relabel_items_json json DEFAULT NULL COMMENT '同箱SKU换标子明细快照(数量按件)', source_inventory_balance_id bigint DEFAULT NULL COMMENT '原库存余额ID(预入仓换标任务可为空)', source_inventory_position_id bigint DEFAULT NULL COMMENT '原库存库位ID(预入仓换标任务可为空)', source_inbound_order_id bigint DEFAULT NULL COMMENT '原入仓单ID(预入仓换标任务可为空)', - source_inbound_order_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原入仓单号快照', - source_inbound_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原进仓编码快照', - source_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原海外中转仓ID;预入仓批量SKU换标时为空', - source_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原海外中转仓编码快照', - source_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '原海外中转仓名称快照', + source_inbound_order_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原入仓单号快照', + source_inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原进仓编码快照', + source_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原海外中转仓ID;预入仓批量SKU换标时为空', + source_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原海外中转仓编码快照', + source_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '原海外中转仓名称快照', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_relabel_item_application (customer_id,application_id), KEY idx_ll_relabel_item_sku (customer_id,sku_code), KEY idx_ll_relabel_item_destination (customer_id,destination_warehouse_id,application_id), KEY idx_ll_relabel_item_source_position (customer_id,source_inventory_position_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='换标货物冻结明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='换标货物冻结明细'; CREATE TABLE ll_relabel_pda_history ( id bigint NOT NULL COMMENT '换标PDA任务历史ID', task_id bigint NOT NULL COMMENT '换标PDA任务ID', application_id bigint NOT NULL COMMENT '换标申请单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '现场动作类型', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '动作前任务状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '动作后任务状态', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作账号标识', - operator_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作员名称快照', - detail_json longtext COLLATE utf8mb4_unicode_ci COMMENT '动作详情JSON', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '现场动作类型', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '动作前任务状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '动作后任务状态', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号标识', + operator_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作员名称快照', + detail_json longtext COLLATE utf8mb4_0900_ai_ci COMMENT '动作详情JSON', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_relabel_pda_history_task (customer_id,task_id,created_at,id), KEY idx_ll_relabel_pda_history_application (customer_id,application_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA换标任务不可变操作历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA换标任务不可变操作历史'; CREATE TABLE ll_relabel_pda_operation ( id bigint NOT NULL COMMENT '换标PDA幂等操作ID', task_id bigint NOT NULL COMMENT '换标PDA任务ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求操作账号标识', - action varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '幂等操作动作', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '设备生成的幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - result_json longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '成功响应快照JSON', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求操作账号标识', + action varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '幂等操作动作', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '设备生成的幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + result_json longtext COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成功响应快照JSON', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_relabel_pda_operation_key (operator_key,idempotency_key), KEY idx_ll_relabel_pda_operation_task (customer_id,task_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA换标写操作幂等记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA换标写操作幂等记录'; CREATE TABLE ll_relabel_pda_task ( id bigint NOT NULL COMMENT '换标PDA任务ID', application_id bigint NOT NULL COMMENT '换标申请单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - relabel_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标申请单号快照', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + relabel_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标申请单号快照', overseas_warehouse_id bigint NOT NULL COMMENT 'PDA令牌冻结的海外实际作业仓ID', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '任务状态:PROCESSING、WAIT_REVIEW或COMPLETED', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '认领操作账号标识', - operator_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '认领操作员名称快照', - reviewer_key varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '复核账号标识', - reviewer_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '复核员名称快照', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务状态:PROCESSING、WAIT_REVIEW或COMPLETED', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '认领操作账号标识', + operator_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '认领操作员名称快照', + reviewer_key varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '复核账号标识', + reviewer_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '复核员名称快照', expected_packages int NOT NULL COMMENT '申请单通知的应换标箱数', relabelled_packages int NOT NULL DEFAULT '0' COMMENT '已正常换标箱数', skipped_packages int NOT NULL DEFAULT '0' COMMENT '已说明原因跳过箱数', exception_packages int NOT NULL DEFAULT '0' COMMENT '已登记异常箱数', completion_photo_file_ids json DEFAULT NULL COMMENT '换标完成现场照片文件ID列表', - completion_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '完成提交备注', - review_decision varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近复核结论:APPROVE或REWORK', - review_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '最近复核备注', + completion_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '完成提交备注', + review_decision varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近复核结论:APPROVE或REWORK', + review_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '最近复核备注', claimed_at datetime(3) NOT NULL COMMENT '任务认领时间', submitted_at datetime(3) DEFAULT NULL COMMENT '提交复核时间', reviewed_at datetime(3) DEFAULT NULL COMMENT '最近复核时间', @@ -2588,53 +2588,53 @@ CREATE TABLE ll_relabel_pda_task ( UNIQUE KEY uk_ll_relabel_pda_task_no (relabel_no), KEY idx_ll_relabel_pda_task_warehouse (overseas_warehouse_id,status,updated_at), KEY idx_ll_relabel_pda_task_operator (operator_key,status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA换标现场作业任务'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA换标现场作业任务'; CREATE TABLE ll_relabel_pda_unit_fact ( id bigint NOT NULL COMMENT '逐件换标事实ID', task_id bigint NOT NULL COMMENT '换标PDA任务ID', application_id bigint NOT NULL COMMENT '换标申请单ID', item_id bigint NOT NULL COMMENT '换标申请明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - old_label varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '扫描的实物旧标签或箱标', - new_label varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '扫描的换标后新标签', - result varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '逐件结果:RELABELLED、SKIPPED或EXCEPTION', - exception_code varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '异常编码', - reason varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '跳过或异常原因', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + old_label varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扫描的实物旧标签或箱标', + new_label varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扫描的换标后新标签', + result varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '逐件结果:RELABELLED、SKIPPED或EXCEPTION', + exception_code varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '异常编码', + reason varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '跳过或异常原因', quantity int NOT NULL DEFAULT '1' COMMENT '本次事实处理件数,箱级作业固定为1', - operator_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作账号标识', - operator_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作员名称快照', + operator_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作账号标识', + operator_name varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作员名称快照', occurred_at datetime(3) NOT NULL COMMENT '逐件事实发生时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_relabel_pda_old_label (old_label), KEY idx_ll_relabel_pda_unit_task (customer_id,task_id,occurred_at,id), KEY idx_ll_relabel_pda_unit_item (customer_id,application_id,item_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA逐件换标扫码与异常事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA逐件换标扫码与异常事实'; CREATE TABLE ll_relabel_status_history ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', application_id bigint NOT NULL COMMENT '申请单ID', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_relabel_status_history_application (customer_id,application_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='换标状态变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='换标状态变更历史'; -- 退货出库按SKU固化扣减前后快照,与PDA拣货同事务提交;不修改历史箱内容。 CREATE TABLE ll_return_inventory_outbound_movement ( id BIGINT NOT NULL COMMENT '退货出库SKU流水ID', outbound_pick_id BIGINT NOT NULL COMMENT '同事务PDA出库拣货记录ID', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存所属客户ID和隔离键', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际出库海外仓ID', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户ID和隔离键', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际出库海外仓ID', carton_id BIGINT NOT NULL COMMENT '真实退货库存箱ID', carton_mark VARCHAR(128) NOT NULL COMMENT '冻结的真实退货箱业务码', - outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次退货出库业务单号', - sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次出库SKU编码快照', return_sku_quantity BIGINT NULL COMMENT '退货单SKU本来源计划出库件数快照,NULL为历史整箱出库', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', + outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次退货出库业务单号', + sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次出库SKU编码快照', return_sku_quantity BIGINT NULL COMMENT '退货单SKU本来源计划出库件数快照,NULL为历史整箱出库', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', quantity BIGINT NOT NULL COMMENT '本箱该SKU实际出库件数,始终为正', total_before BIGINT NOT NULL COMMENT '客户仓SKU出库前实物总数量', total_after BIGINT NOT NULL COMMENT '客户仓SKU出库后实物总数量', @@ -2650,14 +2650,14 @@ CREATE TABLE ll_return_inventory_outbound_movement ( CONSTRAINT chk_ll_return_outbound_movement_delta CHECK(quantity>0 AND total_after>=0 AND available_after>=0 AND total_before-total_after=quantity AND available_before-available_after=quantity AND cartons_after>=0 AND cartons_before-cartons_after IN (0,1) AND total_after>=available_after) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='不可变退货出库SKU库存流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='不可变退货出库SKU库存流水'; CREATE TABLE ll_return_inventory_balance ( id bigint NOT NULL COMMENT '退货库存余额ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', total_quantity bigint NOT NULL DEFAULT '0' COMMENT '实物总库存,仅实际出库扣减', available_quantity bigint NOT NULL COMMENT '未合箱可用上架数量', carton_quantity bigint NOT NULL COMMENT '包含该SKU的可用箱数', @@ -2666,28 +2666,28 @@ CREATE TABLE ll_return_inventory_balance ( PRIMARY KEY (id), UNIQUE KEY uk_ll_return_inventory_balance (customer_id,overseas_warehouse_id,sku_code), CONSTRAINT chk_ll_return_inventory_balance_quantity CHECK (((total_quantity >= available_quantity) and (available_quantity >= 0) and (carton_quantity >= 0))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货库存按客户海外仓SKU汇总余额'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货库存按客户海外仓SKU汇总余额'; CREATE TABLE ll_return_inventory_carton ( original_packaging TINYINT(1) NULL COMMENT '是否使用原箱原包装', label_status varchar(32) DEFAULT NULL COMMENT 'WAIT_LABEL待贴标 CONFIRMED已扫码确认标签', - new_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标后新箱唛', + new_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标后新箱唛', id bigint NOT NULL COMMENT '退货库存箱ID', - customer_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - overseas_warehouse_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', + customer_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + overseas_warehouse_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', source_receipt_id bigint DEFAULT NULL COMMENT '来源PDA签收单ID', - source_batch_no text COLLATE utf8mb4_unicode_ci COMMENT '实际消耗来源签收批次号,多个批次逗号分隔', - source_return_no text COLLATE utf8mb4_unicode_ci COMMENT '实际消耗来源退货单号,多个单号逗号分隔', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '签收时绑定的托盘码', - carton_mark varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '退货箱号和箱唛编码', - fba_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA箱唛', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称', + source_batch_no text COLLATE utf8mb4_0900_ai_ci COMMENT '实际消耗来源签收批次号,多个批次逗号分隔', + source_return_no text COLLATE utf8mb4_0900_ai_ci COMMENT '实际消耗来源退货单号,多个单号逗号分隔', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收时绑定的托盘码', + carton_mark varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货箱号和箱唛编码', + fba_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA箱唛', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称', relabel_application_id bigint DEFAULT NULL COMMENT '绑定换标申请单ID', - relabel_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '绑定换标单号', - relabel_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标状态', + relabel_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '绑定换标单号', + relabel_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', relabel_completed_at datetime(3) DEFAULT NULL COMMENT '换标完成时间', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'AVAILABLE可用或MERGED已合箱', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'AVAILABLE可用或MERGED已合箱', count_status VARCHAR(16) NOT NULL DEFAULT 'CONFIRMED' COMMENT '箱内清点状态 PENDING待清点 CONFIRMED已确认', counted_at DATETIME(3) NULL COMMENT '箱内清点确认时间', counted_by VARCHAR(128) NULL COMMENT '箱内清点确认操作人', @@ -2710,14 +2710,14 @@ CREATE TABLE ll_return_inventory_carton ( location_code VARCHAR(128) NULL COMMENT '退货箱当前库位', putaway_at DATETIME(3) NULL COMMENT '退货箱上架时间', source_unit_type VARCHAR(32) NULL COMMENT 'PALLET或BOX实物箱 PARCEL散SKU' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货实物库存箱及箱唛'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货实物库存箱及箱唛'; CREATE TABLE ll_return_inventory_carton_item ( id bigint NOT NULL COMMENT '退货库存箱SKU明细ID', carton_id bigint NOT NULL COMMENT '退货库存箱ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name_zh varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name_zh varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', quantity bigint NOT NULL COMMENT '该SKU箱内数量', relabelled_quantity BIGINT NOT NULL DEFAULT 0 COMMENT '当前SKU已经换标的实物件数,不可二次换标', PRIMARY KEY (id), @@ -2725,14 +2725,14 @@ CREATE TABLE ll_return_inventory_carton_item ( KEY idx_ll_return_inventory_carton_item_customer (customer_id,sku_code), CONSTRAINT chk_ll_return_inventory_carton_item_quantity CHECK ((quantity >= 0)), packing_reserved_quantity BIGINT NOT NULL DEFAULT 0 COMMENT '合箱计划预占件数' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货库存箱内SKU和数量'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货库存箱内SKU和数量'; CREATE TABLE ll_return_inventory_operation ( id bigint NOT NULL COMMENT '退货库存PDA操作ID', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作人ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容SHA-256', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作类型,当前MERGE', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容SHA-256', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作类型,当前MERGE', result_carton_id bigint DEFAULT NULL COMMENT '合箱结果退货库存箱ID', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '最后更新时间', @@ -2740,32 +2740,32 @@ CREATE TABLE ll_return_inventory_operation ( UNIQUE KEY uk_ll_return_inventory_operation_operator_key (operator_id,idempotency_key), KEY idx_ll_return_inventory_operation_result (result_carton_id), result_json JSON NULL COMMENT '幂等操作不可变返回快照' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货库存PDA合箱幂等操作审计'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货库存PDA合箱幂等操作审计'; CREATE TABLE ll_return_order ( id bigint NOT NULL COMMENT '退货订单ID', - customer_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - return_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '退货订单号', - overseas_warehouse_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', - warehouse_contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中转仓联系人快照', - warehouse_contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中转仓联系电话快照', - customer_reference_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户参考号', + customer_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + return_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货订单号', + overseas_warehouse_id varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + warehouse_contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中转仓联系人快照', + warehouse_contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中转仓联系电话快照', + customer_reference_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户参考号', need_relabel tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否需要换标', relabel_application_id bigint DEFAULT NULL COMMENT '绑定换标申请单ID', - relabel_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '绑定换标单号', - relabel_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标状态', + relabel_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '绑定换标单号', + relabel_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标状态', lastleg_order_id bigint DEFAULT NULL COMMENT '尾程订单ID', - lastleg_order_no varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '尾程订单号', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PENDING_RECEIPT、PARTIALLY_RECEIVED或COMPLETED', + lastleg_order_no varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '尾程订单号', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PENDING_RECEIPT、PARTIALLY_RECEIVED或COMPLETED', expected_sku_types int NOT NULL COMMENT '预报SKU种类数', expected_quantity bigint NOT NULL COMMENT '预报总数量', received_quantity bigint NOT NULL DEFAULT '0' COMMENT '累计实收总数量', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户备注', - discrepancy_reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手动完结差异原因', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户备注', + discrepancy_reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '手动完结差异原因', manually_completed_at datetime(3) DEFAULT NULL COMMENT '手动差异完结时间', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建请求SHA-256', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建操作人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建请求SHA-256', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建操作人ID', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '最后更新时间', PRIMARY KEY (id), @@ -2773,14 +2773,14 @@ CREATE TABLE ll_return_order ( UNIQUE KEY uk_ll_return_order_customer_key (customer_id,idempotency_key), KEY idx_ll_return_order_warehouse_status (overseas_warehouse_id,status,created_at), CONSTRAINT chk_ll_return_order_quantity CHECK (((expected_sku_types > 0) and (expected_quantity > 0) and (received_quantity >= 0) and (received_quantity <= expected_quantity))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户退货订单及SKU实收汇总'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户退货订单及SKU实收汇总'; CREATE TABLE ll_return_order_item ( id bigint NOT NULL COMMENT '退货预报明细ID', return_order_id bigint NOT NULL COMMENT '退货订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name_zh varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '中文品名', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name_zh varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '中文品名', expected_quantity bigint NOT NULL COMMENT 'SKU预报数量', received_quantity bigint NOT NULL DEFAULT '0' COMMENT 'SKU累计实收数量', created_at datetime(3) NOT NULL COMMENT '创建时间', @@ -2789,24 +2789,24 @@ CREATE TABLE ll_return_order_item ( UNIQUE KEY uk_ll_return_item_order_sku (return_order_id,sku_code), KEY idx_ll_return_item_sku (sku_code,received_quantity), CONSTRAINT chk_ll_return_item_quantity CHECK (((expected_quantity > 0) and (received_quantity >= 0) and (received_quantity <= expected_quantity))) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户退货订单的SKU预报与实收明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户退货订单的SKU预报与实收明细'; CREATE TABLE ll_return_receipt ( id bigint NOT NULL COMMENT 'PDA退货签收单ID', return_order_id bigint NOT NULL COMMENT '退货订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - receipt_no varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收单号', - receipt_batch_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收批次号', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本次签收绑定的托盘码', - carton_mark varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '签收生成或绑定的退货箱号', - tracking_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本次签收包裹的可选快递单号', - bound_by varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '开始签收方式,RETURN_NO退货单号或SKU候选', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收状态,当前SIGNED', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + receipt_no varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收单号', + receipt_batch_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收批次号', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次签收绑定的托盘码', + carton_mark varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '签收生成或绑定的退货箱号', + tracking_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次签收包裹的可选快递单号', + bound_by varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '开始签收方式,RETURN_NO退货单号或SKU候选', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收状态,当前SIGNED', received_quantity bigint NOT NULL COMMENT '本次实收数量', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA操作人ID', - operator_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA操作人名称', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA确认幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'PDA确认请求SHA-256', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA操作人ID', + operator_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA操作人名称', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA确认幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'PDA确认请求SHA-256', signed_at datetime(3) NOT NULL COMMENT '签收时间', created_at datetime(3) NOT NULL COMMENT '创建时间', PRIMARY KEY (id), @@ -2825,49 +2825,49 @@ CREATE TABLE ll_return_receipt ( weight DECIMAL(12,3) NULL COMMENT '实测重量kg', original_packaging TINYINT(1) NULL COMMENT '是否使用原箱原包装', measurement_source VARCHAR(32) NULL COMMENT '尺寸重量来源' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PDA退货实收签收事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PDA退货实收签收事实'; CREATE TABLE ll_return_receipt_batch ( id bigint NOT NULL COMMENT '退货仓储计费批次ID', return_order_id bigint NOT NULL COMMENT '退货订单ID', receipt_id bigint NOT NULL COMMENT 'PDA退货签收单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - batch_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收批次号', - overseas_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', - storage_billing_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '仓储计费状态,初始PENDING_PRICING', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + batch_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收批次号', + overseas_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', + storage_billing_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓储计费状态,初始PENDING_PRICING', storage_started_at datetime(3) NOT NULL COMMENT '仓储计费起算时间', created_at datetime(3) NOT NULL COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_return_batch_no (batch_no), UNIQUE KEY uk_ll_return_batch_receipt (receipt_id), KEY idx_ll_return_batch_billing (customer_id,overseas_warehouse_id,storage_billing_status,storage_started_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='每次退货签收生成的仓储费起算批次'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='每次退货签收生成的仓储费起算批次'; CREATE TABLE ll_return_receipt_item ( id bigint NOT NULL COMMENT '签收SKU明细ID', receipt_id bigint NOT NULL COMMENT 'PDA退货签收单ID', return_order_item_id bigint NOT NULL COMMENT '退货预报明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', - sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', + sku_code varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', received_quantity bigint NOT NULL COMMENT '本次SKU实收数量', PRIMARY KEY (id), KEY idx_ll_return_receipt_item_receipt (receipt_id), KEY idx_ll_return_receipt_item_order_item (return_order_item_id), CONSTRAINT chk_ll_return_receipt_item_quantity CHECK ((received_quantity > 0)), box_count BIGINT NULL COMMENT 'SKU签收箱数' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PDA退货签收SKU实际数量明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PDA退货签收SKU实际数量明细'; CREATE TABLE ll_us_truck_order ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - order_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '订单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + order_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '订单号', vehicle_type VARCHAR(32) NULL COMMENT '车辆类型:PALLET_15为15拖,PALLET_30为30拖;拼车未提供时为空', - origin varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '起运地', - origin_address varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '起运地址', - destination varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '目的地', - destination_address varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的地址', + origin varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起运地', + origin_address varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起运地址', + destination varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '目的地', + destination_address varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地址', pallet_count INT NOT NULL DEFAULT 0 COMMENT '确认托盘数;独立下单首次实收确定,拼车来源取真实预报', package_count int DEFAULT NULL COMMENT '可选箱数,零或空值均有效', received_pallet_count int NOT NULL DEFAULT '0' COMMENT 'PDA实收托盘数', @@ -2875,18 +2875,18 @@ CREATE TABLE ll_us_truck_order ( total_weight_kg decimal(18,3) NOT NULL DEFAULT '0.000' COMMENT '总重量(千克)', total_volume_cbm decimal(18,6) NOT NULL DEFAULT '0.000000' COMMENT '总体积(立方米)', budget_amount decimal(18,2) DEFAULT NULL COMMENT '预算金额', - currency varchar(3) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'USD' COMMENT '币种', + currency varchar(3) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'USD' COMMENT '币种', origin_contact_name VARCHAR(128) NULL COMMENT '起运地联系人', origin_contact_phone VARCHAR(128) NULL COMMENT '起运地联系电话', destination_contact_name VARCHAR(128) NULL COMMENT '目的地联系人', destination_contact_phone VARCHAR(128) NULL COMMENT '目的地联系电话', pickup_at DATETIME NULL COMMENT '取货时间,按填写的日期时分保存,不转换时区', delivery_at DATETIME NULL COMMENT '送货时间,按填写的日期时分保存;拼车来源未提供时为空', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '美国卡车订单状态', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '美国卡车订单状态', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '更新时间', @@ -2895,31 +2895,31 @@ CREATE TABLE ll_us_truck_order ( UNIQUE KEY uk_ll_us_truck_order_key (customer_id,idempotency_key), KEY idx_ll_us_truck_order_list (customer_id,status,created_at), KEY idx_ll_us_truck_order_date (customer_id,pickup_at,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='美国卡车运输订单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='美国卡车运输订单'; CREATE TABLE ll_us_truck_order_operation ( id bigint NOT NULL COMMENT '操作记录ID', order_id bigint NOT NULL COMMENT '美国卡车订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '具名操作类型', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作请求内容哈希', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '具名操作类型', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作请求内容哈希', result_version bigint NOT NULL COMMENT '操作完成后的订单版本', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_us_truck_operation_key (customer_id,order_id,idempotency_key), KEY idx_ll_us_truck_operation_order (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='美国卡车订单幂等操作账'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='美国卡车订单幂等操作账'; CREATE TABLE ll_us_truck_order_pallet ( id bigint NOT NULL COMMENT '托盘记录ID', order_id bigint NOT NULL COMMENT '美国卡车订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务托盘号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务托盘号', sequence_no int NOT NULL COMMENT '订单内托盘序号', - source varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '托盘来源:订单计划或PDA超收', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '托盘状态:待收、已收或超收待审核', + source varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘来源:订单计划或PDA超收', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘状态:待收、已收或超收待审核', warehouse_pallet_id bigint DEFAULT NULL COMMENT '仓库实物托盘资源ID', package_count int DEFAULT NULL COMMENT '托盘箱数', received_at datetime(3) DEFAULT NULL COMMENT '实收时间', @@ -2929,22 +2929,22 @@ CREATE TABLE ll_us_truck_order_pallet ( UNIQUE KEY uk_ll_us_truck_order_pallet_no (customer_id,order_id,pallet_no), UNIQUE KEY uk_ll_us_truck_order_pallet_seq (customer_id,order_id,sequence_no), KEY idx_ll_us_truck_order_pallet_list (customer_id,order_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='美国卡车订单托盘实收记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='美国卡车订单托盘实收记录'; CREATE TABLE ll_us_truck_order_status_history ( id bigint NOT NULL COMMENT '主键ID', order_id bigint NOT NULL COMMENT '订单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '具名操作类型', - from_status varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '变更前状态', - to_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后状态', - operator_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作人ID', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作幂等键', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '具名操作类型', + from_status varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '变更前状态', + to_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后状态', + operator_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作幂等键', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_us_truck_history (customer_id,order_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='美国卡车订单状态历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='美国卡车订单状态历史'; CREATE TABLE ll_fleet_driver ( id BIGINT NOT NULL COMMENT '内部主键', @@ -3006,19 +3006,19 @@ CREATE TABLE ll_vehicle ( max_load_kg DECIMAL(12,3) NULL COMMENT '最大载重,千克', max_volume_cbm DECIMAL(12,3) NULL COMMENT '可用容积,立方米', id bigint NOT NULL COMMENT '车辆档案ID', - plate_number varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '车牌号', - model varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '车型', + plate_number varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车牌号', + model varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车型', fuel_consumption_per100_km decimal(10,2) NOT NULL COMMENT '百公里油耗,单位升', mileage_km bigint NOT NULL COMMENT '当前公里码,单位公里', - driver_or_dispatch_company varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '司机姓名或外派单位', - phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '司机或外派单位联系电话', - region varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '区域:DOMESTIC/OVERSEAS', - ownership varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '车辆归属:OWNED/DISPATCHED', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '状态:IN_SERVICE/DISPATCHED/MAINTENANCE/INACTIVE/RETURNED', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + driver_or_dispatch_company varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机姓名或外派单位', + phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '司机或外派单位联系电话', + region varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '区域:DOMESTIC/OVERSEAS', + ownership varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '车辆归属:OWNED/DISPATCHED', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '状态:IN_SERVICE/DISPATCHED/MAINTENANCE/INACTIVE/RETURNED', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', record_version bigint NOT NULL DEFAULT '0' COMMENT '乐观锁版本', - created_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建人', - updated_by varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '更新人', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '创建人', + updated_by varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '更新人', created_at datetime(3) NOT NULL COMMENT '创建时间', updated_at datetime(3) NOT NULL COMMENT '更新时间', PRIMARY KEY (id), @@ -3027,7 +3027,7 @@ CREATE TABLE ll_vehicle ( CONSTRAINT chk_ll_vehicle_capacity CHECK ((max_pallet_spaces IS NULL AND max_load_kg IS NULL AND max_volume_cbm IS NULL) OR (max_pallet_spaces IS NOT NULL AND max_load_kg IS NOT NULL AND max_volume_cbm IS NOT NULL AND max_pallet_spaces BETWEEN 1 AND 10000 AND max_load_kg > 0 AND max_volume_cbm > 0)) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='平台车辆主数据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='平台车辆主数据'; CREATE TABLE ll_fleet_vehicle_record ( id BIGINT NOT NULL COMMENT '记录内部主键', @@ -3159,7 +3159,7 @@ CREATE TABLE ll_fleet_external_booking ( booking_no VARCHAR(32) NOT NULL COMMENT '外接预订业务编号', trip_id BIGINT NOT NULL COMMENT '所属车次', trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', customer_code VARCHAR(64) NOT NULL COMMENT '客户编号快照', customer_name VARCHAR(255) NOT NULL COMMENT '客户名称快照', status VARCHAR(16) NOT NULL COMMENT 'DRAFT询价/CONFIRMED占位/RECEIVED确认实收/BOUND关联发运/CANCELLED取消', @@ -3214,7 +3214,7 @@ CREATE TABLE ll_fleet_pool_order_link ( id BIGINT NOT NULL COMMENT '内部主键', booking_id BIGINT NOT NULL COMMENT '唯一外接预订', booking_no VARCHAR(64) NOT NULL COMMENT '预订业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围', business_type VARCHAR(32) NOT NULL COMMENT '本土散板或本土卡车商业类型', business_order_id BIGINT NOT NULL COMMENT '对应商业订单内部关联', business_order_no VARCHAR(64) NOT NULL COMMENT '本土商业订单业务编号', @@ -3352,7 +3352,7 @@ CREATE TABLE ll_fleet_quote ( UNIQUE KEY uk_fleet_quote_natural (natural_key), UNIQUE KEY uk_fleet_quote_create (created_by,create_key), KEY idx_fleet_quote_search (kind,status,valid_from,valid_to) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆采购与外接销售报价'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆采购与外接销售报价'; CREATE TABLE ll_fleet_quote_history ( id BIGINT PRIMARY KEY COMMENT '报价历史主键', @@ -3363,7 +3363,7 @@ CREATE TABLE ll_fleet_quote_history ( occurred_at DATETIME(3) NOT NULL COMMENT '操作时间UTC', snapshot_json JSON NOT NULL COMMENT '报价完整版本快照', UNIQUE KEY uk_fleet_quote_history_version (quote_id,record_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆报价不可变版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆报价不可变版本历史'; CREATE TABLE ll_fleet_trip_cost ( id BIGINT NOT NULL COMMENT '内部主键', @@ -3420,17 +3420,17 @@ CREATE TABLE ll_fleet_trip_history ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输车次操作历史'; CREATE TABLE ll_wallet_event_inbox ( - event_id varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国内Finance资金结果事件ID', - command_event_id varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原海外资金指令事件ID', - payload_hash varchar(71) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化载荷SHA-256,包含sha256:前缀', + event_id varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '国内Finance资金结果事件ID', + command_event_id varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原海外资金指令事件ID', + payload_hash varchar(71) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化载荷SHA-256,包含sha256:前缀', payload_json json NOT NULL COMMENT '冻结事件信封', - status varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'RECEIVED或PROCESSED', + status varchar(16) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'RECEIVED或PROCESSED', received_at datetime(3) NOT NULL COMMENT '接收时间', processed_at datetime(3) DEFAULT NULL COMMENT '处理完成时间', PRIMARY KEY (event_id), UNIQUE KEY uk_ll_wallet_command_result (command_event_id), KEY idx_ll_wallet_event_status (status,received_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='跨区客户资金结果幂等收件箱'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='跨区客户资金结果幂等收件箱'; CREATE TABLE ll_warehouse_transfer_carton ( length_cm DECIMAL(12,2) NULL COMMENT '箱子实测长度厘米', @@ -3448,34 +3448,34 @@ CREATE TABLE ll_warehouse_transfer_carton ( id bigint NOT NULL COMMENT '预报箱主键', transfer_order_id bigint NOT NULL COMMENT '转运单ID', transfer_item_id bigint DEFAULT NULL COMMENT '转运申报明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - carton_mark varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '系统生成的一箱一码箱唛', - customer_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户原箱唛,用于换标现场绑定', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '系统生成的一箱一码箱唛', + customer_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户原箱唛,用于换标现场绑定', carton_index int NOT NULL COMMENT '全单箱序号', total_cartons int NOT NULL COMMENT '首次生成时全单总箱数', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'EXPECTED' COMMENT '箱状态:EXPECTED待实收', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'EXPECTED' COMMENT '箱状态:EXPECTED待实收', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_wh_transfer_carton_mark (customer_id,carton_mark), UNIQUE KEY uk_ll_wh_transfer_carton_index (transfer_order_id,carton_index), KEY idx_ll_wh_transfer_carton_list (customer_id,transfer_order_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运系统箱唛预报'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运系统箱唛预报'; CREATE TABLE ll_warehouse_transfer_inventory_allocation ( id bigint NOT NULL COMMENT '雪花主键', transfer_order_id bigint NOT NULL COMMENT '转仓单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', inventory_position_id bigint NOT NULL COMMENT '来源库存仓位记录ID', inventory_balance_id bigint NOT NULL COMMENT '来源库存余额记录ID', inbound_order_id bigint NOT NULL COMMENT '来源入仓单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源入仓单号快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源入仓单号快照', pallet_id bigint NOT NULL COMMENT '来源托盘ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源托盘号快照', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源托盘号快照', package_count int NOT NULL COMMENT '分配箱数', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '本次来源分配的实际SKU快照', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'RESERVED' COMMENT '分配状态', - active_position_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生效中的仓位排他键', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '本次来源分配的实际SKU快照', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'RESERVED' COMMENT '分配状态', + active_position_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '生效中的仓位排他键', allocated_at datetime(3) NOT NULL COMMENT '分配时间', shipped_at datetime(3) DEFAULT NULL COMMENT '出库时间', received_at datetime(3) DEFAULT NULL COMMENT '收货时间', @@ -3485,100 +3485,100 @@ CREATE TABLE ll_warehouse_transfer_inventory_allocation ( KEY idx_ll_wh_transfer_allocation_position (transfer_order_id,inventory_position_id), UNIQUE KEY uk_ll_wh_transfer_active_position (customer_id,active_position_key), KEY idx_ll_wh_transfer_allocation_list (customer_id,transfer_order_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转仓单来源库存分配记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转仓单来源库存分配记录'; CREATE TABLE ll_warehouse_transfer_item ( declared_quantity BIGINT NULL COMMENT 'SKU申报件数,非预计或实收箱数', id bigint NOT NULL COMMENT '主键ID', transfer_order_id bigint NOT NULL COMMENT '转仓单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - sku_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', - product_name_zh varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品中文名称', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + sku_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', + product_name_zh varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '产品中文名称', package_count int NOT NULL COMMENT '箱数', - shipping_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '运输唛头', + shipping_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '运输唛头', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), KEY idx_ll_wh_transfer_item_list (customer_id,transfer_order_id), KEY idx_ll_wh_transfer_item_sku (customer_id,sku_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转仓货物冻结明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转仓货物冻结明细'; CREATE TABLE ll_warehouse_transfer_order ( id bigint NOT NULL COMMENT '主键ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - transfer_no varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '转仓单号', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + transfer_no varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '转仓单号', inbound_order_id bigint NOT NULL COMMENT '入仓单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号快照', lastleg_order_id bigint NOT NULL COMMENT '尾程订单ID', - lastleg_order_no varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '尾程订单号', - operating_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入库中转仓ID', - fba_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '可选FBA目的仓编码', - destination_type varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', - destination_warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓ID快照', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓编码快照', - destination_warehouse_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的仓名称快照', - private_destination_address varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓完整地址', - private_destination_postal_code varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓邮编', - private_destination_contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系人', - private_destination_contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '私人仓联系电话', - delivery_address varchar(1000) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '提货地址或中转仓收货地址', - pickup_contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '提货联系人', - pickup_contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '提货联系电话', + lastleg_order_no varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '尾程订单号', + operating_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入库中转仓ID', + fba_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA目的仓编码', + destination_type varchar(16) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的类型:FBA或PRIVATE', + destination_warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓ID快照', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓编码快照', + destination_warehouse_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的仓名称快照', + private_destination_address varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓完整地址', + private_destination_postal_code varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓邮编', + private_destination_contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系人', + private_destination_contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '私人仓联系电话', + delivery_address varchar(1000) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '提货地址或中转仓收货地址', + pickup_contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货联系人', + pickup_contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '提货联系电话', package_count int NOT NULL COMMENT '箱数', - delivery_method varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓方式', + delivery_method varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓方式', estimated_arrival_at datetime(3) NULL COMMENT '预计入仓时间,库存转运不填写', estimated_ship_at datetime(3) DEFAULT NULL COMMENT '预计发货时间', - fba_shipment_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '可选FBA货件编号', - tracking_no varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '物流跟踪号', - fba_box_nos varchar(2000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA箱号集合', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + fba_shipment_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '可选FBA货件编号', + tracking_no varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物流跟踪号', + fba_box_nos varchar(2000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA箱号集合', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', need_relabel tinyint NOT NULL DEFAULT '0' COMMENT '是否需要换标', relabel_application_id bigint DEFAULT NULL COMMENT '换标申请单ID', - relabel_no varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标申请单号', + relabel_no varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标申请单号', relabel_completed_at datetime(3) DEFAULT NULL COMMENT '关联贴标完成时间', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', - review_decision varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核决定', - review_remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核备注或驳回原因', - reviewed_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审核人ID', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'PENDING_REVIEW' COMMENT '业务状态', + review_decision varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核决定', + review_remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核备注或驳回原因', + reviewed_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '审核人ID', reviewed_at datetime(3) DEFAULT NULL COMMENT '审核时间', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务幂等键', - allocation_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '库存分配幂等键', - allocation_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '库存分配请求哈希', - outbound_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '出库幂等键', - outbound_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '出库请求哈希', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务幂等键', + allocation_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '库存分配幂等键', + allocation_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '库存分配请求哈希', + outbound_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库幂等键', + outbound_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '出库请求哈希', outbound_at datetime(3) DEFAULT NULL COMMENT '出库时间', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '请求内容哈希', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求内容哈希', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', label_deadline datetime(3) DEFAULT NULL COMMENT '换标截止时间', - relabel_contact_name varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标联系人', - relabel_contact_phone varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标联系电话', + relabel_contact_name varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标联系人', + relabel_contact_phone varchar(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标联系电话', relabel_charge_amount decimal(20,2) DEFAULT NULL COMMENT '换标费用CNY', - relabel_delivery_method varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '换标后派送方式', - palletize_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA打托幂等键', - palletize_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA打托请求哈希', - confirmation_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户测量确认幂等键', - confirmation_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户测量确认请求哈希', + relabel_delivery_method varchar(32) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '换标后派送方式', + palletize_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA打托幂等键', + palletize_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA打托请求哈希', + confirmation_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户测量确认幂等键', + confirmation_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '客户测量确认请求哈希', customer_confirmed_at datetime(3) DEFAULT NULL COMMENT '客户确认测量时间', - destination_binding_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的地绑定幂等键', - destination_binding_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '目的地绑定请求哈希', + destination_binding_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地绑定幂等键', + destination_binding_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '目的地绑定请求哈希', PRIMARY KEY (id), UNIQUE KEY uk_ll_wh_transfer_no (customer_id,transfer_no), UNIQUE KEY uk_ll_wh_transfer_key (customer_id,idempotency_key), UNIQUE KEY uk_ll_wh_transfer_tail_order (lastleg_order_id), KEY idx_ll_wh_transfer_list (customer_id,status,created_at), KEY idx_ll_wh_transfer_inbound (customer_id,inbound_code) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户转仓单'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户转仓单'; CREATE TABLE ll_warehouse_transfer_pallet ( id bigint NOT NULL COMMENT '打托事实ID', transfer_order_id bigint NOT NULL COMMENT '转运单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', sequence_no int NOT NULL COMMENT '托序号', warehouse_pallet_id bigint DEFAULT NULL COMMENT '生成后的海外仓真实托盘ID', - pallet_no varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '生成后的真实托盘码', + pallet_no varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '生成后的真实托盘码', warehouse_location_id bigint DEFAULT NULL COMMENT '生成后的真实库位ID', - warehouse_location_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '真实库位码', + warehouse_location_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '真实库位码', warehouse_resource_lock_id bigint DEFAULT NULL COMMENT '生成后的仓储资源锁ID', carton_count int NOT NULL COMMENT '本托实收箱数', length_cm decimal(12,2) NOT NULL COMMENT '实测长cm', @@ -3586,11 +3586,11 @@ CREATE TABLE ll_warehouse_transfer_pallet ( height_cm decimal(12,2) NOT NULL COMMENT '实测高cm', gross_weight_kg decimal(12,3) NOT NULL COMMENT '实测毛重kg', volume_cbm decimal(18,6) NOT NULL COMMENT '实测体积CBM', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '逐托状态DRAFT/GENERATED/BOUND/COMPLETED', - draft_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '草稿保存幂等键', - draft_request_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '草稿请求摘要', - generate_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '新托盘生成幂等键', - bind_idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '扫码绑定幂等键', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '逐托状态DRAFT/GENERATED/BOUND/COMPLETED', + draft_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '草稿保存幂等键', + draft_request_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '草稿请求摘要', + generate_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '新托盘生成幂等键', + bind_idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '扫码绑定幂等键', bound_at datetime(3) DEFAULT NULL COMMENT '扫码确认绑定时间', completed_at datetime(3) DEFAULT NULL COMMENT '整单打托完成时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -3599,50 +3599,50 @@ CREATE TABLE ll_warehouse_transfer_pallet ( UNIQUE KEY uk_ll_transfer_pallet_seq (transfer_order_id,sequence_no), UNIQUE KEY uk_ll_transfer_pallet_physical (customer_id,warehouse_pallet_id), KEY idx_ll_transfer_pallet_order (customer_id,transfer_order_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运PDA实测打托事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运PDA实测打托事实'; CREATE TABLE ll_warehouse_transfer_pallet_item ( id bigint NOT NULL COMMENT '主键ID', transfer_order_id bigint NOT NULL COMMENT '转运单ID', transfer_pallet_id bigint NOT NULL COMMENT '转运托盘事实ID', transfer_item_id bigint NOT NULL COMMENT '转运申报明细ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', package_count int NOT NULL COMMENT '本托该SKU实收箱数', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_transfer_pallet_item (transfer_pallet_id,transfer_item_id), KEY idx_ll_transfer_pallet_item_order (customer_id,transfer_order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运每托SKU箱数回填'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运每托SKU箱数回填'; CREATE TABLE ll_warehouse_transfer_measurement_photo ( id bigint NOT NULL COMMENT '测量照片引用ID', transfer_order_id bigint NOT NULL COMMENT '仓储转运单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', file_id bigint NOT NULL COMMENT '文件服务文件ID', - file_name varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件名快照', - content_type varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '文件媒体类型快照', + file_name varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件名快照', + content_type varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '文件媒体类型快照', size_bytes bigint NOT NULL DEFAULT '0' COMMENT '文件字节数快照', - uploaded_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'PDA上传操作人', + uploaded_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'PDA上传操作人', uploaded_at datetime(3) NOT NULL COMMENT '上传时间', submitted_at datetime(3) DEFAULT NULL COMMENT '随测量打托提交时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_transfer_measurement_photo_file (customer_id,transfer_order_id,file_id), KEY idx_ll_transfer_measurement_photo_order (customer_id,transfer_order_id,uploaded_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运PDA测量现场照片引用'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运PDA测量现场照片引用'; CREATE TABLE ll_warehouse_transfer_receipt ( id bigint NOT NULL COMMENT '雪花主键', transfer_order_id bigint NOT NULL COMMENT '转仓单ID', allocation_id bigint NOT NULL COMMENT '库存分配记录ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', source_inventory_position_id bigint NOT NULL COMMENT '来源库存仓位记录ID', destination_inventory_balance_id bigint NOT NULL COMMENT '目标库存余额记录ID', destination_inventory_position_id bigint NOT NULL COMMENT '目标库存仓位记录ID', package_count int NOT NULL COMMENT '收货箱数', - idempotency_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '收货幂等键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '收货请求哈希', - inventory_operation_key varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存操作幂等键', - created_by varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '创建人ID', + idempotency_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '收货幂等键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '收货请求哈希', + inventory_operation_key varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存操作幂等键', + created_by varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人ID', received_at datetime(3) NOT NULL COMMENT '收货时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), @@ -3650,7 +3650,7 @@ CREATE TABLE ll_warehouse_transfer_receipt ( UNIQUE KEY uk_ll_wh_transfer_receipt_key (customer_id,idempotency_key), UNIQUE KEY uk_ll_wh_transfer_receipt_operation (customer_id,inventory_operation_key), KEY idx_ll_wh_transfer_receipt_list (customer_id,transfer_order_id,received_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转仓来源仓位的目标库存收货记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转仓来源仓位的目标库存收货记录'; CREATE TABLE ll_warehouse_transfer_receipt_command ( id BIGINT NOT NULL COMMENT '收货命令主键', @@ -3675,41 +3675,41 @@ CREATE TABLE ll_warehouse_transfer_receipt_command ( UNIQUE KEY uk_ll_wh_receipt_cmd_key (customer_id, idempotency_key), KEY idx_ll_wh_receipt_cmd_target (customer_id, transfer_order_id, target_pallet_id), CONSTRAINT ck_ll_wh_receipt_cmd_status CHECK (status IN ('PREPARED','RESERVED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; CREATE TABLE ll_warehouse_transfer_relabel_binding ( id bigint NOT NULL COMMENT '主键ID', transfer_order_id bigint NOT NULL COMMENT '转运单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', - operation_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标类型', - customer_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户原箱唛', - original_sku varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '旧SKU', - new_sku varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '新SKU', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', + operation_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标类型', + customer_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户原箱唛', + original_sku varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '旧SKU', + new_sku varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '新SKU', quantity int NOT NULL COMMENT '换标件数', - fba_carton_mark varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '新FBA箱唛', - destination_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'FBA目的仓', - remark varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + fba_carton_mark varchar(255) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '新FBA箱唛', + destination_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'FBA目的仓', + remark varchar(1000) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', source_allocation_id bigint DEFAULT NULL COMMENT '已有库存转运的原始来源分配ID', relabel_item_id bigint DEFAULT NULL COMMENT '本票关联换标明细ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_transfer_relabel_mark (transfer_order_id,customer_carton_mark), KEY idx_ll_transfer_relabel_order (customer_id,transfer_order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储转运换标预绑定明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储转运换标预绑定明细'; CREATE TABLE ll_warehouse_transfer_source_order ( id bigint NOT NULL COMMENT '主键ID', transfer_order_id bigint NOT NULL COMMENT '转仓单ID', - customer_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户租户ID', + customer_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户租户ID', source_lastleg_order_id bigint NOT NULL COMMENT '来源尾程订单ID', - source_lastleg_order_no varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '来源尾程订单号', + source_lastleg_order_no varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '来源尾程订单号', inbound_order_id bigint NOT NULL COMMENT '入仓单ID', - inbound_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入仓单号快照', + inbound_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入仓单号快照', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_ll_wh_transfer_source (transfer_order_id,source_lastleg_order_id), KEY idx_ll_wh_transfer_source_list (customer_id,transfer_order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转仓来源历史订单绑定'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转仓来源历史订单绑定'; -- 服务 schema:baiyue_lastlag_warehouse CREATE TABLE ll_return_packing_plan ( @@ -3742,19 +3742,19 @@ CREATE TABLE ll_return_packing_trace ( CONSTRAINT chk_return_packing_trace_quantity CHECK(quantity>0) ) ENGINE=InnoDB COMMENT='退货合箱逐SKU原始退货单不可变追溯'; -CREATE DATABASE IF NOT EXISTS baiyue_lastlag_warehouse DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; +CREATE DATABASE IF NOT EXISTS baiyue_lastlag_warehouse DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastlag_warehouse; CREATE TABLE wh_location ( id bigint unsigned NOT NULL COMMENT '库位ID(雪花ID)', customer_id bigint unsigned NOT NULL COMMENT '数据所属租户ID', warehouse_id bigint unsigned NOT NULL COMMENT '所属仓库ID', - location_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '仓库内唯一库位编码', - location_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库位类型', + location_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓库内唯一库位编码', + location_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库位类型', shared_overflow tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否系统共享溢出库位(A0)', max_load_kg decimal(18,3) NOT NULL COMMENT '最大承重(千克)', - status varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '库位状态:ACTIVE启用、INACTIVE停用', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', + status varchar(20) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '库位状态:ACTIVE启用、INACTIVE停用', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', created_by bigint unsigned DEFAULT NULL COMMENT '创建人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_by bigint unsigned DEFAULT NULL COMMENT '最后修改人ID', @@ -3764,20 +3764,20 @@ CREATE TABLE wh_location ( PRIMARY KEY (id), UNIQUE KEY uk_location_code (customer_id,warehouse_id,location_code,deleted), KEY idx_location_query (customer_id,warehouse_id,status,deleted) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓库库位表:按租户和仓库维护库位及承重信息'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓库库位表:按租户和仓库维护库位及承重信息'; CREATE TABLE wh_pallet ( id bigint unsigned NOT NULL COMMENT '托盘ID(雪花ID)', customer_id bigint unsigned NOT NULL COMMENT '数据所属租户ID', warehouse_id bigint unsigned NOT NULL COMMENT '所属仓库ID', location_id bigint unsigned DEFAULT NULL COMMENT '同仓库内绑定的库位ID,可为空', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '仓库内唯一托盘编码', - pallet_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '托盘类型', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '仓库内唯一托盘编码', + pallet_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '托盘类型', capacity_cbm decimal(18,4) NOT NULL DEFAULT '2.0000' COMMENT '托盘容量(立方米)', unit_price decimal(18,2) NOT NULL DEFAULT '0.00' COMMENT '托盘单价', - status varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'IDLE' COMMENT '托盘状态:IDLE闲置、OCCUPIED占用、SCRAPPED废弃', - remark varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注', - fba_warehouse_code varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '所属FBA仓编码', + status varchar(20) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'IDLE' COMMENT '托盘状态:IDLE闲置、OCCUPIED占用、SCRAPPED废弃', + remark varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + fba_warehouse_code varchar(128) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '所属FBA仓编码', created_by bigint unsigned DEFAULT NULL COMMENT '创建人ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_by bigint unsigned DEFAULT NULL COMMENT '最后修改人ID', @@ -3788,20 +3788,20 @@ CREATE TABLE wh_pallet ( UNIQUE KEY uk_pallet_code (customer_id,warehouse_id,pallet_code,deleted), KEY idx_pallet_query (customer_id,warehouse_id,status,deleted), KEY idx_pallet_location (customer_id,warehouse_id,location_id,deleted) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓库托盘表:按租户和仓库维护托盘、容量、单价及状态'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓库托盘表:按租户和仓库维护托盘、容量、单价及状态'; CREATE TABLE wh_pallet_batch ( id bigint NOT NULL COMMENT '批量托盘预留ID', warehouse_id bigint NOT NULL COMMENT '实际海外仓ID', - batch_key varchar(160) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '柜级入库计划批次稳定业务键', - request_hash char(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '规范化批量请求SHA-256摘要', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '批次状态:RESERVED、CONFIRMED、COMPENSATED', + batch_key varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '柜级入库计划批次稳定业务键', + request_hash char(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '规范化批量请求SHA-256摘要', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '批次状态:RESERVED、CONFIRMED、COMPENSATED', attempt_no int NOT NULL DEFAULT '1' COMMENT '同批次重新预留尝试次数', - confirm_command_key varchar(160) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '确认命令幂等键', - confirm_command_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '确认命令规范化SHA-256摘要', - compensate_command_key varchar(160) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '补偿命令幂等键', - compensate_command_hash char(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '补偿命令规范化SHA-256摘要', - compensate_reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '补偿原因', + confirm_command_key varchar(160) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '确认命令幂等键', + confirm_command_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '确认命令规范化SHA-256摘要', + compensate_command_key varchar(160) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '补偿命令幂等键', + compensate_command_hash char(64) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '补偿命令规范化SHA-256摘要', + compensate_reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '补偿原因', confirmed_at datetime(3) DEFAULT NULL COMMENT '确认绑定时间', compensated_at datetime(3) DEFAULT NULL COMMENT '补偿释放时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -3809,21 +3809,21 @@ CREATE TABLE wh_pallet_batch ( PRIMARY KEY (id), UNIQUE KEY uk_wh_pallet_batch_key (warehouse_id,batch_key), KEY idx_wh_pallet_batch_status (warehouse_id,status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜级入库计划批量托盘预留与确认记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜级入库计划批量托盘预留与确认记录'; CREATE TABLE wh_pallet_batch_item ( id bigint NOT NULL COMMENT '批量托盘明细ID', batch_id bigint NOT NULL COMMENT '所属批量托盘预留ID', customer_id bigint NOT NULL COMMENT '实际占用客户ID', warehouse_id bigint NOT NULL COMMENT '实际海外仓ID', - business_key varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '柜号入库计划序号组成的稳定业务键', - inbound_plan_no varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '入库计划号快照', + business_key varchar(100) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '柜号入库计划序号组成的稳定业务键', + inbound_plan_no varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '入库计划号快照', sequence_no int NOT NULL COMMENT '计划内托盘序号', pallet_id bigint NOT NULL COMMENT '公共实物托盘ID', - pallet_code varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '资源服务生成的规范托盘码快照', + pallet_code varchar(64) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资源服务生成的规范托盘码快照', location_id bigint NOT NULL COMMENT '公共托盘当前预留库位ID', resource_lock_id bigint NOT NULL COMMENT '按客户隔离的资源锁ID', - status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '明细状态:RESERVED、CONFIRMED、RELEASED', + status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '明细状态:RESERVED、CONFIRMED、RELEASED', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), @@ -3831,42 +3831,42 @@ CREATE TABLE wh_pallet_batch_item ( UNIQUE KEY uk_wh_pallet_batch_item_sequence (batch_id,sequence_no), KEY idx_wh_pallet_batch_item_pallet (pallet_id), KEY idx_wh_pallet_batch_item_batch (batch_id,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='柜级入库计划批量托盘明细与资源锁关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='柜级入库计划批量托盘明细与资源锁关联'; CREATE TABLE wh_pallet_business_binding ( id bigint NOT NULL COMMENT '主键ID', customer_id bigint NOT NULL COMMENT '客户租户ID', warehouse_id bigint NOT NULL COMMENT '仓库ID', - business_type varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务类型', - business_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '绑定业务记录ID', + business_type varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务类型', + business_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '绑定业务记录ID', pallet_id bigint NOT NULL COMMENT '托盘ID', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', PRIMARY KEY (id), UNIQUE KEY uk_wh_pallet_binding (customer_id,warehouse_id,business_type,business_id), KEY idx_wh_pallet_binding_pallet (pallet_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='托盘业务绑定关系'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='托盘业务绑定关系'; CREATE TABLE wh_pallet_operation ( id bigint NOT NULL COMMENT '托盘状态操作ID', - operation_key varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '跨服务幂等操作键', - request_hash varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '状态变更请求摘要', + operation_key varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '跨服务幂等操作键', + request_hash varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '状态变更请求摘要', warehouse_id bigint NOT NULL COMMENT '实际海外仓ID', pallet_id bigint NOT NULL COMMENT '实物托盘ID', - pallet_code varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实物托盘码快照', - before_status varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更前托盘状态', - after_status varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '变更后托盘状态', + pallet_code varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实物托盘码快照', + before_status varchar(20) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更前托盘状态', + after_status varchar(20) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '变更后托盘状态', before_location_id bigint DEFAULT NULL COMMENT '变更前库位ID,无库位托盘为空', after_location_id bigint DEFAULT NULL COMMENT '变更后库位ID,无库位托盘为空', before_version int NOT NULL COMMENT '变更前托盘版本', after_version int NOT NULL COMMENT '变更后托盘版本', - operation_status varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作状态:APPLIED已应用、COMPENSATED已补偿', - reason varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '操作原因', + operation_status varchar(32) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作状态:APPLIED已应用、COMPENSATED已补偿', + reason varchar(500) COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作原因', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', updated_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '更新时间', PRIMARY KEY (id), UNIQUE KEY uk_wh_pallet_operation_key (operation_key), KEY idx_wh_pallet_operation_pallet (warehouse_id,pallet_id,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='实物托盘状态幂等变更与补偿记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='实物托盘状态幂等变更与补偿记录'; CREATE TABLE wh_resource_lock ( id bigint unsigned NOT NULL COMMENT '主键ID', @@ -3874,10 +3874,10 @@ CREATE TABLE wh_resource_lock ( warehouse_id bigint unsigned NOT NULL COMMENT '仓库ID', pallet_id bigint unsigned NOT NULL COMMENT '托盘ID', location_id bigint unsigned NOT NULL COMMENT '库位ID', - business_type varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务类型', - business_id varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '业务记录ID', - reservation_key varchar(160) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '资源预留幂等键', - status varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '资源锁状态', + business_type varchar(50) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务类型', + business_id varchar(100) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '业务记录ID', + reservation_key varchar(160) COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '资源预留幂等键', + status varchar(20) COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'ACTIVE' COMMENT '资源锁状态', locked_at datetime(3) NOT NULL COMMENT '锁定时间', released_at datetime(3) DEFAULT NULL COMMENT '释放时间', created_at datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间', @@ -3887,7 +3887,7 @@ CREATE TABLE wh_resource_lock ( KEY idx_resource_lock_pallet (customer_id,warehouse_id,pallet_id,status), KEY idx_resource_lock_location (customer_id,warehouse_id,location_id,status), KEY idx_resource_lock_business (customer_id,business_type,business_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓储资源锁定记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓储资源锁定记录'; -- 必要系统种子;不写入测试客户、演示订单、示例供应商、快递、托盘或库位。 @@ -4338,17 +4338,17 @@ CREATE TABLE ll_appointment_impact_history ( -- SKU 换标实物转换:先执行本增量,再部署服务。不会自动改写存量业务事实。 CREATE TABLE ll_return_sku_conversion ( id BIGINT NOT NULL COMMENT 'SKU库存转换记录ID', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离键', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', application_id BIGINT NOT NULL COMMENT '换标申请ID', - relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标单号', + relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标单号', item_id BIGINT NOT NULL COMMENT '换标箱级明细ID', round_key VARCHAR(64) NOT NULL COMMENT '作业轮次,退回重做使用新轮次', carton_id BIGINT NOT NULL COMMENT '实物来源包裹或箱ID', carton_mark VARCHAR(128) NOT NULL COMMENT '完工时仓库识别码', - old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标前SKU', - new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标后SKU', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', + old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标前SKU', + new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标后SKU', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', quantity BIGINT NOT NULL COMMENT '实际完成转换件数', status VARCHAR(32) NOT NULL COMMENT 'APPLIED待客户确认/CONFIRMED已确认/REVERSED退回冲回', ownership_json LONGTEXT NOT NULL COMMENT '本次转换件数的来源退货单快照,供精确冲回', @@ -4361,7 +4361,7 @@ CREATE TABLE ll_return_sku_conversion ( KEY idx_return_sku_conversion_app(customer_id,application_id,status), KEY idx_return_sku_conversion_carton(customer_id,carton_id), CONSTRAINT chk_return_sku_conversion_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; -- PDA cargo discard photo evidence CREATE TABLE ll_cargo_discard_photo ( @@ -4379,7 +4379,7 @@ CREATE TABLE ll_cargo_discard_photo ( PRIMARY KEY (id), UNIQUE KEY uk_cargo_discard_photo_file (file_id), KEY idx_cargo_discard_photo_application (customer_id, application_id, pallet_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA货物废弃照片凭证'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA货物废弃照片凭证'; -- 货物废弃支持所有入库来源及散箱全量作业;不回填或修改历史单据。 @@ -4533,13 +4533,13 @@ CREATE TABLE ll_dispatch_appointment_allocation ( PRIMARY KEY(dispatch_item_id,batch_key,source_key,destination_key), KEY idx_dispatch_appointment_batch(batch_key,customer_id), KEY idx_dispatch_appointment_dispatch(dispatch_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; CREATE TABLE ll_appointment_work_commitment ( entity_key VARCHAR(160) NOT NULL COMMENT '原业务实体稳定键', state_json LONGTEXT NOT NULL COMMENT '原业务命令产生的只读语义影响基线,不是第二份可编辑计划', impact_version BIGINT NOT NULL DEFAULT 0 COMMENT '承诺影响单调递增版本', PRIMARY KEY (entity_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工作事项承诺影响审计基线'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='工作事项承诺影响审计基线'; CREATE TABLE ll_appointment_work_guard ( id INT NOT NULL COMMENT '工作事项协调锁,固定1', scan_cursor VARCHAR(128) NULL COMMENT '已开船来源同步游标', @@ -4551,7 +4551,7 @@ CREATE TABLE ll_appointment_work_guard ( synchronized_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '完整扫描已消费需求版本', scan_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '当前扫描需求版本,防跨页漂移', PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项同步与命令串行守卫'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项同步与命令串行守卫'; INSERT INTO ll_appointment_work_guard (id,initialized) VALUES (1,FALSE); CREATE TABLE ll_appointment_work ( @@ -4562,7 +4562,7 @@ CREATE TABLE ll_appointment_work ( state_json LONGTEXT NOT NULL COMMENT '工作关系责任跟进及影响基线,不保存可编辑业务执行事实', PRIMARY KEY (work_item_key), KEY idx_appointment_work_container (container_booking_id,retired) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项需求与关系'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项需求与关系'; CREATE TABLE ll_appointment_work_history ( id VARCHAR(36) NOT NULL COMMENT '历史记录标识', @@ -4578,7 +4578,7 @@ CREATE TABLE ll_appointment_work_history ( PRIMARY KEY (id), UNIQUE KEY uk_appointment_work_command (work_item_key,command_key), KEY idx_appointment_work_history (work_item_key,occurred_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项历史与幂等命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项历史与幂等命令'; -- 海外业务短单号分配时钟。 -- 仓储转运上门取货表归尾程服务,仅用于空库初始化。 @@ -4725,11 +4725,11 @@ CREATE TABLE ll_dispatch_truck_task ( active_order VARCHAR(193) NULL COMMENT '有效原单唯一键;取消置空,完成保留', PRIMARY KEY(dispatch_no), UNIQUE KEY uk_transport_trip(trip_no), UNIQUE KEY uk_transport_source(active_order), KEY idx_transport_order(customer_id,order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车与本土卡车原单关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车与本土卡车原单关联'; CREATE TABLE ll_dispatch_transport_create ( trip_no VARCHAR(64) NOT NULL PRIMARY KEY COMMENT '本次运输资源记录号', request_hash CHAR(64) NOT NULL COMMENT '首次安排请求摘要' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土卡车排车创建请求账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土卡车排车创建请求账本'; CREATE TABLE ll_dispatch_transport_command ( dispatch_no VARCHAR(64) NOT NULL COMMENT '排车业务号', request_key VARCHAR(128) NOT NULL COMMENT '客户端幂等请求键', @@ -4737,7 +4737,7 @@ CREATE TABLE ll_dispatch_transport_command ( evidence_json JSON NULL COMMENT '已确认运输完成凭证标识列表', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '业务命令提交时间', PRIMARY KEY(dispatch_no,request_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车运输执行命令与凭证账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车运输执行命令与凭证账本'; USE baiyue_lastleg; CREATE TABLE ll_document_sequence ( @@ -4745,7 +4745,7 @@ CREATE TABLE ll_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_ll_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水'; -- 海外费用资金及实收仓租。 -- 海外人工费用资金编排。金额与余额以 Finance 钱包为唯一事实,本表仅记录指令及回执状态。 @@ -4775,7 +4775,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_inbound ( created_at datetime(3) NOT NULL COMMENT '计租登记时间,采用协调世界时', PRIMARY KEY (receipt_id), KEY idx_storage_rent_inbound_lot (lot_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程实收计租幂等登记'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程实收计租幂等登记'; CREATE TABLE ll_storage_rent_lot ( id bigint NOT NULL COMMENT '原批次主键', @@ -4804,7 +4804,7 @@ CREATE TABLE ll_storage_rent_lot ( UNIQUE KEY uk_storage_rent_lot_source (source_key), KEY idx_storage_rent_stock (balance_id,batch_no), KEY idx_storage_rent_customer (customer_id,warehouse_id,inbound_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='实收计租原批次'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='实收计租原批次'; CREATE TABLE ll_storage_rent_share ( balance_id bigint DEFAULT NULL COMMENT '普通库存当前余额,退货箱份额为空', @@ -4821,7 +4821,7 @@ CREATE TABLE ll_storage_rent_share ( UNIQUE KEY uk_storage_rent_stock_share (lot_id,balance_id,batch_no), KEY idx_storage_rent_carton (customer_id,warehouse_id,carton_mark), KEY idx_storage_rent_share_stock (customer_id,warehouse_id,balance_id,batch_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='当前库存与原计租批次份额'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='当前库存与原计租批次份额'; CREATE TABLE ll_storage_rent_preparation ( id bigint NOT NULL COMMENT '预校验主键', @@ -4859,7 +4859,7 @@ CREATE TABLE ll_storage_rent_preparation ( KEY idx_storage_rent_business (customer_id,business_no), KEY idx_storage_rent_recovery (status,updated_at), KEY idx_storage_rent_release (release_status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓租扫码资金预占与结算快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓租扫码资金预占与结算快照'; CREATE TABLE ll_fleet_resource_photo ( resource_kind VARCHAR(16) NOT NULL COMMENT '档案类型:车辆或司机', diff --git a/firstleg/src/main/resources/db/phase3-direct-delivery-schema.sql b/firstleg/src/main/resources/db/phase3-direct-delivery-schema.sql index 537561dbf..265bb448b 100644 --- a/firstleg/src/main/resources/db/phase3-direct-delivery-schema.sql +++ b/firstleg/src/main/resources/db/phase3-direct-delivery-schema.sql @@ -16,4 +16,4 @@ CREATE TABLE IF NOT EXISTS fl_direct_delivery_unloading ( PRIMARY KEY (container_booking_id,inbound_id), UNIQUE KEY uk_direct_unloading_command (container_booking_id,idempotency_key), CONSTRAINT fk_direct_unloading_container FOREIGN KEY (container_booking_id) REFERENCES fl_container_booking(id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='直送目的仓真实卸货凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='直送目的仓真实卸货凭据'; diff --git a/firstleg/src/main/resources/db/phase4-sailing-calendar-schema.sql b/firstleg/src/main/resources/db/phase4-sailing-calendar-schema.sql index 828bd262f..28581c9de 100644 --- a/firstleg/src/main/resources/db/phase4-sailing-calendar-schema.sql +++ b/firstleg/src/main/resources/db/phase4-sailing-calendar-schema.sql @@ -23,7 +23,7 @@ CREATE TABLE fl_sailing_channel ( PRIMARY KEY (id), UNIQUE KEY uk_fl_sailing_channel_code (channel_code), KEY idx_fl_sailing_channel_status (status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing_template ( id BIGINT NOT NULL, @@ -59,7 +59,7 @@ CREATE TABLE fl_sailing_template ( KEY idx_fl_sailing_template_filter (warehouse_id,channel_id,status,weekday), CONSTRAINT ck_fl_sailing_template_weekday CHECK (weekday BETWEEN 1 AND 7), CONSTRAINT ck_fl_sailing_template_cutoff_days CHECK (cutoff_days BETWEEN 0 AND 30) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing ( id BIGINT NOT NULL, @@ -96,7 +96,7 @@ CREATE TABLE fl_sailing ( KEY idx_fl_sailing_calendar (etd_at,warehouse_id,channel_id,status), KEY idx_fl_sailing_route (departure_port_code,destination_port_code), CONSTRAINT ck_fl_sailing_status CHECK (status IN ('DRAFT','OPEN','CLOSED','DEPARTED','CANCELLED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; CREATE TABLE fl_sailing_history ( id BIGINT NOT NULL, @@ -110,7 +110,7 @@ CREATE TABLE fl_sailing_history ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), PRIMARY KEY (id), KEY idx_fl_sailing_history_sailing (sailing_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; USE baiyue_iam; diff --git a/lastleg-service/src/main/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidatePageMapper.java b/lastleg-service/src/main/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidatePageMapper.java index 307e5bc80..33ef3acb9 100644 --- a/lastleg-service/src/main/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidatePageMapper.java +++ b/lastleg-service/src/main/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidatePageMapper.java @@ -35,7 +35,7 @@ public interface DispatchCandidatePageMapper { } /** 在UNION前统一文本列,避免表字段、CAST及聚合结果采用不同collation而报1271;数值与时间保持原类型。 */ private static String column(String field,String expression) { - return (TEXT_FIELDS.contains(field)?"CONVERT("+expression+" USING utf8mb4) COLLATE utf8mb4_unicode_ci":expression)+" AS "+field; + return (TEXT_FIELDS.contains(field)?"CONVERT("+expression+" USING utf8mb4) COLLATE utf8mb4_0900_ai_ci":expression)+" AS "+field; } /** 不同来源用同一组筛选和稳定行标识组合,排序前排除未选来源类型。 */ private static String rows(boolean count) { diff --git a/lastleg-service/src/main/java/com/baiyue/lastleg/exceptionorder/mapper/ExceptionWorkflowMapper.java b/lastleg-service/src/main/java/com/baiyue/lastleg/exceptionorder/mapper/ExceptionWorkflowMapper.java index 0f0307e7a..9f1480661 100644 --- a/lastleg-service/src/main/java/com/baiyue/lastleg/exceptionorder/mapper/ExceptionWorkflowMapper.java +++ b/lastleg-service/src/main/java/com/baiyue/lastleg/exceptionorder/mapper/ExceptionWorkflowMapper.java @@ -24,11 +24,14 @@ public interface ExceptionWorkflowMapper { @Select(""" SELECT e.exception_no,p.vehicle_plate,e.customer_name,e.status,e.package_count, COALESCE((SELECT SUM(i.received_packages) FROM ll_exception_return_item i - WHERE i.exception_order_id=e.id AND i.customer_id=e.customer_id),0) received_packages, + WHERE i.exception_order_id=e.id + AND i.customer_id COLLATE utf8mb4_0900_ai_ci=e.customer_id COLLATE utf8mb4_0900_ai_ci),0) received_packages, r.order_no return_order_no - FROM ll_exception_order e JOIN ll_order r ON r.customer_id=e.customer_id - AND r.source_region='EXCEPTION_RETURN' AND r.source_inbound_id=CAST(e.id AS CHAR) - JOIN ll_delivery_order d ON d.id=e.delivery_order_id AND d.customer_id=e.customer_id + FROM ll_exception_order e JOIN ll_order r ON r.customer_id COLLATE utf8mb4_0900_ai_ci=e.customer_id COLLATE utf8mb4_0900_ai_ci + AND r.source_region='EXCEPTION_RETURN' + AND r.source_inbound_id=CAST(e.id AS CHAR CHARACTER SET utf8mb4) COLLATE utf8mb4_0900_ai_ci + JOIN ll_delivery_order d ON d.id=e.delivery_order_id + AND d.customer_id COLLATE utf8mb4_0900_ai_ci=e.customer_id COLLATE utf8mb4_0900_ai_ci LEFT JOIN ll_dispatch_order p ON p.id=d.dispatch_order_id WHERE e.overseas_warehouse_id=#{warehouse} AND e.status='PROCESSING' AND e.exception_type='RETURN' AND e.return_direction='OVERSEAS_WAREHOUSE' diff --git a/lastleg-service/src/main/resources/db/appointment-receiving.sql b/lastleg-service/src/main/resources/db/appointment-receiving.sql index a05355ee1..6ca0b47aa 100644 --- a/lastleg-service/src/main/resources/db/appointment-receiving.sql +++ b/lastleg-service/src/main/resources/db/appointment-receiving.sql @@ -8,7 +8,7 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_agreement ( snapshot_json LONGTEXT NOT NULL COMMENT '客户逐来源覆盖、确认时区及仓库依据快照', PRIMARY KEY (agreement_key), UNIQUE KEY uk_fba_receiving_confirmation (destination_key, confirmation_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='独立于送货批次的收货预约'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='独立于送货批次的收货预约'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_member ( agreement_key VARCHAR(64) NOT NULL COMMENT '所属收货预约业务键', @@ -18,7 +18,7 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_member ( PRIMARY KEY (agreement_key,batch_key,customer_id), UNIQUE KEY uk_fba_receiving_active_member (active_ref), KEY idx_fba_receiving_batch (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约当前覆盖关联及退出历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约当前覆盖关联及退出历史'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_change ( change_key VARCHAR(64) NOT NULL COMMENT '客户预约变化业务键', @@ -32,18 +32,18 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_change ( PRIMARY KEY (change_key), UNIQUE KEY uk_fba_receiving_pending (active_ref), KEY idx_fba_receiving_pending_batch (batch_key,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保留原安排且阻止误发车的客户变化'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='保留原安排且阻止误发车的客户变化'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_revision ( agreement_key VARCHAR(64) NOT NULL COMMENT '收货预约业务键', version INT NOT NULL COMMENT '不可变覆盖与确认版本', snapshot_json LONGTEXT NOT NULL COMMENT '该版本完整客户覆盖、确认时段及回复依据', PRIMARY KEY (agreement_key,version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约覆盖与确认不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约覆盖与确认不可变历史'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_plan ( batch_key VARCHAR(128) NOT NULL COMMENT '稳定送货批次键', customer_id VARCHAR(128) NOT NULL COMMENT '计划所属客户标识', snapshot_json LONGTEXT NOT NULL COMMENT '本客户未确认计划、目标窗口及业务时区,不含有效预约确认', PRIMARY KEY (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='按批次及客户保存的未确认收货计划'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='按批次及客户保存的未确认收货计划'; diff --git a/lastleg-service/src/main/resources/db/appointment-work.sql b/lastleg-service/src/main/resources/db/appointment-work.sql index 3db17dc47..af2d2d47e 100644 --- a/lastleg-service/src/main/resources/db/appointment-work.sql +++ b/lastleg-service/src/main/resources/db/appointment-work.sql @@ -11,13 +11,13 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_appointment_allocation ( PRIMARY KEY(dispatch_item_id,batch_key,source_key,destination_key), KEY idx_dispatch_appointment_batch(batch_key,customer_id), KEY idx_dispatch_appointment_dispatch(dispatch_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; CREATE TABLE IF NOT EXISTS ll_appointment_work_commitment ( entity_key VARCHAR(160) NOT NULL COMMENT '原业务实体稳定键', state_json LONGTEXT NOT NULL COMMENT '原业务命令产生的只读语义影响基线,不是第二份可编辑计划', impact_version BIGINT NOT NULL DEFAULT 0 COMMENT '承诺影响单调递增版本', PRIMARY KEY (entity_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工作事项承诺影响审计基线'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='工作事项承诺影响审计基线'; CREATE TABLE IF NOT EXISTS ll_appointment_work_guard ( id INT NOT NULL COMMENT '工作事项协调锁,固定1', scan_cursor VARCHAR(128) NULL COMMENT '已开船来源同步游标', @@ -29,7 +29,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work_guard ( synchronized_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '完整扫描已消费需求版本', scan_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '当前扫描需求版本,防跨页漂移', PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项同步与命令串行守卫'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项同步与命令串行守卫'; INSERT INTO ll_appointment_work_guard(id,initialized) SELECT 1,FALSE WHERE NOT EXISTS(SELECT 1 FROM ll_appointment_work_guard WHERE id=1); CREATE TABLE IF NOT EXISTS ll_appointment_work ( @@ -40,7 +40,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work ( state_json LONGTEXT NOT NULL COMMENT '工作关系责任跟进及影响基线,不保存可编辑业务执行事实', PRIMARY KEY (work_item_key), KEY idx_appointment_work_container (container_booking_id,retired) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项需求与关系'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项需求与关系'; CREATE TABLE IF NOT EXISTS ll_appointment_work_history ( id VARCHAR(36) NOT NULL COMMENT '历史记录标识', @@ -56,4 +56,4 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work_history ( PRIMARY KEY (id), UNIQUE KEY uk_appointment_work_command (work_item_key,command_key), KEY idx_appointment_work_history (work_item_key,occurred_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项历史与幂等命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项历史与幂等命令'; diff --git a/lastleg-service/src/main/resources/db/lastleg.sql b/lastleg-service/src/main/resources/db/lastleg.sql index df41d8e35..f11cf6155 100644 --- a/lastleg-service/src/main/resources/db/lastleg.sql +++ b/lastleg-service/src/main/resources/db/lastleg.sql @@ -1,6 +1,6 @@ SET NAMES utf8mb4; -CREATE DATABASE IF NOT EXISTS baiyue_lastleg DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; +CREATE DATABASE IF NOT EXISTS baiyue_lastleg DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; CREATE TABLE IF NOT EXISTS ll_loading_event_inbox ( @@ -1179,7 +1179,7 @@ CREATE TABLE ll_fleet_external_booking ( booking_no VARCHAR(32) NOT NULL COMMENT '外接预订业务编号', trip_id BIGINT NOT NULL COMMENT '所属车次', trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', customer_code VARCHAR(64) NOT NULL COMMENT '客户编号快照', customer_name VARCHAR(255) NOT NULL COMMENT '客户名称快照', status VARCHAR(16) NOT NULL COMMENT 'DRAFT询价/CONFIRMED占位/RECEIVED确认实收/BOUND关联发运/CANCELLED取消', @@ -1234,7 +1234,7 @@ CREATE TABLE ll_fleet_pool_order_link ( id BIGINT NOT NULL COMMENT '内部主键', booking_id BIGINT NOT NULL COMMENT '唯一外接预订', booking_no VARCHAR(64) NOT NULL COMMENT '预订业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围', business_type VARCHAR(32) NOT NULL COMMENT '本土散板或本土卡车商业类型', business_order_id BIGINT NOT NULL COMMENT '对应商业订单内部关联', business_order_no VARCHAR(64) NOT NULL COMMENT '本土商业订单业务编号', @@ -1386,7 +1386,7 @@ CREATE TABLE ll_fleet_quote ( UNIQUE KEY uk_fleet_quote_natural (natural_key), UNIQUE KEY uk_fleet_quote_create (created_by,create_key), KEY idx_fleet_quote_search (kind,status,valid_from,valid_to) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆采购与外接销售报价'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆采购与外接销售报价'; CREATE TABLE ll_fleet_quote_history ( id BIGINT PRIMARY KEY COMMENT '报价历史主键', @@ -1397,7 +1397,7 @@ CREATE TABLE ll_fleet_quote_history ( occurred_at DATETIME(3) NOT NULL COMMENT '操作时间UTC', snapshot_json JSON NOT NULL COMMENT '报价完整版本快照', UNIQUE KEY uk_fleet_quote_history_version (quote_id,record_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆报价不可变版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆报价不可变版本历史'; CREATE TABLE ll_fleet_trip_cost ( id BIGINT NOT NULL COMMENT '内部主键', @@ -1662,7 +1662,7 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_agreement ( snapshot_json LONGTEXT NOT NULL COMMENT '客户逐来源覆盖、确认时区及仓库依据快照', PRIMARY KEY (agreement_key), UNIQUE KEY uk_fba_receiving_confirmation (destination_key, confirmation_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='独立于送货批次的收货预约'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='独立于送货批次的收货预约'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_member ( agreement_key VARCHAR(64) NOT NULL COMMENT '所属收货预约业务键', @@ -1672,7 +1672,7 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_member ( PRIMARY KEY (agreement_key,batch_key,customer_id), UNIQUE KEY uk_fba_receiving_active_member (active_ref), KEY idx_fba_receiving_batch (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约当前覆盖关联及退出历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约当前覆盖关联及退出历史'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_change ( change_key VARCHAR(64) NOT NULL COMMENT '客户预约变化业务键', @@ -1686,21 +1686,21 @@ CREATE TABLE IF NOT EXISTS ll_fba_receiving_change ( PRIMARY KEY (change_key), UNIQUE KEY uk_fba_receiving_pending (active_ref), KEY idx_fba_receiving_pending_batch (batch_key,status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='保留原安排且阻止误发车的客户变化'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='保留原安排且阻止误发车的客户变化'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_revision ( agreement_key VARCHAR(64) NOT NULL COMMENT '收货预约业务键', version INT NOT NULL COMMENT '不可变覆盖与确认版本', snapshot_json LONGTEXT NOT NULL COMMENT '该版本完整客户覆盖、确认时段及回复依据', PRIMARY KEY (agreement_key,version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='收货预约覆盖与确认不可变历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='收货预约覆盖与确认不可变历史'; CREATE TABLE IF NOT EXISTS ll_fba_receiving_plan ( batch_key VARCHAR(128) NOT NULL COMMENT '稳定送货批次键', customer_id VARCHAR(128) NOT NULL COMMENT '计划所属客户标识', snapshot_json LONGTEXT NOT NULL COMMENT '本客户未确认计划、目标窗口及业务时区,不含有效预约确认', PRIMARY KEY (batch_key,customer_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='按批次及客户保存的未确认收货计划'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='按批次及客户保存的未确认收货计划'; CREATE TABLE IF NOT EXISTS ll_inbound_fba_appointment ( @@ -1731,7 +1731,7 @@ CREATE TABLE IF NOT EXISTS ll_inbound_fba_appointment ( UNIQUE KEY uk_ll_fba_appointment_no (appointment_no), KEY idx_ll_fba_appointment_list (appointment_at,appointment_status,fba_warehouse_code), KEY idx_ll_fba_appointment_planned (planned_at,appointment_status) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='FBA预约安排与正式确认唯一主记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='FBA预约安排与正式确认唯一主记录'; CREATE TABLE IF NOT EXISTS ll_inbound_fba_appointment_item ( id BIGINT NOT NULL COMMENT '记录主键', @@ -1753,7 +1753,7 @@ CREATE TABLE IF NOT EXISTS ll_inbound_fba_appointment_item ( KEY idx_ll_fba_active_order (customer_id,order_id,active), KEY idx_ll_fba_item_source_lookup (source_key,customer_id), KEY idx_ll_fba_item_customer_order (customer_id,order_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='入仓前后共用的预约真实货源'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='入仓前后共用的预约真实货源'; CREATE TABLE IF NOT EXISTS ll_appointment_cargo_verification ( id BIGINT NOT NULL COMMENT '核实记录主键', @@ -1776,7 +1776,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_cargo_verification ( UNIQUE KEY uk_ll_cargo_verification_command (customer_id,source_key,command_key), CONSTRAINT chk_ll_cargo_verification_quantity CHECK (package_count IS NULL OR package_count > 0), CONSTRAINT chk_ll_cargo_verification_version CHECK (version > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约货物核实资料及不可覆盖的版本历史'; CREATE TABLE IF NOT EXISTS ll_fba_appointment_command ( command_key VARCHAR(128) NOT NULL COMMENT '持久化幂等键', @@ -1788,7 +1788,7 @@ CREATE TABLE IF NOT EXISTS ll_fba_appointment_command ( created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建UTC时间', PRIMARY KEY(command_key), KEY idx_ll_fba_command_appointment(appointment_no,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约命令与变更历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约命令与变更历史'; ALTER TABLE ll_loading_order_status_history MODIFY COLUMN id BIGINT NOT NULL AUTO_INCREMENT COMMENT '状态历史主键', @@ -1939,7 +1939,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_order ( UNIQUE KEY uk_dispatch_trip (trip_id), KEY idx_ll_dispatch_order_list (overseas_warehouse_id,status,stage,created_at,id), KEY idx_ll_dispatch_order_vehicle (vehicle_plate,status,created_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='平台整车排车作业主单,客户归属在真实明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='平台整车排车作业主单,客户归属在真实明细'; CREATE TABLE IF NOT EXISTS ll_dispatch_history ( id BIGINT NOT NULL COMMENT '排车历史内部主键', @@ -1952,7 +1952,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_history ( occurred_at DATETIME(3) NOT NULL COMMENT '真实操作发生时间', PRIMARY KEY (id), KEY idx_dispatch_history_version (dispatch_id,record_version,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车版本与审核轮次的追加历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车版本与审核轮次的追加历史'; CREATE TABLE IF NOT EXISTS ll_dispatch_item ( customer_name VARCHAR(255) NULL COMMENT '本条真实客户名称快照', @@ -2194,7 +2194,7 @@ CREATE TABLE ll_return_stock_receipt ( KEY idx_return_stock_receipt_order(customer_id,order_id), KEY idx_return_stock_receipt_position(customer_id,inventory_balance_id,inventory_position_id), CONSTRAINT chk_return_stock_receipt_packages CHECK(received_packages>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='真实退回入仓及再次发运来源凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='真实退回入仓及再次发运来源凭据'; CREATE TABLE IF NOT EXISTS ll_dispatch_pda_pick_order ( id BIGINT NOT NULL COMMENT '主键ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户租户ID', pick_id BIGINT NOT NULL COMMENT 'PDA拣货记录ID', @@ -2245,7 +2245,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_command ( PRIMARY KEY (id), UNIQUE KEY uk_dispatch_command_key (idempotency_key), KEY idx_dispatch_command_history (dispatch_id,created_at,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车公共持久命令账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车公共持久命令账本'; CREATE TABLE IF NOT EXISTS ll_dispatch_delivery_arrangement ( id BIGINT NOT NULL COMMENT '安排事实内部主键', @@ -2264,7 +2264,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_delivery_arrangement ( UNIQUE KEY uk_dispatch_arrangement_dispatch (dispatch_order_id), UNIQUE KEY uk_dispatch_arrangement_key (arrangement_key), UNIQUE KEY uk_dispatch_arrangement_command (original_command_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='整车排车唯一派送安排事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='整车排车唯一派送安排事实'; CREATE TABLE IF NOT EXISTS ll_delivery_facts_changed ( id BIGINT NOT NULL COMMENT '持久信号内部主键', @@ -2285,7 +2285,7 @@ CREATE TABLE IF NOT EXISTS ll_delivery_facts_changed ( UNIQUE KEY uk_delivery_fact_version (customer_id,delivery_id,delivery_version), KEY idx_delivery_fact_due (state,next_attempt_at,id), KEY idx_delivery_fact_dispatch (dispatch_id,state,id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='正常签收事实变化的本地持久待汇总信号'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='正常签收事实变化的本地持久待汇总信号'; CREATE TABLE IF NOT EXISTS ll_outbound_pallet_item ( dispatch_item_id BIGINT NULL COMMENT '本次整车排车作业明细ID', @@ -2601,7 +2601,7 @@ CREATE TABLE IF NOT EXISTS ll_warehouse_transfer_receipt_command ( UNIQUE KEY uk_ll_wh_receipt_cmd_key (customer_id, idempotency_key), KEY idx_ll_wh_receipt_cmd_target (customer_id, transfer_order_id, target_pallet_id), CONSTRAINT ck_ll_wh_receipt_cmd_status CHECK (status IN ('PREPARED','RESERVED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; -- Customer relabel application: header, item snapshots, and immutable process history. CREATE TABLE IF NOT EXISTS ll_relabel_application ( @@ -3140,24 +3140,24 @@ CREATE TABLE IF NOT EXISTS ll_exception_return_item ( CREATE TABLE IF NOT EXISTS ll_return_carton_stock_receipt ( id BIGINT NOT NULL COMMENT '原箱回仓凭据明细标识', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户数据隔离键', - receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原箱回仓实收业务号', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户数据隔离键', + receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱回仓实收业务号', exception_order_id BIGINT NOT NULL COMMENT '本次异常退回订单', exception_return_item_id BIGINT NOT NULL COMMENT '本次冻结的原箱来源明细', delivery_order_id BIGINT NOT NULL COMMENT '原运输派送单', source_pick_id BIGINT NOT NULL COMMENT '原箱实际出库拣货凭据', - source_outbound_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原出库单业务号', + source_outbound_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库单业务号', source_dispatch_item_id BIGINT NOT NULL COMMENT '原排车货物明细', source_outbound_pallet_item_id BIGINT NOT NULL COMMENT '原出库托盘明细', return_carton_id BIGINT NOT NULL COMMENT '真实退货原箱标识', - carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原箱业务箱码快照', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际回仓海外仓标识', + carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原箱业务箱码快照', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际回仓海外仓标识', target_pallet_id BIGINT NOT NULL COMMENT '实际回仓目标实物托盘', - target_pallet_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际目标托盘业务码', + target_pallet_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标托盘业务码', target_location_id BIGINT NOT NULL COMMENT '实际回仓目标库位', - target_location_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际目标库位业务码', - sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '原出库快照中的商品编码', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '原出库快照中的中文品名', + target_location_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际目标库位业务码', + sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原出库快照中的商品编码', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '原出库快照中的中文品名', quantity BIGINT NOT NULL COMMENT '本次原SKU实际恢复件数', packages BIGINT NOT NULL COMMENT '本箱仅首条SKU记录计一箱其余为零', evidence_file_ids_json JSON NOT NULL COMMENT '本次实收证据文件引用', @@ -3251,9 +3251,9 @@ CREATE TABLE IF NOT EXISTS ll_destuff_pallet_cost_allocation ( -- 客户退货预报、PDA 签收与仓储费起算批次 CREATE TABLE IF NOT EXISTS ll_return_order ( -- need_relabel is added below for existing deployments - id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', return_no VARCHAR(128) NOT NULL COMMENT '退货订单号', overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', warehouse_contact_name VARCHAR(128) NULL COMMENT '中转仓联系人快照', warehouse_contact_phone VARCHAR(64) NULL COMMENT '中转仓联系电话快照', customer_reference_no VARCHAR(128) NULL COMMENT '客户参考号', lastleg_order_id BIGINT NULL COMMENT '尾程订单ID', lastleg_order_no VARCHAR(32) NULL COMMENT '尾程订单号', status VARCHAR(32) NOT NULL COMMENT 'PENDING_RECEIPT、PARTIALLY_RECEIVED或COMPLETED', expected_sku_types INT NOT NULL COMMENT '预报SKU种类数', expected_quantity BIGINT NOT NULL COMMENT '预报总数量', received_quantity BIGINT NOT NULL DEFAULT 0 COMMENT '累计实收总数量', remark VARCHAR(1000) NULL COMMENT '客户备注', idempotency_key VARCHAR(255) NOT NULL COMMENT '创建幂等键', request_hash CHAR(64) NOT NULL COMMENT '创建请求SHA-256', created_by VARCHAR(128) NULL COMMENT '创建操作人ID', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', + id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', return_no VARCHAR(128) NOT NULL COMMENT '退货订单号', overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', warehouse_contact_name VARCHAR(128) NULL COMMENT '中转仓联系人快照', warehouse_contact_phone VARCHAR(64) NULL COMMENT '中转仓联系电话快照', customer_reference_no VARCHAR(128) NULL COMMENT '客户参考号', lastleg_order_id BIGINT NULL COMMENT '尾程订单ID', lastleg_order_no VARCHAR(32) NULL COMMENT '尾程订单号', status VARCHAR(32) NOT NULL COMMENT 'PENDING_RECEIPT、PARTIALLY_RECEIVED或COMPLETED', expected_sku_types INT NOT NULL COMMENT '预报SKU种类数', expected_quantity BIGINT NOT NULL COMMENT '预报总数量', received_quantity BIGINT NOT NULL DEFAULT 0 COMMENT '累计实收总数量', remark VARCHAR(1000) NULL COMMENT '客户备注', idempotency_key VARCHAR(255) NOT NULL COMMENT '创建幂等键', request_hash CHAR(64) NOT NULL COMMENT '创建请求SHA-256', created_by VARCHAR(128) NULL COMMENT '创建操作人ID', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_order_customer_no(customer_id,return_no), UNIQUE KEY uk_ll_return_order_customer_key(customer_id,idempotency_key), KEY idx_ll_return_order_warehouse_status(overseas_warehouse_id,status,created_at), CONSTRAINT chk_ll_return_order_quantity CHECK(expected_sku_types>0 AND expected_quantity>0 AND received_quantity>=0 AND received_quantity<=expected_quantity) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户退货订单及SKU实收汇总'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户退货订单及SKU实收汇总'; SET @ll_return_order_need_relabel = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_order' AND column_name='need_relabel'), 'SELECT 1', 'ALTER TABLE ll_return_order ADD COLUMN need_relabel TINYINT(1) NOT NULL DEFAULT 0 COMMENT ''是否需要换标'' AFTER customer_reference_no')); PREPARE stmt FROM @ll_return_order_need_relabel; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_order' AND column_name='lastleg_order_id'), 'SELECT 1', 'ALTER TABLE ll_return_order ADD COLUMN lastleg_order_id BIGINT NULL COMMENT ''尾程订单ID'' AFTER customer_reference_no')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_order' AND column_name='lastleg_order_no'), 'SELECT 1', 'ALTER TABLE ll_return_order ADD COLUMN lastleg_order_no VARCHAR(32) NULL COMMENT ''尾程订单号'' AFTER lastleg_order_id')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; @@ -3263,14 +3263,14 @@ SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE tab SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_order' AND column_name='relabel_no'), 'SELECT 1', 'ALTER TABLE ll_return_order ADD COLUMN relabel_no VARCHAR(64) NULL COMMENT ''绑定换标单号'' AFTER relabel_application_id')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_order' AND column_name='relabel_status'), 'SELECT 1', 'ALTER TABLE ll_return_order ADD COLUMN relabel_status VARCHAR(32) NULL COMMENT ''换标状态'' AFTER relabel_no')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; CREATE TABLE IF NOT EXISTS ll_return_order_item ( - id BIGINT NOT NULL COMMENT '退货预报明细ID', return_order_id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名', expected_quantity BIGINT NOT NULL COMMENT 'SKU预报数量', received_quantity BIGINT NOT NULL DEFAULT 0 COMMENT 'SKU累计实收数量', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', + id BIGINT NOT NULL COMMENT '退货预报明细ID', return_order_id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名', expected_quantity BIGINT NOT NULL COMMENT 'SKU预报数量', received_quantity BIGINT NOT NULL DEFAULT 0 COMMENT 'SKU累计实收数量', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_item_order_sku(return_order_id,sku_code), KEY idx_ll_return_item_sku(sku_code,received_quantity), CONSTRAINT chk_ll_return_item_quantity CHECK(expected_quantity>0 AND received_quantity>=0 AND received_quantity<=expected_quantity) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='客户退货订单的SKU预报与实收明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='客户退货订单的SKU预报与实收明细'; CREATE TABLE IF NOT EXISTS ll_return_receipt ( original_packaging TINYINT(1) NULL COMMENT '是否使用原箱原包装', measurement_source VARCHAR(32) NULL COMMENT '尺寸重量来源', - id BIGINT NOT NULL COMMENT 'PDA退货签收单ID', return_order_id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '签收单号', receipt_batch_no VARCHAR(128) NOT NULL COMMENT '签收批次号', tracking_no VARCHAR(128) NULL COMMENT '本次签收包裹的可选快递单号', bound_by VARCHAR(16) NOT NULL COMMENT '开始签收方式,RETURN_NO退货单号或SKU候选', status VARCHAR(32) NOT NULL COMMENT '签收状态,当前SIGNED', received_quantity BIGINT NOT NULL COMMENT '本次实收数量', operator_id VARCHAR(128) NOT NULL COMMENT 'PDA操作人ID', operator_name VARCHAR(128) NULL COMMENT 'PDA操作人名称', idempotency_key VARCHAR(255) NOT NULL COMMENT 'PDA确认幂等键', request_hash CHAR(64) NOT NULL COMMENT 'PDA确认请求SHA-256', signed_at DATETIME(3) NOT NULL COMMENT '签收时间', created_at DATETIME(3) NOT NULL COMMENT '创建时间', + id BIGINT NOT NULL COMMENT 'PDA退货签收单ID', return_order_id BIGINT NOT NULL COMMENT '退货订单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', receipt_no VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '签收单号', receipt_batch_no VARCHAR(128) NOT NULL COMMENT '签收批次号', tracking_no VARCHAR(128) NULL COMMENT '本次签收包裹的可选快递单号', bound_by VARCHAR(16) NOT NULL COMMENT '开始签收方式,RETURN_NO退货单号或SKU候选', status VARCHAR(32) NOT NULL COMMENT '签收状态,当前SIGNED', received_quantity BIGINT NOT NULL COMMENT '本次实收数量', operator_id VARCHAR(128) NOT NULL COMMENT 'PDA操作人ID', operator_name VARCHAR(128) NULL COMMENT 'PDA操作人名称', idempotency_key VARCHAR(255) NOT NULL COMMENT 'PDA确认幂等键', request_hash CHAR(64) NOT NULL COMMENT 'PDA确认请求SHA-256', signed_at DATETIME(3) NOT NULL COMMENT '签收时间', created_at DATETIME(3) NOT NULL COMMENT '创建时间', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_receipt_no(receipt_no), UNIQUE KEY uk_ll_return_receipt_batch(receipt_batch_no), UNIQUE KEY uk_ll_return_receipt_operator_key(operator_id,idempotency_key), KEY idx_ll_return_receipt_order(return_order_id,signed_at), CONSTRAINT chk_ll_return_receipt_quantity CHECK(received_quantity>0), CONSTRAINT chk_ll_return_receipt_bound CHECK(bound_by IN('RETURN_NO','SKU')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PDA退货实收签收事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PDA退货实收签收事实'; -- 已创建开发库升级为“客户只预报 SKU,快递单号仅属于签收批次”的最终模型。 SET @ll_return_item_drop_tracking_order_sku = (SELECT IF(COUNT(*) > 0, 'ALTER TABLE ll_return_order_item DROP INDEX uk_ll_return_item_order_tracking_sku', 'SELECT 1') FROM information_schema.statistics WHERE table_schema=DATABASE() AND table_name='ll_return_order_item' AND index_name='uk_ll_return_item_order_tracking_sku'); @@ -3313,9 +3313,9 @@ PREPARE ll_return_receipt_add_measurement_facts_stmt FROM @ll_return_receipt_add SET @ll_return_receipt_add_measurement_facts = (SELECT IF(COUNT(*)=0, 'ALTER TABLE ll_return_receipt ADD COLUMN measurement_source VARCHAR(32) NULL COMMENT ''尺寸重量来源'' AFTER original_packaging', 'SELECT 1') FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_receipt' AND column_name='measurement_source'); PREPARE ll_return_receipt_add_measurement_facts_stmt FROM @ll_return_receipt_add_measurement_facts; EXECUTE ll_return_receipt_add_measurement_facts_stmt; DEALLOCATE PREPARE ll_return_receipt_add_measurement_facts_stmt; CREATE TABLE IF NOT EXISTS ll_return_receipt_item ( - id BIGINT NOT NULL COMMENT '签收SKU明细ID', receipt_id BIGINT NOT NULL COMMENT 'PDA退货签收单ID', return_order_item_id BIGINT NOT NULL COMMENT '退货预报明细ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', received_quantity BIGINT NOT NULL COMMENT '本次SKU实收数量', + id BIGINT NOT NULL COMMENT '签收SKU明细ID', receipt_id BIGINT NOT NULL COMMENT 'PDA退货签收单ID', return_order_item_id BIGINT NOT NULL COMMENT '退货预报明细ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', received_quantity BIGINT NOT NULL COMMENT '本次SKU实收数量', PRIMARY KEY(id), KEY idx_ll_return_receipt_item_receipt(receipt_id), KEY idx_ll_return_receipt_item_order_item(return_order_item_id), CONSTRAINT chk_ll_return_receipt_item_quantity CHECK(received_quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PDA退货签收SKU实际数量明细'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PDA退货签收SKU实际数量明细'; CREATE TABLE IF NOT EXISTS ll_return_receipt_batch ( id BIGINT NOT NULL COMMENT '退货仓储计费批次ID', return_order_id BIGINT NOT NULL COMMENT '退货订单ID', receipt_id BIGINT NOT NULL COMMENT 'PDA退货签收单ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', batch_no VARCHAR(128) NOT NULL COMMENT '签收批次号', overseas_warehouse_id VARCHAR(128) NOT NULL COMMENT '操作海外仓ID', storage_billing_status VARCHAR(32) NOT NULL COMMENT '仓储计费状态,初始PENDING_PRICING', storage_started_at DATETIME(3) NOT NULL COMMENT '仓储计费起算时间', created_at DATETIME(3) NOT NULL COMMENT '创建时间', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_batch_no(batch_no), UNIQUE KEY uk_ll_return_batch_receipt(receipt_id), KEY idx_ll_return_batch_billing(customer_id,overseas_warehouse_id,storage_billing_status,storage_started_at) @@ -3327,9 +3327,9 @@ PREPARE return_receipt_carton_mark_stmt FROM @ddl; EXECUTE return_receipt_carton CREATE TABLE IF NOT EXISTS ll_return_inventory_carton ( original_packaging TINYINT(1) NULL COMMENT '是否使用原箱原包装', new_carton_mark VARCHAR(255) NULL COMMENT '换标后新箱唛', - id BIGINT NOT NULL COMMENT '退货库存箱ID', customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户ID和隔离键', overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '海外仓ID', source_receipt_id BIGINT NULL COMMENT '来源PDA签收单ID', source_batch_no VARCHAR(128) NULL COMMENT '来源签收批次号', carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '退货箱号和箱唛编码', status VARCHAR(32) NOT NULL COMMENT 'AVAILABLE可用或MERGED已合箱', sku_types INT NOT NULL COMMENT '箱内SKU种类数', total_quantity BIGINT NOT NULL COMMENT '箱内总件数', length DECIMAL(12,3) NULL COMMENT '箱长CM', width DECIMAL(12,3) NULL COMMENT '箱宽CM', height DECIMAL(12,3) NULL COMMENT '箱高CM', weight DECIMAL(12,3) NULL COMMENT '箱重KG', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', merged_at DATETIME(3) NULL COMMENT '合箱完成时间', + id BIGINT NOT NULL COMMENT '退货库存箱ID', customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户ID和隔离键', overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '海外仓ID', source_receipt_id BIGINT NULL COMMENT '来源PDA签收单ID', source_batch_no VARCHAR(128) NULL COMMENT '来源签收批次号', carton_mark VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '退货箱号和箱唛编码', status VARCHAR(32) NOT NULL COMMENT 'AVAILABLE可用或MERGED已合箱', sku_types INT NOT NULL COMMENT '箱内SKU种类数', total_quantity BIGINT NOT NULL COMMENT '箱内总件数', length DECIMAL(12,3) NULL COMMENT '箱长CM', width DECIMAL(12,3) NULL COMMENT '箱宽CM', height DECIMAL(12,3) NULL COMMENT '箱高CM', weight DECIMAL(12,3) NULL COMMENT '箱重KG', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', merged_at DATETIME(3) NULL COMMENT '合箱完成时间', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_inventory_carton_mark(carton_mark), UNIQUE KEY uk_ll_return_inventory_carton_receipt(source_receipt_id), KEY idx_ll_return_inventory_carton_customer(customer_id,overseas_warehouse_id,status,created_at), CONSTRAINT chk_ll_return_inventory_carton_quantity CHECK((status IN('AVAILABLE','RELABEL_PENDING','OUTBOUNDED','DISCARD_PENDING') AND sku_types>0 AND total_quantity>0) OR (status IN('MERGED','DISCARDED') AND sku_types=0 AND total_quantity=0)), CONSTRAINT chk_ll_return_inventory_carton_status CHECK(status IN('AVAILABLE','RELABEL_PENDING','MERGED','OUTBOUNDED','DISCARD_PENDING','DISCARDED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货实物库存箱及箱唛'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货实物库存箱及箱唛'; SET @ll_return_carton_add_pallet = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_inventory_carton' AND column_name='pallet_code'), 'SELECT 1', 'ALTER TABLE ll_return_inventory_carton ADD COLUMN pallet_code VARCHAR(128) NULL COMMENT ''签收时绑定的托盘码'' AFTER source_batch_no')); PREPARE ll_return_carton_add_pallet_stmt FROM @ll_return_carton_add_pallet; EXECUTE ll_return_carton_add_pallet_stmt; DEALLOCATE PREPARE ll_return_carton_add_pallet_stmt; SET @ll_return_carton_add_original_packaging = (SELECT IF(COUNT(*)=0, 'ALTER TABLE ll_return_inventory_carton ADD COLUMN original_packaging TINYINT(1) NULL COMMENT ''是否使用原箱原包装'' AFTER weight', 'SELECT 1') FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_inventory_carton' AND column_name='original_packaging'); @@ -3352,20 +3352,20 @@ SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE tab SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_inventory_carton' AND column_name='relabel_status'), 'SELECT 1', 'ALTER TABLE ll_return_inventory_carton ADD COLUMN relabel_status VARCHAR(32) NULL COMMENT ''换标状态'' AFTER relabel_no')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; SET @ddl = (SELECT IF(EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_inventory_carton' AND column_name='relabel_completed_at'), 'SELECT 1', 'ALTER TABLE ll_return_inventory_carton ADD COLUMN relabel_completed_at DATETIME(3) NULL COMMENT ''换标完成时间'' AFTER relabel_status')); PREPARE stmt FROM @ddl; EXECUTE stmt; DEALLOCATE PREPARE stmt; CREATE TABLE IF NOT EXISTS ll_return_inventory_carton_item ( - id BIGINT NOT NULL COMMENT '退货库存箱SKU明细ID', carton_id BIGINT NOT NULL COMMENT '退货库存箱ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT 'SKU编码', product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名', quantity BIGINT NOT NULL COMMENT '该SKU箱内数量', + id BIGINT NOT NULL COMMENT '退货库存箱SKU明细ID', carton_id BIGINT NOT NULL COMMENT '退货库存箱ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'SKU编码', product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名', quantity BIGINT NOT NULL COMMENT '该SKU箱内数量', PRIMARY KEY(id), UNIQUE KEY uk_ll_return_inventory_carton_item(carton_id,sku_code), KEY idx_ll_return_inventory_carton_item_customer(customer_id,sku_code), CONSTRAINT chk_ll_return_inventory_carton_item_quantity CHECK(quantity>=0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货库存箱内SKU和数量'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货库存箱内SKU和数量'; -- 退货出库按SKU固化扣减前后快照,与PDA拣货同事务提交;不修改历史箱内容。 CREATE TABLE IF NOT EXISTS ll_return_inventory_outbound_movement ( id BIGINT NOT NULL COMMENT '退货出库SKU流水ID', outbound_pick_id BIGINT NOT NULL COMMENT '同事务PDA出库拣货记录ID', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '库存所属客户ID和隔离键', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '实际出库海外仓ID', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存所属客户ID和隔离键', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '实际出库海外仓ID', carton_id BIGINT NOT NULL COMMENT '真实退货库存箱ID', carton_mark VARCHAR(128) NOT NULL COMMENT '冻结的真实退货箱业务码', - outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次退货出库业务单号', - sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '本次出库SKU编码快照', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', + outbound_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次退货出库业务单号', + sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '本次出库SKU编码快照', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', quantity BIGINT NOT NULL COMMENT '本箱该SKU实际出库件数,始终为正', total_before BIGINT NOT NULL COMMENT '客户仓SKU出库前实物总数量', total_after BIGINT NOT NULL COMMENT '客户仓SKU出库后实物总数量', @@ -3381,7 +3381,7 @@ CREATE TABLE IF NOT EXISTS ll_return_inventory_outbound_movement ( CONSTRAINT chk_ll_return_outbound_movement_delta CHECK(quantity>0 AND total_after>=0 AND available_after>=0 AND total_before-total_after=quantity AND available_before-available_after=quantity AND cartons_after>=0 AND cartons_before-cartons_after IN (0,1) AND total_after>=available_after) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='不可变退货出库SKU库存流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='不可变退货出库SKU库存流水'; CREATE TABLE IF NOT EXISTS ll_return_inventory_balance ( id BIGINT NOT NULL COMMENT '退货库存余额ID', customer_id VARCHAR(128) NOT NULL COMMENT '客户ID和隔离键', overseas_warehouse_id VARCHAR(128) NOT NULL COMMENT '海外仓ID', sku_code VARCHAR(128) NOT NULL COMMENT 'SKU编码', product_name_zh VARCHAR(255) NULL COMMENT '中文品名', total_quantity BIGINT NOT NULL DEFAULT 0 COMMENT '实物总库存,仅实际出库扣减', available_quantity BIGINT NOT NULL COMMENT '未合箱可用上架数量', carton_quantity BIGINT NOT NULL COMMENT '包含该SKU的可用箱数', created_at DATETIME(3) NOT NULL COMMENT '创建时间', updated_at DATETIME(3) NOT NULL COMMENT '最后更新时间', @@ -3679,17 +3679,17 @@ SET @return_sku_ddl = (SELECT IF(EXISTS(SELECT 1 FROM information_schema.columns PREPARE return_sku_stmt FROM @return_sku_ddl; EXECUTE return_sku_stmt; DEALLOCATE PREPARE return_sku_stmt; CREATE TABLE IF NOT EXISTS ll_return_sku_conversion ( id BIGINT NOT NULL COMMENT 'SKU库存转换记录ID', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离键', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', application_id BIGINT NOT NULL COMMENT '换标申请ID', - relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标单号', + relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标单号', item_id BIGINT NOT NULL COMMENT '换标箱级明细ID', round_key VARCHAR(64) NOT NULL COMMENT '作业轮次,退回重做使用新轮次', carton_id BIGINT NOT NULL COMMENT '实物来源包裹或箱ID', carton_mark VARCHAR(128) NOT NULL COMMENT '完工时仓库识别码', - old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标前SKU', - new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标后SKU', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', + old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标前SKU', + new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标后SKU', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', quantity BIGINT NOT NULL COMMENT '实际完成转换件数', status VARCHAR(32) NOT NULL COMMENT 'APPLIED待客户确认/CONFIRMED已确认/REVERSED退回冲回', ownership_json LONGTEXT NOT NULL COMMENT '本次转换件数的来源退货单快照,供精确冲回', @@ -3702,7 +3702,7 @@ CREATE TABLE IF NOT EXISTS ll_return_sku_conversion ( KEY idx_return_sku_conversion_app(customer_id,application_id,status), KEY idx_return_sku_conversion_carton(customer_id,carton_id), CONSTRAINT chk_return_sku_conversion_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; -- 平台自营领星统计:独立事实与不可变发布版本;仅空库初始化,不自动执行。 @@ -4042,7 +4042,7 @@ CREATE TABLE IF NOT EXISTS ll_cargo_discard_photo ( PRIMARY KEY (id), UNIQUE KEY uk_cargo_discard_photo_file (file_id), KEY idx_cargo_discard_photo_application (customer_id, application_id, pallet_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外PDA货物废弃照片凭证'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外PDA货物废弃照片凭证'; CREATE TABLE ll_selfop_owner ( id BIGINT NOT NULL COMMENT '主键', @@ -4212,13 +4212,13 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_appointment_allocation ( PRIMARY KEY(dispatch_item_id,batch_key,source_key,destination_key), KEY idx_dispatch_appointment_batch(batch_key,customer_id), KEY idx_dispatch_appointment_dispatch(dispatch_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车实物与预约批次逐票分配,原执行域事实'; CREATE TABLE IF NOT EXISTS ll_appointment_work_commitment ( entity_key VARCHAR(160) NOT NULL COMMENT '原业务实体稳定键', state_json LONGTEXT NOT NULL COMMENT '原业务命令产生的只读语义影响基线,不是第二份可编辑计划', impact_version BIGINT NOT NULL DEFAULT 0 COMMENT '承诺影响单调递增版本', PRIMARY KEY (entity_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='工作事项承诺影响审计基线'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='工作事项承诺影响审计基线'; CREATE TABLE IF NOT EXISTS ll_appointment_work_guard ( id INT NOT NULL COMMENT '工作事项协调锁,固定1', scan_cursor VARCHAR(128) NULL COMMENT '已开船来源同步游标', @@ -4230,7 +4230,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work_guard ( synchronized_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '完整扫描已消费需求版本', scan_requirement_version BIGINT NOT NULL DEFAULT 0 COMMENT '当前扫描需求版本,防跨页漂移', PRIMARY KEY (id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项同步与命令串行守卫'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项同步与命令串行守卫'; INSERT INTO ll_appointment_work_guard(id,initialized) SELECT 1,FALSE WHERE NOT EXISTS(SELECT 1 FROM ll_appointment_work_guard WHERE id=1); CREATE TABLE IF NOT EXISTS ll_appointment_work ( @@ -4241,7 +4241,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work ( state_json LONGTEXT NOT NULL COMMENT '工作关系责任跟进及影响基线,不保存可编辑业务执行事实', PRIMARY KEY (work_item_key), KEY idx_appointment_work_container (container_booking_id,retired) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项需求与关系'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项需求与关系'; CREATE TABLE IF NOT EXISTS ll_appointment_work_history ( id VARCHAR(36) NOT NULL COMMENT '历史记录标识', @@ -4257,7 +4257,7 @@ CREATE TABLE IF NOT EXISTS ll_appointment_work_history ( PRIMARY KEY (id), UNIQUE KEY uk_appointment_work_command (work_item_key,command_key), KEY idx_appointment_work_history (work_item_key,occurred_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='预约工作事项历史与幂等命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='预约工作事项历史与幂等命令'; -- 新单据短号:相同业务及客户名称缩写共享逻辑秒,避免同秒或多实例重号。 -- 库存转运无需再次预约入仓;目标库:lastleg-service 所属数据库。可重复执行。 @@ -4408,11 +4408,11 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_truck_task ( active_order VARCHAR(193) NULL COMMENT '有效原单唯一键;取消置空,完成保留', PRIMARY KEY(dispatch_no), UNIQUE KEY uk_transport_trip(trip_no), UNIQUE KEY uk_transport_source(active_order), KEY idx_transport_order(customer_id,order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车与本土卡车原单关联'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车与本土卡车原单关联'; CREATE TABLE IF NOT EXISTS ll_dispatch_transport_create ( trip_no VARCHAR(64) NOT NULL PRIMARY KEY COMMENT '本次运输资源记录号', request_hash CHAR(64) NOT NULL COMMENT '首次安排请求摘要' -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='本土卡车排车创建请求账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='本土卡车排车创建请求账本'; CREATE TABLE IF NOT EXISTS ll_dispatch_transport_command ( dispatch_no VARCHAR(64) NOT NULL COMMENT '排车业务号', request_key VARCHAR(128) NOT NULL COMMENT '客户端幂等请求键', @@ -4420,7 +4420,7 @@ CREATE TABLE IF NOT EXISTS ll_dispatch_transport_command ( evidence_json JSON NULL COMMENT '已确认运输完成凭证标识列表', created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '业务命令提交时间', PRIMARY KEY(dispatch_no,request_key) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='排车运输执行命令与凭证账本'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='排车运输执行命令与凭证账本'; -- 统一业务单号:前缀 + yyyyMMdd + 四位日流水。 CREATE TABLE IF NOT EXISTS ll_document_sequence ( @@ -4428,7 +4428,7 @@ CREATE TABLE IF NOT EXISTS ll_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_ll_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水'; CREATE TABLE IF NOT EXISTS ll_fleet_resource_photo ( resource_kind VARCHAR(16) NOT NULL COMMENT '档案类型:车辆或司机', @@ -4472,7 +4472,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_inbound ( created_at datetime(3) NOT NULL COMMENT '计租登记时间,采用协调世界时', PRIMARY KEY (receipt_id), KEY idx_storage_rent_inbound_lot (lot_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程实收计租幂等登记'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程实收计租幂等登记'; CREATE TABLE IF NOT EXISTS ll_storage_rent_lot ( id bigint NOT NULL COMMENT '原批次主键', @@ -4501,7 +4501,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_lot ( UNIQUE KEY uk_storage_rent_lot_source (source_key), KEY idx_storage_rent_stock (balance_id,batch_no), KEY idx_storage_rent_customer (customer_id,warehouse_id,inbound_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='实收计租原批次'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='实收计租原批次'; CREATE TABLE IF NOT EXISTS ll_storage_rent_share ( balance_id bigint DEFAULT NULL COMMENT '普通库存当前余额,退货箱份额为空', @@ -4518,7 +4518,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_share ( UNIQUE KEY uk_storage_rent_stock_share (lot_id,balance_id,batch_no), KEY idx_storage_rent_carton (customer_id,warehouse_id,carton_mark), KEY idx_storage_rent_share_stock (customer_id,warehouse_id,balance_id,batch_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='当前库存与原计租批次份额'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='当前库存与原计租批次份额'; CREATE TABLE IF NOT EXISTS ll_storage_rent_preparation ( id bigint NOT NULL COMMENT '预校验主键', @@ -4556,7 +4556,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_preparation ( KEY idx_storage_rent_business (customer_id,business_no), KEY idx_storage_rent_recovery (status,updated_at), KEY idx_storage_rent_release (release_status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓租扫码资金预占与结算快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓租扫码资金预占与结算快照'; -- SKU 换标原计租份额快照,存量数据库可重复执行。 SET @storage_rent_sku_column = (SELECT COUNT(*) FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_sku_conversion' AND column_name='storage_rent_shares_json'); @@ -4605,10 +4605,10 @@ CREATE TABLE IF NOT EXISTS ll_procurement_workflow_command ( CREATE TABLE IF NOT EXISTS ll_order_budget_reservation ( id BIGINT NOT NULL COMMENT '预算冻结记录主键', - customer_id VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离标识', + customer_id VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离标识', kind VARCHAR(32) NOT NULL COMMENT '客户下单业务类型', request_key VARCHAR(128) NOT NULL COMMENT '下单幂等键', - order_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '成功创建的业务单号', + order_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '成功创建的业务单号', original_amount DECIMAL(18,2) NOT NULL COMMENT '客户预估原币金额', currency VARCHAR(3) NOT NULL COMMENT '预估金额币种', amount_cny DECIMAL(18,2) NOT NULL COMMENT '按下单月份汇率折算的人民币冻结金额', @@ -4622,4 +4622,4 @@ CREATE TABLE IF NOT EXISTS ll_order_budget_reservation ( PRIMARY KEY(id), UNIQUE KEY uk_order_budget_request(customer_id,kind,request_key), KEY idx_order_budget_release(status,release_requested,created_at), KEY idx_order_budget_order(customer_id,kind,order_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='海外客户下单预估资金冻结投影'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='海外客户下单预估资金冻结投影'; diff --git a/lastleg-service/src/main/resources/db/return-sku-conversion.sql b/lastleg-service/src/main/resources/db/return-sku-conversion.sql index c976dd373..1a6fafb9d 100644 --- a/lastleg-service/src/main/resources/db/return-sku-conversion.sql +++ b/lastleg-service/src/main/resources/db/return-sku-conversion.sql @@ -3,17 +3,17 @@ SET @return_sku_ddl = (SELECT IF(EXISTS(SELECT 1 FROM information_schema.columns PREPARE return_sku_stmt FROM @return_sku_ddl; EXECUTE return_sku_stmt; DEALLOCATE PREPARE return_sku_stmt; CREATE TABLE IF NOT EXISTS ll_return_sku_conversion ( id BIGINT NOT NULL COMMENT 'SKU库存转换记录ID', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户隔离键', - overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '操作海外仓ID', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '客户隔离键', + overseas_warehouse_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '操作海外仓ID', application_id BIGINT NOT NULL COMMENT '换标申请ID', - relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标单号', + relabel_no VARCHAR(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标单号', item_id BIGINT NOT NULL COMMENT '换标箱级明细ID', round_key VARCHAR(64) NOT NULL COMMENT '作业轮次,退回重做使用新轮次', carton_id BIGINT NOT NULL COMMENT '实物来源包裹或箱ID', carton_mark VARCHAR(128) NOT NULL COMMENT '完工时仓库识别码', - old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标前SKU', - new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '换标后SKU', - product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '中文品名快照', + old_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标前SKU', + new_sku_code VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '换标后SKU', + product_name_zh VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '中文品名快照', quantity BIGINT NOT NULL COMMENT '实际完成转换件数', status VARCHAR(32) NOT NULL COMMENT 'APPLIED待客户确认/CONFIRMED已确认/REVERSED退回冲回', ownership_json LONGTEXT NOT NULL COMMENT '本次转换件数的来源退货单快照,供精确冲回', @@ -26,4 +26,4 @@ CREATE TABLE IF NOT EXISTS ll_return_sku_conversion ( KEY idx_return_sku_conversion_app(customer_id,application_id,status), KEY idx_return_sku_conversion_carton(customer_id,carton_id), CONSTRAINT chk_return_sku_conversion_quantity CHECK(quantity>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='退货实物SKU换标库存转换和冲回记录'; diff --git a/lastleg-service/src/main/resources/db/storage-rent.sql b/lastleg-service/src/main/resources/db/storage-rent.sql index 2172d7780..2363a0de9 100644 --- a/lastleg-service/src/main/resources/db/storage-rent.sql +++ b/lastleg-service/src/main/resources/db/storage-rent.sql @@ -5,7 +5,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_inbound ( created_at datetime(3) NOT NULL COMMENT '计租登记时间,采用协调世界时', PRIMARY KEY (receipt_id), KEY idx_storage_rent_inbound_lot (lot_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='头程实收计租幂等登记'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='头程实收计租幂等登记'; CREATE TABLE IF NOT EXISTS ll_storage_rent_lot ( id bigint NOT NULL COMMENT '原批次主键', @@ -33,7 +33,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_lot ( UNIQUE KEY uk_storage_rent_lot_source (source_key), KEY idx_storage_rent_stock (balance_id,batch_no), KEY idx_storage_rent_customer (customer_id,warehouse_id,inbound_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='实收计租原批次'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='实收计租原批次'; CREATE TABLE IF NOT EXISTS ll_storage_rent_share ( balance_id bigint DEFAULT NULL COMMENT '普通库存当前余额,退货箱份额为空', @@ -50,7 +50,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_share ( UNIQUE KEY uk_storage_rent_stock_share (lot_id,balance_id,batch_no), KEY idx_storage_rent_carton (customer_id,warehouse_id,carton_mark), KEY idx_storage_rent_share_stock (customer_id,warehouse_id,balance_id,batch_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='当前库存与原计租批次份额'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='当前库存与原计租批次份额'; CREATE TABLE IF NOT EXISTS ll_storage_rent_preparation ( id bigint NOT NULL COMMENT '预校验主键', @@ -88,7 +88,7 @@ CREATE TABLE IF NOT EXISTS ll_storage_rent_preparation ( KEY idx_storage_rent_business (customer_id,business_no), KEY idx_storage_rent_recovery (status,updated_at), KEY idx_storage_rent_release (release_status,updated_at) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='仓租扫码资金预占与结算快照'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='仓租扫码资金预占与结算快照'; -- SKU 换标原计租份额快照,存量数据库可重复执行。 SET @storage_rent_sku_column = (SELECT COUNT(*) FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_return_sku_conversion' AND column_name='storage_rent_shares_json'); diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/delivery/Phase5PdaDeploymentSqlContractTest.java b/lastleg-service/src/test/java/com/baiyue/lastleg/delivery/Phase5PdaDeploymentSqlContractTest.java index 7684ef1af..80706b784 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/delivery/Phase5PdaDeploymentSqlContractTest.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/delivery/Phase5PdaDeploymentSqlContractTest.java @@ -15,7 +15,7 @@ class Phase5PdaDeploymentSqlContractTest { StandardCharsets.UTF_8); String normalized = sql.replaceAll("\\s+", ""); - assertTrue(sql.contains("warehouse_id varchar(128) COLLATE utf8mb4_unicode_ci NOT NULL")); + assertTrue(sql.contains("warehouse_id varchar(128) COLLATE utf8mb4_0900_ai_ci NOT NULL")); assertTrue(sql.contains("completion_idempotency_key varchar(255)")); assertTrue(normalized.contains("UNIQUEKEYuk_ll_dispatch_order_no(dispatch_no)")); assertTrue(normalized.contains("UNIQUEKEYuk_ll_outbound_no(outbound_no)")); diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidateMySqlReadOnlyTest.java b/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidateMySqlReadOnlyTest.java index b47dc0792..470211584 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidateMySqlReadOnlyTest.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/mapper/DispatchCandidateMySqlReadOnlyTest.java @@ -47,7 +47,7 @@ class DispatchCandidateMySqlReadOnlyTest { var project=DispatchCandidatePageMapper.Sql.class.getDeclaredMethod("project",String.class,Set.class,boolean.class); project.setAccessible(true); String general="SELECT "+fields.stream().sorted().map(f->"_utf8mb4'洛杉矶-001' COLLATE utf8mb4_general_ci AS "+f).collect(Collectors.joining(",")); - String unicode=general.replace("utf8mb4_general_ci","utf8mb4_unicode_ci"); + String unicode=general.replace("utf8mb4_general_ci","utf8mb4_0900_ai_ci"); try(var connection=connect();var statement=connection.createStatement()) { statement.setQueryTimeout(10); var failure=assertThrows(SQLException.class,()->statement.executeQuery(general+" UNION ALL "+unicode)); diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/service/DispatchMergedRelabelPersistenceTest.java b/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/service/DispatchMergedRelabelPersistenceTest.java index b5a84ace9..78ca6bc0f 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/service/DispatchMergedRelabelPersistenceTest.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/dispatch/service/DispatchMergedRelabelPersistenceTest.java @@ -298,7 +298,7 @@ class DispatchMergedRelabelPersistenceTest { public static class H2CandidateLanguageDriver extends org.apache.ibatis.scripting.xmltags.XMLLanguageDriver { @Override public org.apache.ibatis.mapping.SqlSource createSqlSource(org.apache.ibatis.session.Configuration configuration,String script,Class parameterType) { return super.createSqlSource(configuration,script.replaceAll( - "CONVERT\\((s\\.\\w+|NULL) USING utf8mb4\\) COLLATE utf8mb4_unicode_ci","$1"),parameterType); + "CONVERT\\((s\\.\\w+|NULL) USING utf8mb4\\) COLLATE utf8mb4_0900_ai_ci","$1"),parameterType); } } } diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryMovementSqlTest.java b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryMovementSqlTest.java index 25f3efb88..5b32d08b6 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryMovementSqlTest.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnInventoryMovementSqlTest.java @@ -34,14 +34,14 @@ class ReturnInventoryMovementSqlTest { var block = Pattern.compile("(?s)(?:CREATE TABLE (?:IF NOT EXISTS )?|ALTER TABLE )" + entry.getKey() + "\\b.*?;").matcher(sql); assertTrue(block.find(), file + ": " + entry.getKey()); for (String column : entry.getValue()) { - assertTrue(Pattern.compile("(?i)\\b" + column + "\\s+varchar\\(\\d+\\) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci").matcher(block.group()).find(), + assertTrue(Pattern.compile("(?i)\\b" + column + "\\s+varchar\\(\\d+\\) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci").matcher(block.group()).find(), file + ": " + entry.getKey() + "." + column); } } } String standalone = Files.readString(Path.of("src/main/resources/db/return-sku-conversion.sql")); for (String column : fields.get("ll_return_sku_conversion")) - assertTrue(Pattern.compile("\\b" + column + "\\s+VARCHAR\\(\\d+\\) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci").matcher(standalone).find()); + assertTrue(Pattern.compile("\\b" + column + "\\s+VARCHAR\\(\\d+\\) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci").matcher(standalone).find()); } @Test diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuConversionPersistenceTest.java b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuConversionPersistenceTest.java index 54c2dfc9e..2b357d0b2 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuConversionPersistenceTest.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuConversionPersistenceTest.java @@ -58,7 +58,7 @@ class ReturnSkuConversionPersistenceTest { + (f.getName().equals("id") ? " PRIMARY KEY" : "")).collect(Collectors.joining(",")); jdbc.execute("CREATE TABLE " + entity.getAnnotation(TableName.class).value() + " (" + columns + ")" + (mysqlMode ? " ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=" - + (entity == ReturnInventoryCartonItem.class ? "utf8mb4_0900_ai_ci" : "utf8mb4_unicode_ci") : "")); + + (entity == ReturnInventoryCartonItem.class ? "utf8mb4_0900_ai_ci" : "utf8mb4_0900_ai_ci") : "")); } jdbc.execute("CREATE UNIQUE INDEX balance_sku ON ll_return_inventory_balance(customer_id,overseas_warehouse_id,sku_code)"); jdbc.execute("CREATE UNIQUE INDEX conversion_round ON ll_return_sku_conversion(item_id,round_key,old_sku_code,new_sku_code)"); diff --git a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuMySqlTestDatabase.java b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuMySqlTestDatabase.java index 2e59149e6..9d1052378 100644 --- a/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuMySqlTestDatabase.java +++ b/lastleg-service/src/test/java/com/baiyue/lastleg/returnreceipt/service/ReturnSkuMySqlTestDatabase.java @@ -35,7 +35,7 @@ final class ReturnSkuMySqlTestDatabase implements AutoCloseable { try(var connection=administration.getConnection();var statement=connection.createStatement()) { if(!"information_schema".equals(connection.getCatalog()) || !"MySQL".equals(connection.getMetaData().getDatabaseProductName()) || connection.getMetaData().getDatabaseMajorVersion()!=8) throw new IllegalStateException("Expected TEST MySQL 8 administrative read catalog"); - statement.execute("CREATE DATABASE `"+schema+"` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci"); + statement.execute("CREATE DATABASE `"+schema+"` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci"); created=true; } catch(SQLException failure) { throw new IllegalStateException("TEST isolated schema creation failed; SQLState="+failure.getSQLState()); } source=new DriverManagerDataSource(prefix+schema+options,user,password) { diff --git a/order/src/main/resources/db/order.sql b/order/src/main/resources/db/order.sql index 3dfac6a2e..659eed553 100644 --- a/order/src/main/resources/db/order.sql +++ b/order/src/main/resources/db/order.sql @@ -430,4 +430,4 @@ CREATE TABLE IF NOT EXISTS ord_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_ord_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水'; diff --git a/scripts/admin-test-env-modules/fleet-capacity-pool-schema-contract.test.mjs b/scripts/admin-test-env-modules/fleet-capacity-pool-schema-contract.test.mjs index cbc2f10a2..c32121bd6 100644 --- a/scripts/admin-test-env-modules/fleet-capacity-pool-schema-contract.test.mjs +++ b/scripts/admin-test-env-modules/fleet-capacity-pool-schema-contract.test.mjs @@ -49,7 +49,7 @@ test('module and unified fresh baselines contain the exact same new table defini test('customer identity joins use the same explicit collation as existing fulfillment orders', () => { for (const name of ['ll_fleet_external_booking', 'll_fleet_pool_order_link']) { - assert.match(table(overseas, 'baiyue_lastleg', name), /customer_id VARCHAR\(128\) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL/i) + assert.match(table(overseas, 'baiyue_lastleg', name), /customer_id VARCHAR\(128\) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL/i) } const sql = read('deploy/sql/migrations/overseas/baiyue_lastleg/V11__align_capacity_pool_collation.sql') assert.equal((sql.match(/MODIFY COLUMN customer_id/g) || []).length, 2) diff --git a/scripts/database-schema-alignment-migrations-contract.test.mjs b/scripts/database-schema-alignment-migrations-contract.test.mjs index 99f4819f9..68bf44c82 100644 --- a/scripts/database-schema-alignment-migrations-contract.test.mjs +++ b/scripts/database-schema-alignment-migrations-contract.test.mjs @@ -39,7 +39,7 @@ test('海外费用结构补齐先检查同名结构再修改,支持匹配结 const firstDdl = source.indexOf('ALTER TABLE ll_finance_fee_source') assert.ok(firstDdl > 0) const guards = source.slice(0, firstDdl) - for (const marker of ["DATABASE()<>'baiyue_lastleg'", 'reviewer_exists>0', 'inbound_exists>0', "TABLE_COLLATION='utf8mb4_unicode_ci'", "COLUMN_TYPE='decimal(24,12)'", "COLUMN_TYPE='datetime(3)'", "INDEX_NAME='PRIMARY'", "INDEX_NAME='idx_storage_rent_inbound_lot'"]) { + for (const marker of ["DATABASE()<>'baiyue_lastleg'", 'reviewer_exists>0', 'inbound_exists>0', "TABLE_COLLATION='utf8mb4_0900_ai_ci'", "COLUMN_TYPE='decimal(24,12)'", "COLUMN_TYPE='datetime(3)'", "INDEX_NAME='PRIMARY'", "INDEX_NAME='idx_storage_rent_inbound_lot'"]) { assert.ok(guards.includes(marker), marker) } assert.match(guards, /SIGNAL SQLSTATE '45000'/) diff --git a/scripts/db/cargo-discard-consolidated-incremental-20261014.sql b/scripts/db/cargo-discard-consolidated-incremental-20261014.sql index 4e304ec65..62e8f730a 100644 --- a/scripts/db/cargo-discard-consolidated-incremental-20261014.sql +++ b/scripts/db/cargo-discard-consolidated-incremental-20261014.sql @@ -81,7 +81,7 @@ CREATE TABLE IF NOT EXISTS ll_cargo_discard_photo ( PRIMARY KEY (id), UNIQUE KEY uk_cargo_discard_photo_file (file_id), KEY idx_cargo_discard_photo_application (customer_id, application_id, pallet_no) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -- 二、补齐已有表的PDA字段及完工照片快照。 SET @ddl = IF(NOT EXISTS (SELECT 1 FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_cargo_discard_application' AND column_name='customer_confirmed_at'), diff --git a/scripts/db/dev-lastleg-relabel-return-incremental.sql b/scripts/db/dev-lastleg-relabel-return-incremental.sql index 099aabcb1..0563d3747 100644 --- a/scripts/db/dev-lastleg-relabel-return-incremental.sql +++ b/scripts/db/dev-lastleg-relabel-return-incremental.sql @@ -5,7 +5,7 @@ -- MySQL DDL 会隐式提交,请先备份并完整执行。 CREATE DATABASE IF NOT EXISTS baiyue_lastleg - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; DROP PROCEDURE IF EXISTS _dev_lastleg_relabel_return_patch; @@ -212,7 +212,7 @@ DROP PROCEDURE IF EXISTS _dev_lastleg_recent_patch; -- 2026-09-13 换标/合托按托盘维度作业:海外仓物理托盘允许没有库位。 -- 只放宽托盘状态操作审计快照,不改变已有带库位的入仓资源预留逻辑。 CREATE DATABASE IF NOT EXISTS baiyue_lastlag_warehouse - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastlag_warehouse; DROP PROCEDURE IF EXISTS _dev_locationless_pallet_patch; DELIMITER $$ diff --git a/scripts/db/incremental.sql b/scripts/db/incremental.sql index 9915c7b8c..fa759ba68 100644 --- a/scripts/db/incremental.sql +++ b/scripts/db/incremental.sql @@ -12,7 +12,7 @@ -- ============================================================================ CREATE DATABASE IF NOT EXISTS baiyue_event_bridge - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_event_bridge; CREATE TABLE IF NOT EXISTS bridge_inbox ( @@ -72,7 +72,7 @@ PREPARE migration_stmt FROM @ddl; EXECUTE migration_stmt; DEALLOCATE PREPARE mig -- ============================================================================ CREATE DATABASE IF NOT EXISTS baiyue_lastlag_warehouse - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastlag_warehouse; CREATE TABLE IF NOT EXISTS wh_location ( @@ -220,7 +220,7 @@ PREPARE migration_stmt FROM @ddl; EXECUTE migration_stmt; DEALLOCATE PREPARE mig -- ============================================================================ CREATE DATABASE IF NOT EXISTS baiyue_lastleg - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; CREATE TABLE IF NOT EXISTS ll_inbound_plan ( @@ -385,7 +385,7 @@ PREPARE migration_stmt FROM @ddl; EXECUTE migration_stmt; DEALLOCATE PREPARE mig -- ============================================================================ CREATE DATABASE IF NOT EXISTS baiyue_lastleg - DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; CREATE TABLE IF NOT EXISTS ll_loading_event_inbox ( @@ -4483,7 +4483,7 @@ CREATE TABLE IF NOT EXISTS ll_return_stock_receipt ( KEY idx_return_stock_receipt_order(customer_id,order_id), KEY idx_return_stock_receipt_position(customer_id,inventory_balance_id,inventory_position_id), CONSTRAINT chk_return_stock_receipt_packages CHECK(received_packages>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='真实退回入仓及再次发运来源凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='真实退回入仓及再次发运来源凭据'; ALTER TABLE ll_dispatch_pda_pick_order MODIFY COLUMN receipt_id BIGINT NULL COMMENT '原入仓实收来源,与退回来源或原生退货箱互斥'; -- 真实退回凭据与尾程订单客户键使用同一排序规则,避免相关库存子查询冲突。 SET @return_customer_collation = (SELECT collation_name FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_order' AND column_name='customer_id'); @@ -4779,7 +4779,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_external_booking ( booking_no VARCHAR(32) NOT NULL COMMENT '外接预订业务编号', trip_id BIGINT NOT NULL COMMENT '所属车次', trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', customer_code VARCHAR(64) NOT NULL COMMENT '客户编号快照', customer_name VARCHAR(255) NOT NULL COMMENT '客户名称快照', status VARCHAR(16) NOT NULL COMMENT 'DRAFT询价/CONFIRMED占位/RECEIVED确认实收/BOUND关联发运/CANCELLED取消', @@ -4832,7 +4832,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_pool_order_link ( id BIGINT NOT NULL COMMENT '内部主键', booking_id BIGINT NOT NULL COMMENT '唯一外接预订', booking_no VARCHAR(64) NOT NULL COMMENT '预订业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围', business_type VARCHAR(32) NOT NULL COMMENT '本土散板或本土卡车商业类型', business_order_id BIGINT NOT NULL COMMENT '对应商业订单内部关联', business_order_no VARCHAR(64) NOT NULL COMMENT '本土商业订单业务编号', @@ -4986,7 +4986,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote ( UNIQUE KEY uk_fleet_quote_natural (natural_key), UNIQUE KEY uk_fleet_quote_create (created_by,create_key), KEY idx_fleet_quote_search (kind,status,valid_from,valid_to) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆采购与外接销售报价'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆采购与外接销售报价'; CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( id BIGINT PRIMARY KEY COMMENT '报价历史主键', @@ -4997,7 +4997,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( occurred_at DATETIME(3) NOT NULL COMMENT '操作时间UTC', snapshot_json JSON NOT NULL COMMENT '报价完整版本快照', UNIQUE KEY uk_fleet_quote_history_version (quote_id,record_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆报价不可变版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆报价不可变版本历史'; CREATE TABLE IF NOT EXISTS ll_fleet_trip_cost ( id BIGINT NOT NULL COMMENT '内部主键', diff --git a/scripts/db/local-four-flows-schema-incremental-20261009.sql b/scripts/db/local-four-flows-schema-incremental-20261009.sql index 7d510f119..99fb1a77b 100644 --- a/scripts/db/local-four-flows-schema-incremental-20261009.sql +++ b/scripts/db/local-four-flows-schema-incremental-20261009.sql @@ -44,6 +44,6 @@ CREATE TABLE IF NOT EXISTS ll_warehouse_transfer_receipt_command ( UNIQUE KEY uk_ll_wh_receipt_cmd_key (customer_id, idempotency_key), KEY idx_ll_wh_receipt_cmd_target (customer_id, transfer_order_id, target_pallet_id), CONSTRAINT ck_ll_wh_receipt_cmd_status CHECK (status IN ('PREPARED','RESERVED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; DROP PROCEDURE IF EXISTS ensure_local_flow_column; SELECT 'LOCAL_FLOW_SCHEMA_READY' AS migration_status, DATABASE() AS target_database; diff --git a/scripts/db/overseas-business-acceptance-incremental-20261009.sql b/scripts/db/overseas-business-acceptance-incremental-20261009.sql index 87343eb81..dd9ea83a1 100644 --- a/scripts/db/overseas-business-acceptance-incremental-20261009.sql +++ b/scripts/db/overseas-business-acceptance-incremental-20261009.sql @@ -160,7 +160,7 @@ CREATE TABLE IF NOT EXISTS ll_warehouse_transfer_receipt_command ( UNIQUE KEY uk_ll_wh_receipt_cmd_key (customer_id, idempotency_key), KEY idx_ll_wh_receipt_cmd_target (customer_id, transfer_order_id, target_pallet_id), CONSTRAINT ck_ll_wh_receipt_cmd_status CHECK (status IN ('PREPARED','RESERVED','COMPLETED')) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='转运逐来源收货原请求与共享目标资源占用命令'; DROP PROCEDURE IF EXISTS ensure_local_flow_column; SELECT 'LOCAL_FLOW_SCHEMA_READY' AS migration_status, DATABASE() AS target_database; @@ -314,7 +314,7 @@ CREATE TABLE IF NOT EXISTS ll_return_stock_receipt ( KEY idx_return_stock_receipt_order(customer_id,order_id), KEY idx_return_stock_receipt_position(customer_id,inventory_balance_id,inventory_position_id), CONSTRAINT chk_return_stock_receipt_packages CHECK(received_packages>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='真实退回入仓及再次发运来源凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='真实退回入仓及再次发运来源凭据'; ALTER TABLE ll_dispatch_pda_pick_order MODIFY COLUMN receipt_id BIGINT NULL COMMENT '原入仓实收来源,与退回来源或原生退货箱互斥'; -- 真实退回凭据与尾程订单客户键使用同一排序规则,避免相关库存子查询冲突。 SET @return_customer_collation = (SELECT collation_name FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_order' AND column_name='customer_id'); @@ -615,7 +615,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_external_booking ( booking_no VARCHAR(32) NOT NULL COMMENT '外接预订业务编号', trip_id BIGINT NOT NULL COMMENT '所属车次', trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', customer_code VARCHAR(64) NOT NULL COMMENT '客户编号快照', customer_name VARCHAR(255) NOT NULL COMMENT '客户名称快照', status VARCHAR(16) NOT NULL COMMENT 'DRAFT询价/CONFIRMED占位/RECEIVED确认实收/BOUND关联发运/CANCELLED取消', @@ -668,7 +668,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_pool_order_link ( id BIGINT NOT NULL COMMENT '内部主键', booking_id BIGINT NOT NULL COMMENT '唯一外接预订', booking_no VARCHAR(64) NOT NULL COMMENT '预订业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围', business_type VARCHAR(32) NOT NULL COMMENT '本土散板或本土卡车商业类型', business_order_id BIGINT NOT NULL COMMENT '对应商业订单内部关联', business_order_no VARCHAR(64) NOT NULL COMMENT '本土商业订单业务编号', @@ -822,7 +822,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote ( UNIQUE KEY uk_fleet_quote_natural (natural_key), UNIQUE KEY uk_fleet_quote_create (created_by,create_key), KEY idx_fleet_quote_search (kind,status,valid_from,valid_to) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆采购与外接销售报价'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆采购与外接销售报价'; CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( id BIGINT PRIMARY KEY COMMENT '报价历史主键', @@ -833,7 +833,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( occurred_at DATETIME(3) NOT NULL COMMENT '操作时间UTC', snapshot_json JSON NOT NULL COMMENT '报价完整版本快照', UNIQUE KEY uk_fleet_quote_history_version (quote_id,record_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆报价不可变版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆报价不可变版本历史'; CREATE TABLE IF NOT EXISTS ll_fleet_trip_cost ( id BIGINT NOT NULL COMMENT '内部主键', diff --git a/scripts/db/relabel-fields-only.sql b/scripts/db/relabel-fields-only.sql index 17dab3edb..7cda5b1b7 100644 --- a/scripts/db/relabel-fields-only.sql +++ b/scripts/db/relabel-fields-only.sql @@ -5,7 +5,7 @@ CREATE DATABASE IF NOT EXISTS baiyue_lastleg DEFAULT CHARACTER SET utf8mb4 - COLLATE utf8mb4_unicode_ci; + COLLATE utf8mb4_0900_ai_ci; USE baiyue_lastleg; DROP PROCEDURE IF EXISTS _tmp_add_relabel_fields; diff --git a/scripts/db/return-packing-incremental-20261008.sql b/scripts/db/return-packing-incremental-20261008.sql index 6e7313a07..a46b0f6e8 100644 --- a/scripts/db/return-packing-incremental-20261008.sql +++ b/scripts/db/return-packing-incremental-20261008.sql @@ -145,7 +145,7 @@ CREATE TABLE IF NOT EXISTS ll_return_stock_receipt ( KEY idx_return_stock_receipt_order(customer_id,order_id), KEY idx_return_stock_receipt_position(customer_id,inventory_balance_id,inventory_position_id), CONSTRAINT chk_return_stock_receipt_packages CHECK(received_packages>0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='真实退回入仓及再次发运来源凭据'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='真实退回入仓及再次发运来源凭据'; ALTER TABLE ll_dispatch_pda_pick_order MODIFY COLUMN receipt_id BIGINT NULL COMMENT '原入仓实收来源,与退回来源或原生退货箱互斥'; -- 真实退回凭据与尾程订单客户键使用同一排序规则,避免相关库存子查询冲突。 SET @return_customer_collation = (SELECT collation_name FROM information_schema.columns WHERE table_schema=DATABASE() AND table_name='ll_order' AND column_name='customer_id'); diff --git a/scripts/db/return-relabel-truck-incremental-20261008.sql b/scripts/db/return-relabel-truck-incremental-20261008.sql index dabe0c23f..dad52de9c 100644 --- a/scripts/db/return-relabel-truck-incremental-20261008.sql +++ b/scripts/db/return-relabel-truck-incremental-20261008.sql @@ -233,7 +233,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_external_booking ( booking_no VARCHAR(32) NOT NULL COMMENT '外接预订业务编号', trip_id BIGINT NOT NULL COMMENT '所属车次', trip_no VARCHAR(32) NOT NULL COMMENT '车次业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '委托客户及付款归属', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '委托客户及付款归属', customer_code VARCHAR(64) NOT NULL COMMENT '客户编号快照', customer_name VARCHAR(255) NOT NULL COMMENT '客户名称快照', status VARCHAR(16) NOT NULL COMMENT 'DRAFT询价/CONFIRMED占位/RECEIVED确认实收/BOUND关联发运/CANCELLED取消', @@ -286,7 +286,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_pool_order_link ( id BIGINT NOT NULL COMMENT '内部主键', booking_id BIGINT NOT NULL COMMENT '唯一外接预订', booking_no VARCHAR(64) NOT NULL COMMENT '预订业务编号', - customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商业客户隔离范围', + customer_id VARCHAR(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '商业客户隔离范围', business_type VARCHAR(32) NOT NULL COMMENT '本土散板或本土卡车商业类型', business_order_id BIGINT NOT NULL COMMENT '对应商业订单内部关联', business_order_no VARCHAR(64) NOT NULL COMMENT '本土商业订单业务编号', @@ -440,7 +440,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote ( UNIQUE KEY uk_fleet_quote_natural (natural_key), UNIQUE KEY uk_fleet_quote_create (created_by,create_key), KEY idx_fleet_quote_search (kind,status,valid_from,valid_to) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆采购与外接销售报价'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆采购与外接销售报价'; CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( id BIGINT PRIMARY KEY COMMENT '报价历史主键', @@ -451,7 +451,7 @@ CREATE TABLE IF NOT EXISTS ll_fleet_quote_history ( occurred_at DATETIME(3) NOT NULL COMMENT '操作时间UTC', snapshot_json JSON NOT NULL COMMENT '报价完整版本快照', UNIQUE KEY uk_fleet_quote_history_version (quote_id,record_version) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='车辆报价不可变版本历史'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='车辆报价不可变版本历史'; CREATE TABLE IF NOT EXISTS ll_fleet_trip_cost ( id BIGINT NOT NULL COMMENT '内部主键', diff --git a/warehouse/src/main/resources/db/warehouse.sql b/warehouse/src/main/resources/db/warehouse.sql index 22fb93114..da27c856a 100644 --- a/warehouse/src/main/resources/db/warehouse.sql +++ b/warehouse/src/main/resources/db/warehouse.sql @@ -121,4 +121,4 @@ CREATE TABLE IF NOT EXISTS wh_document_sequence ( current_value BIGINT NOT NULL COMMENT '该前缀当日已分配流水,已分配号不回收', PRIMARY KEY (sequence_key), CONSTRAINT chk_wh_document_sequence_value CHECK (current_value > 0) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='业务单据每日独立原子流水'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='业务单据每日独立原子流水';