feat(order): add customer order foundations
This commit is contained in:
@@ -236,6 +236,33 @@ CREATE TABLE IF NOT EXISTS ord_order_party (
|
||||
CONSTRAINT fk_party_order FOREIGN KEY (order_id) REFERENCES ord_order (id)
|
||||
) ENGINE=InnoDB COMMENT='订单收发货方快照表:固化下单时发货人和收货人信息,避免主数据变化影响历史订单';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ord_customer_address (
|
||||
id BIGINT UNSIGNED NOT NULL COMMENT '客户地址ID',
|
||||
tenant_id BIGINT UNSIGNED NOT NULL COMMENT '客户ID和数据隔离键',
|
||||
address_type VARCHAR(32) NOT NULL COMMENT 'PICKUP取货地址或PRIVATE_DESTINATION私人目的仓',
|
||||
address_name VARCHAR(64) NOT NULL COMMENT '客户自定义地址名称',
|
||||
company_name VARCHAR(128) NOT NULL COMMENT '公司名称',
|
||||
contact_name VARCHAR(64) NOT NULL COMMENT '联系人',
|
||||
phone VARCHAR(32) NOT NULL COMMENT '联系电话',
|
||||
email VARCHAR(128) NULL COMMENT '联系邮箱',
|
||||
country_code CHAR(2) NOT NULL COMMENT '国家二字码',
|
||||
province VARCHAR(64) NULL COMMENT '省州',
|
||||
city VARCHAR(64) NOT NULL COMMENT '城市',
|
||||
district VARCHAR(64) NULL COMMENT '区县',
|
||||
address_line VARCHAR(255) NOT NULL COMMENT '详细地址',
|
||||
postal_code VARCHAR(20) NULL COMMENT '邮政编码',
|
||||
default_address TINYINT(1) NOT NULL DEFAULT 0 COMMENT '同类型默认地址',
|
||||
active TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否可选',
|
||||
created_by BIGINT UNSIGNED NOT NULL,
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
|
||||
updated_by BIGINT UNSIGNED NOT NULL,
|
||||
updated_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3),
|
||||
deleted TINYINT(1) NOT NULL DEFAULT 0,
|
||||
version INT NOT NULL DEFAULT 0,
|
||||
PRIMARY KEY (id),
|
||||
KEY idx_customer_address_scope (tenant_id, address_type, active, updated_at)
|
||||
) ENGINE=InnoDB COMMENT='客户自有下单地址簿;不承载平台仓库主档';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ord_order_cargo (
|
||||
id BIGINT UNSIGNED NOT NULL COMMENT '货物明细ID',
|
||||
tenant_id BIGINT UNSIGNED NOT NULL COMMENT '客户ID和数据隔离键',
|
||||
@@ -272,6 +299,7 @@ CREATE TABLE IF NOT EXISTS ord_order_cargo (
|
||||
shipment_id VARCHAR(64) NULL COMMENT '货物级 Amazon Shipment ID',
|
||||
reference_id VARCHAR(64) NULL COMMENT '货物级 Amazon Reference ID',
|
||||
product_image_file_id BIGINT UNSIGNED NULL COMMENT '文件中心产品图片逻辑ID',
|
||||
wooden_product TINYINT(1) NOT NULL DEFAULT 0 COMMENT '木制品权威判定快照;1时订单必须商检',
|
||||
created_by BIGINT UNSIGNED NOT NULL COMMENT '创建人ID',
|
||||
created_at DATETIME(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '创建时间',
|
||||
updated_by BIGINT UNSIGNED NOT NULL COMMENT '最后修改人ID',
|
||||
@@ -284,6 +312,17 @@ CREATE TABLE IF NOT EXISTS ord_order_cargo (
|
||||
CONSTRAINT fk_cargo_order FOREIGN KEY (order_id) REFERENCES ord_order (id)
|
||||
) ENGINE=InnoDB COMMENT='订单货物明细表:记录件数、重量、体积、申报价值和危险品属性';
|
||||
|
||||
SET @order_wooden_product_sql = IF(
|
||||
EXISTS(SELECT 1 FROM information_schema.columns
|
||||
WHERE table_schema = 'baiyue_order' AND table_name = 'ord_order_cargo'
|
||||
AND column_name = 'wooden_product'),
|
||||
'SELECT 1',
|
||||
'ALTER TABLE baiyue_order.ord_order_cargo ADD COLUMN wooden_product TINYINT(1) NOT NULL DEFAULT 0 COMMENT ''木制品权威判定快照;1时订单必须商检'' AFTER product_image_file_id'
|
||||
);
|
||||
PREPARE order_wooden_product_stmt FROM @order_wooden_product_sql;
|
||||
EXECUTE order_wooden_product_stmt;
|
||||
DEALLOCATE PREPARE order_wooden_product_stmt;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS ord_order_internal_note (
|
||||
id BIGINT UNSIGNED NOT NULL COMMENT '内部备注ID',
|
||||
tenant_id BIGINT UNSIGNED NOT NULL COMMENT '客户ID和数据隔离键',
|
||||
|
||||
Reference in New Issue
Block a user