Просмотр исходного кода

fix(db): 健康约束迁移编号 360-364 调整为 367-371,避免与远程复用编号冲突

Sisyphus 1 неделя назад
Родитель
Сommit
9673c87cd4

+ 18 - 18
cfc-backend/src/main/java/com/etotem/cfc/config/DatabaseInitializer.java

@@ -3009,19 +3009,19 @@ insertSysConfigSeed("gift_membership_pay_price", "198000", "送会员商品达
         createFatGoalTable();
         addProductVendorVisibleColumn();
 
-        // 迁移360: products 表添加健康约束字段(基础疾病禁忌/过敏原/药物相互作用标记)
+        // 迁移367: products 表添加健康约束字段(基础疾病禁忌/过敏原/药物相互作用标记)
         addProductHealthConstraintColumns();
 
-        // 迁移361: 创建 drug_interactions 表(药物-食物禁忌对照表)
+        // 迁移368: 创建 drug_interactions 表(药物-食物禁忌对照表)
         createDrugInteractionsTable();
 
-        // 迁移362: 创建 disease_intake_limits 表(疾病-饮食摄入阈值)
+        // 迁移369: 创建 disease_intake_limits 表(疾病-饮食摄入阈值)
         createDiseaseIntakeLimitsTable();
 
-        // 迁移363: 初始化 drug_interactions 种子数据
+        // 迁移370: 初始化 drug_interactions 种子数据
         seedDrugInteractionsData();
 
-        // 迁移364: 初始化 disease_intake_limits 种子数据
+        // 迁移371: 初始化 disease_intake_limits 种子数据
         seedDiseaseIntakeLimitsData();
 
         // 指标统一层迁移(356~362)
@@ -12397,14 +12397,14 @@ log.info("迁移298: 已为无 openid 的 child 账号补齐 family_members 记
         ensureColumn("products", "vendor_visible", "TINYINT(1) DEFAULT NULL COMMENT '是否仅供应商体系内用户可见(列表接口生效,直接分享可bypass)'");
     }
 
-    // 迁移360: products 表添加健康约束字段(基础疾病禁忌/过敏原/药物相互作用标记)
+    // 迁移367: products 表添加健康约束字段(基础疾病禁忌/过敏原/药物相互作用标记)
     private void addProductHealthConstraintColumns() {
         ensureColumn("products", "contraindicated_diseases", "VARCHAR(255) DEFAULT NULL COMMENT '禁忌基础疾病,逗号分隔(如\"慢性肾病,肝病\")'");
         ensureColumn("products", "allergen_tags", "VARCHAR(255) DEFAULT NULL COMMENT '过敏原标签,逗号分隔(如\"花生,小麦\")'");
         ensureColumn("products", "drug_interaction_flags", "TINYINT DEFAULT 0 COMMENT '是否命中药物-食物相互作用(1=是,需对照drug_interactions表)'");
     }
 
-    // 迁移361: 创建 drug_interactions 表(药物-食物禁忌对照表)
+    // 迁移368: 创建 drug_interactions 表(药物-食物禁忌对照表)
     private void createDrugInteractionsTable() {
         try {
             jdbcTemplate.execute("CREATE TABLE IF NOT EXISTS drug_interactions (" +
@@ -12419,13 +12419,13 @@ log.info("迁移298: 已为无 openid 的 child 账号补齐 family_members 记
                     "UNIQUE KEY uk_drug_food (drug_class, drug_specifics, interacting_subst), " +
                     "INDEX idx_interacting (interacting_subst)" +
                     ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='药物-食物禁忌对照表'");
-            log.info("迁移361: 已创建drug_interactions表");
+            log.info("迁移368: 已创建drug_interactions表");
         } catch (Exception e) {
-            log.warn("迁移361: 创建drug_interactions表失败: {}", e.getMessage());
+            log.warn("迁移368: 创建drug_interactions表失败: {}", e.getMessage());
         }
     }
 
-    // 迁移362: 创建 disease_intake_limits 表(疾病-饮食摄入阈值)
+    // 迁移369: 创建 disease_intake_limits 表(疾病-饮食摄入阈值)
     private void createDiseaseIntakeLimitsTable() {
         try {
             jdbcTemplate.execute("CREATE TABLE IF NOT EXISTS disease_intake_limits (" +
@@ -12439,13 +12439,13 @@ log.info("迁移298: 已为无 openid 的 child 账号补齐 family_members 记
                     "stage_dependent TINYINT(1) DEFAULT 0 COMMENT '是否按病情分期(1=是 0=否)', " +
                     "INDEX idx_disease_nutrient (disease_type, nutrient)" +
                     ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='疾病-饮食摄入校验阈值表'");
-            log.info("迁移362: 已创建disease_intake_limits表");
+            log.info("迁移369: 已创建disease_intake_limits表");
         } catch (Exception e) {
-            log.warn("迁移362: 创建disease_intake_limits表失败: {}", e.getMessage());
+            log.warn("迁移369: 创建disease_intake_limits表失败: {}", e.getMessage());
         }
     }
 
-    // 迁移363: 初始化 drug_interactions 种子数据(高危组合,幂等)
+    // 迁移370: 初始化 drug_interactions 种子数据(高危组合,幂等)
     private void seedDrugInteractionsData() {
         String[][] seed = {
                 {"CCB", "硝苯地平", "西柚", "1", "block", "0", "西柚抑制药物代谢酶,血药浓度升高数倍,低血压风险,服药期间完全避免"},
@@ -12480,13 +12480,13 @@ log.info("迁移298: 已为无 openid 的 child 账号补齐 family_members 记
                         "INSERT INTO drug_interactions (drug_class, drug_specifics, interacting_subst, risk_level, action_type, interval_minutes, note) VALUES (?,?,?,?,?,?,?)",
                         row[0], row[1], row[2], Integer.valueOf(row[3]), row[4], Integer.valueOf(row[5]), row[6]);
             } catch (Exception e) {
-                log.warn("迁移363: 插入drug_interactions种子失败: {}", e.getMessage());
+                log.warn("迁移370: 插入drug_interactions种子失败: {}", e.getMessage());
             }
         }
-        log.info("迁移363: drug_interactions种子数据初始化完成");
+        log.info("迁移370: drug_interactions种子数据初始化完成");
     }
 
-    // 迁移364: 初始化 disease_intake_limits 种子数据(幂等)
+    // 迁移371: 初始化 disease_intake_limits 种子数据(幂等)
     private void seedDiseaseIntakeLimitsData() {
         String[][] seed = {
                 {"慢性肾病", "protein", "g/kg/day", "0.8", "0.6", "杨桃", "1"},
@@ -12510,10 +12510,10 @@ log.info("迁移298: 已为无 openid 的 child 账号补齐 family_members 记
                         "INSERT INTO disease_intake_limits (disease_type, nutrient, unit, threshold_max, threshold_min, block_foods, stage_dependent) VALUES (?,?,?,?,?,?,?)",
                         row[0], row[1], row[2], row[3], row[4], row[5], Integer.valueOf(row[6]));
             } catch (Exception e) {
-                log.warn("迁移364: 插入disease_intake_limits种子失败: {}", e.getMessage());
+                log.warn("迁移371: 插入disease_intake_limits种子失败: {}", e.getMessage());
             }
         }
-        log.info("迁移364: disease_intake_limits种子数据初始化完成");
+        log.info("迁移371: disease_intake_limits种子数据初始化完成");
     }
 
     // 迁移363: 创建采购任务表(商品组合推荐与采购任务生命周期管理)

+ 2 - 2
cfc-backend/src/main/resources/schema.sql

@@ -6284,7 +6284,7 @@ CREATE TABLE IF NOT EXISTS indicator_correlations (
     INDEX idx_def_b (definition_id_b)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='指标关联关系(人工定义+数据校准)';
 
--- 迁移361: 药物-食物禁忌对照表
+-- 迁移368: 药物-食物禁忌对照表
 CREATE TABLE IF NOT EXISTS drug_interactions (
     id BIGINT AUTO_INCREMENT PRIMARY KEY,
     drug_class VARCHAR(50) NOT NULL COMMENT '药物类别(如CCB/他汀/抗凝药/抗生素/铁剂/甲状腺药/利尿剂/MAOI/头孢/降糖药)',
@@ -6298,7 +6298,7 @@ CREATE TABLE IF NOT EXISTS drug_interactions (
     INDEX idx_interacting (interacting_subst)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='药物-食物禁忌对照表';
 
--- 迁移362: 疾病-饮食摄入校验阈值表
+-- 迁移369: 疾病-饮食摄入校验阈值表
 CREATE TABLE IF NOT EXISTS disease_intake_limits (
     id BIGINT AUTO_INCREMENT PRIMARY KEY,
     disease_type VARCHAR(50) NOT NULL COMMENT '疾病类型(慢性肾病/糖尿病/高血压/痛风/肝病/甲状腺疾病)',