83 lines
6.4 KiB
SQL
83 lines
6.4 KiB
SQL
-- prc_bill / prc_bill_fee: receivable billing from synced orders
|
|
-- fields follow prc_quote / prc_quote_fee; extra order_no + customer_code
|
|
SET NAMES utf8mb4;
|
|
|
|
CREATE TABLE IF NOT EXISTS prc_bill (
|
|
bill_id VARCHAR(36) NOT NULL COMMENT '计费ID',
|
|
bill_key CHAR(32) NOT NULL COMMENT 'MD5(order_no)',
|
|
order_no VARCHAR(64) NOT NULL COMMENT '订单号',
|
|
tracking_no VARCHAR(64) DEFAULT NULL COMMENT '运单号',
|
|
customer_id BIGINT(20) NOT NULL DEFAULT 0 COMMENT '客户ID',
|
|
customer_code VARCHAR(50) DEFAULT NULL COMMENT '客户代码',
|
|
customer_name VARCHAR(100) DEFAULT NULL COMMENT '客户名称',
|
|
pieces INT(11) DEFAULT NULL COMMENT '件数',
|
|
actual_weight DECIMAL(10,3) DEFAULT NULL COMMENT '实际重量KG',
|
|
volume DECIMAL(12,4) DEFAULT NULL COMMENT '体积m3',
|
|
volume_weight DECIMAL(10,3) DEFAULT NULL COMMENT '材积重KG',
|
|
pkg_length DECIMAL(10,2) DEFAULT NULL COMMENT '长CM',
|
|
pkg_width DECIMAL(10,2) DEFAULT NULL COMMENT '宽CM',
|
|
pkg_height DECIMAL(10,2) DEFAULT NULL COMMENT '高CM',
|
|
shipper_name VARCHAR(100) DEFAULT NULL COMMENT '发件人',
|
|
consignee_name VARCHAR(100) DEFAULT NULL COMMENT '收件人',
|
|
dest_postcode VARCHAR(20) DEFAULT NULL COMMENT '目的邮编',
|
|
warehouse_code VARCHAR(50) DEFAULT NULL COMMENT '仓库',
|
|
order_time DATETIME DEFAULT NULL COMMENT '下单时间',
|
|
order_remark VARCHAR(500) DEFAULT NULL COMMENT '订单备注',
|
|
product_code VARCHAR(20) NOT NULL COMMENT '产品代码',
|
|
product_name VARCHAR(100) DEFAULT NULL COMMENT '产品名称',
|
|
country_code CHAR(2) DEFAULT NULL COMMENT '国家二字码',
|
|
country_name VARCHAR(50) DEFAULT NULL COMMENT '国家名称',
|
|
weight DECIMAL(10,3) NOT NULL COMMENT '计费重量KG',
|
|
biz_date DATE NOT NULL COMMENT '计费日期',
|
|
tms_id BIGINT(20) DEFAULT NULL COMMENT '多租户系统ID',
|
|
match_source VARCHAR(30) DEFAULT NULL COMMENT '命中来源',
|
|
match_message VARCHAR(200) DEFAULT NULL COMMENT '命中说明',
|
|
price_set_id BIGINT(20) DEFAULT NULL COMMENT '价格套餐ID',
|
|
price_set_code VARCHAR(20) DEFAULT NULL COMMENT '套餐编码',
|
|
price_set_name VARCHAR(50) DEFAULT NULL COMMENT '套餐名称',
|
|
set_type VARCHAR(10) DEFAULT NULL COMMENT '计价类型',
|
|
bind_priority INT(11) DEFAULT NULL COMMENT '客户套餐优先级',
|
|
customer_priceset_id BIGINT(20) DEFAULT NULL COMMENT '客户套餐绑定ID',
|
|
product_country_id BIGINT(20) DEFAULT NULL COMMENT '关联 bms_product_country.detail_id',
|
|
weight_min DECIMAL(10,4) DEFAULT NULL COMMENT '重量段下限',
|
|
weight_max DECIMAL(10,4) DEFAULT NULL COMMENT '重量段上限',
|
|
weight_label VARCHAR(50) DEFAULT NULL COMMENT '重量段展示',
|
|
effective_date DATE DEFAULT NULL COMMENT '产品明细生效日',
|
|
charge_weight DECIMAL(10,3) DEFAULT NULL COMMENT '计费重量',
|
|
freight_rate DECIMAL(10,4) DEFAULT NULL COMMENT '运费单价',
|
|
base_freight_rate DECIMAL(10,4) DEFAULT NULL COMMENT '折扣前单价',
|
|
discount_percent DECIMAL(5,2) DEFAULT NULL COMMENT '折扣百分数',
|
|
registration_fee DECIMAL(10,2) DEFAULT NULL COMMENT '挂号费',
|
|
freight_amount DECIMAL(10,2) DEFAULT NULL COMMENT '运费金额',
|
|
surcharge_amount DECIMAL(10,2) DEFAULT NULL COMMENT '附加费合计',
|
|
payable_total DECIMAL(10,2) DEFAULT NULL COMMENT '应收总额',
|
|
currency VARCHAR(10) NOT NULL DEFAULT 'CNY' COMMENT '币种',
|
|
round_mode VARCHAR(20) NOT NULL DEFAULT 'HALF_UP' COMMENT '取值方式',
|
|
created_by VARCHAR(64) DEFAULT '' COMMENT '创建人',
|
|
created_at DATETIME DEFAULT NULL COMMENT '创建时间',
|
|
updated_by VARCHAR(64) DEFAULT '' COMMENT '更新人',
|
|
updated_at DATETIME DEFAULT NULL COMMENT '更新时间',
|
|
PRIMARY KEY (bill_id),
|
|
UNIQUE KEY uk_bill_order (order_no),
|
|
UNIQUE KEY uk_bill_key (bill_key),
|
|
INDEX idx_bill_customer (customer_code, biz_date),
|
|
INDEX idx_bill_product (product_code, country_code)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='计费应收主表-订单同步计费';
|
|
|
|
CREATE TABLE IF NOT EXISTS prc_bill_fee (
|
|
fee_id VARCHAR(36) NOT NULL COMMENT '费用明细ID',
|
|
bill_id VARCHAR(36) NOT NULL COMMENT '计费ID',
|
|
fee_type VARCHAR(30) NOT NULL COMMENT '费用类型(字典bms_fee_type)',
|
|
fee_name VARCHAR(100) DEFAULT NULL COMMENT '费用名称',
|
|
sc_id BIGINT(20) NOT NULL DEFAULT 0 COMMENT '附加费配置ID',
|
|
amount DECIMAL(12,2) NOT NULL DEFAULT 0 COMMENT '金额',
|
|
currency VARCHAR(10) NOT NULL DEFAULT 'CNY' COMMENT '币种',
|
|
round_mode VARCHAR(20) DEFAULT 'HALF_UP' COMMENT '取值方式',
|
|
remark VARCHAR(500) DEFAULT NULL COMMENT '备注',
|
|
created_at DATETIME DEFAULT NULL COMMENT '创建时间',
|
|
PRIMARY KEY (fee_id),
|
|
UNIQUE KEY uk_bill_fee_item (bill_id, fee_type, sc_id),
|
|
INDEX idx_bill_fee_type (fee_type),
|
|
CONSTRAINT fk_bill_fee_bill FOREIGN KEY (bill_id) REFERENCES prc_bill (bill_id) ON DELETE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='计费应收费用明细';
|