Quellcode durchsuchen

fix(build): 迁移419 补齐 membership_levels.max_daily_analyze 列(修复 ReportAnalyzeQuota 编译与运行时报错)

iwt vor 2 Wochen
Ursprung
Commit
755a5eba9a

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

@@ -3308,6 +3308,13 @@ insertSysConfigSeed("gift_membership_pay_price", "198000", "送会员商品达
             // 事务已整体回滚;保留启动可用性,下次启动可安全重试。
             log.warn("迁移417: 旧账本存量迁移失败,本批已回滚,下次启动重试: {}", e.getMessage());
         }
+
+        // 迁移419: membership_levels 补 max_daily_analyze(会员等级每日报告解析次数上限)
+        // 背景:ReportAnalyzeQuotaService(报告解析配额)已入库,但 MembershipLevel 实体字段与
+        //       membership_levels 表列在历史提交中丢失,导致编译失败 + 运行时 Unknown column。
+        //       此处补列(幂等);0/NULL 表示不限次。
+        ensureColumn("membership_levels", "max_daily_analyze",
+                "INT DEFAULT NULL COMMENT '每日报告解析次数上限(0/NULL=不限)'");
     }
 
     private void migrateHealthDimensionsTable() {

+ 1 - 0
cfc-backend/src/main/resources/schema.sql

@@ -4028,6 +4028,7 @@ CREATE TABLE IF NOT EXISTS membership_levels (
     features TEXT COMMENT '功能权限列表(JSON)',
     max_children INT DEFAULT 0 COMMENT '可添加孩子数量',
     max_tasks_per_day INT DEFAULT 0 COMMENT '每日任务上限',
+    max_daily_analyze INT DEFAULT NULL COMMENT '每日报告解析次数上限(0/NULL=不限)',
     ai_review_enabled TINYINT(1) DEFAULT 0 COMMENT 'AI审核功能',
     priority_support TINYINT(1) DEFAULT 0 COMMENT '优先客服',
     teacher_consultation TINYINT(1) DEFAULT 0 COMMENT '老师咨询',