修改基础价格版本功能

This commit is contained in:
wuweihua
2026-09-28 15:45:07 +08:00
parent 1083c2876f
commit 32ab61b51c
22 changed files with 831 additions and 132 deletions
+26
View File
@@ -306,12 +306,37 @@ CREATE TABLE `bms_product` (
KEY `idx_product_code` (`product_code`)
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='BMS产品主表-来自产品目录';
-- ----------------------------
-- 表结构:`bms_product_price_version`
-- ----------------------------
CREATE TABLE `bms_product_price_version` (
`ppv_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '产品基础价格版本ID',
`product_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品代码',
`product_id` bigint(20) DEFAULT NULL COMMENT '对应 bms_product.product_id(该版本产品行)',
`version_no` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '版本号 V1/V2',
`version_seq` int(11) NOT NULL COMMENT '版本序号,用于自动+1',
`effective_date` date NOT NULL COMMENT '生效日期',
`expire_date` date DEFAULT NULL COMMENT '失效日期(空=长期;下一版生效日=本版失效日)',
`status` char(1) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0' COMMENT '0待生效 1已生效 2已失效',
`created_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '创建人',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`updated_by` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT '更新人',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`ppv_id`),
UNIQUE KEY `uk_ppv_code_seq` (`product_code`,`version_seq`),
UNIQUE KEY `uk_ppv_code_eff` (`product_code`,`effective_date`),
KEY `idx_ppv_code_status` (`product_code`,`status`),
KEY `idx_ppv_product_id` (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='产品基础价格版本';
-- ----------------------------
-- 表结构:`bms_product_country`
-- ----------------------------
CREATE TABLE `bms_product_country` (
`detail_id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '明细ID',
`product_id` bigint(20) DEFAULT NULL COMMENT '产品ID(bms_product.product_id,绑定具体产品版本行)',
`ppv_id` bigint(20) DEFAULT NULL COMMENT '产品基础价格版本ID bms_product_price_version.ppv_id',
`product_code` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '产品代码',
`country_name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '国家中文名',
`country_code` char(2) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'ISO2,可空待补齐',
@@ -336,6 +361,7 @@ CREATE TABLE `bms_product_country` (
KEY `idx_weight_match` (`product_code`,`country_code`,`weight_min`,`weight_max`) USING BTREE,
KEY `idx_product_eff` (`product_code`,`effective_date`,`expire_date`),
KEY `idx_product_country_pid` (`product_id`),
KEY `idx_product_country_ppv` (`ppv_id`),
KEY `idx_product_country_zone` (`zone_id`),
KEY `idx_product_country_zone_code` (`country_code`,`zone_code`),
CONSTRAINT `fk_product_country_pid` FOREIGN KEY (`product_id`) REFERENCES `bms_product` (`product_id`) ON DELETE CASCADE