CREATE TABLE `prc_quote` ( `quote_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '试算ID', `quote_key` char(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '试算指纹 MD5(客户|产品|国家|重量|计费日期)', `customer_id` bigint(20) NOT NULL COMMENT '客户ID', `product_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品代码', `product_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '产品名称', `country_code` char(2) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '国家二字码', `country_name` varchar(50) COLLATE utf8mb4_unicode_ci 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) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '命中来源 PACKAGE_FIXED/套餐固定价 PACKAGE_DISCOUNT/套餐折扣 PRODUCT_DEFAULT/产品默认价', `match_message` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '命中说明', `price_set_id` bigint(20) DEFAULT NULL COMMENT '价格套餐ID', `price_set_code` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '套餐编码', `price_set_name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '套餐名称', `set_type` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '计价类型 FIXED=固定价 DISCOUNT=折扣', `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) COLLATE utf8mb4_unicode_ci 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) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'RMB' COMMENT '币种', `round_mode` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'HALF_UP' COMMENT '取值方式(字典bms_round_mode)', `created_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建人', `created_at` datetime DEFAULT NULL COMMENT '创建时间', `updated_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新人', `updated_at` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`quote_id`), UNIQUE KEY `uk_quote_key` (`quote_key`), KEY `idx_quote_customer` (`customer_id`,`biz_date`), KEY `idx_quote_product` (`product_code`,`country_code`) ) ENGINE=InnoDB AUTO_INCREMENT=150000 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='计费试算主表'; CREATE TABLE `prc_quote_fee` ( `fee_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '费用明细ID', `quote_id` bigint(20) NOT NULL COMMENT '试算ID', `fee_type` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '费用类型(字典bms_fee_type)', `fee_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '费用名称(附加费取配置名称)', `sc_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '附加费配置ID,运费/挂号费为0', `amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '金额', `currency` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'RMB' COMMENT '币种', `round_mode` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT 'HALF_UP' COMMENT '取值方式(字典bms_round_mode)', `remark` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '备注(附加费明细摘要)', `created_at` datetime DEFAULT NULL COMMENT '创建时间', PRIMARY KEY (`fee_id`), UNIQUE KEY `uk_quote_fee_item` (`quote_id`,`fee_type`,`sc_id`), KEY `idx_quote_fee_type` (`fee_type`), KEY `idx_quote_fee_quote_id` (`quote_id`), CONSTRAINT `fk_quote_fee_quote` FOREIGN KEY (`quote_id`) REFERENCES `prc_quote` (`quote_id`) ON DELETE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=236791 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='计费试算费用明细-按费用类型一行';