29 lines
2.3 KiB
SQL
29 lines
2.3 KiB
SQL
-- 报关两文件流程:回执与真实报关完税文件分离。
|
|
-- 仅在已确认目标测试库后执行;所有 DDL 可重复执行,不创建数据库、不写业务数据。
|
|
USE baiyue_firstleg;
|
|
|
|
SET @ddl = IF(NOT EXISTS (
|
|
SELECT 1 FROM information_schema.columns
|
|
WHERE table_schema=DATABASE() AND table_name='fl_customs_container' AND column_name='broker_submitted_at'
|
|
), 'ALTER TABLE fl_customs_container ADD COLUMN broker_submitted_by BIGINT UNSIGNED NULL COMMENT ''发送报关行执行的操作人ID'' AFTER completed_at, ADD COLUMN broker_submitted_by_name VARCHAR(64) NULL COMMENT ''发送报关行执行的操作人名称'' AFTER broker_submitted_by, ADD COLUMN broker_submitted_at DATETIME(3) NULL COMMENT ''发送报关行执行时间'' AFTER broker_submitted_by_name', 'SELECT 1');
|
|
PREPARE customs_container_broker_submit_stmt FROM @ddl; EXECUTE customs_container_broker_submit_stmt; DEALLOCATE PREPARE customs_container_broker_submit_stmt;
|
|
|
|
CREATE TABLE IF NOT EXISTS fl_customs_final_document (
|
|
id BIGINT UNSIGNED NOT NULL COMMENT '真实报关完税文件ID',
|
|
source_document_id BIGINT UNSIGNED NOT NULL COMMENT '对应冻结客户资料ID',
|
|
file_id BIGINT UNSIGNED NOT NULL COMMENT 'File服务文件ID',
|
|
file_name VARCHAR(255) NOT NULL COMMENT '真实报关完税文件名称快照',
|
|
file_hash CHAR(64) NOT NULL COMMENT '真实报关完税文件SHA-256摘要',
|
|
content_type VARCHAR(128) NULL COMMENT '真实报关完税文件媒体类型',
|
|
size_bytes BIGINT UNSIGNED NOT NULL COMMENT '真实报关完税文件大小(字节)',
|
|
uploaded_by BIGINT UNSIGNED NOT NULL COMMENT '上传操作人ID',
|
|
uploaded_by_name VARCHAR(64) NULL COMMENT '上传操作人名称快照',
|
|
uploaded_at DATETIME(3) NOT NULL COMMENT '上传时间',
|
|
version INT UNSIGNED NOT NULL DEFAULT 1 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_customs_final_source(source_document_id),
|
|
CONSTRAINT fk_customs_final_source FOREIGN KEY(source_document_id) REFERENCES fl_customs_customer_document(id)
|
|
) ENGINE=InnoDB COMMENT='真实报关完税文件当前版本';
|