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

fix: create cart table migration and sync to schema.sql

Xiaogang Liao 2 месяцев назад
Родитель
Сommit
81f509a608

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

@@ -2103,6 +2103,22 @@ log.info("已添加template_id列到tasks表");
         ensureColumn("family_members", "communication_score", "DECIMAL(5,2) DEFAULT 0 COMMENT '沟通质量 0-100'");
         ensureColumn("family_members", "communication_score", "DECIMAL(5,2) DEFAULT 0 COMMENT '沟通质量 0-100'");
         ensureColumn("family_members", "last_interaction_at", "DATETIME COMMENT '最近互动时间'");
         ensureColumn("family_members", "last_interaction_at", "DATETIME COMMENT '最近互动时间'");
 
 
+        // 创建购物车表
+        try {
+            jdbcTemplate.execute("CREATE TABLE IF NOT EXISTS cart (" +
+                "id BIGINT AUTO_INCREMENT PRIMARY KEY, " +
+                "user_id BIGINT NOT NULL COMMENT '用户ID', " +
+                "product_id BIGINT NOT NULL COMMENT '商品ID', " +
+                "quantity INT NOT NULL DEFAULT 1 COMMENT '数量', " +
+                "created_at DATETIME DEFAULT CURRENT_TIMESTAMP, " +
+                "updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, " +
+                "INDEX idx_user_product (user_id, product_id)" +
+                ") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='购物车'");
+            log.info("已创建 cart 表");
+        } catch (Exception e) {
+            log.warn("创建 cart 表失败: {}", e.getMessage());
+        }
+
         // ==================== DanShop 电商模块建表 ====================
         // ==================== DanShop 电商模块建表 ====================
         // 1. danshop_categories (商品分类表)
         // 1. danshop_categories (商品分类表)
         try {
         try {

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

@@ -2113,3 +2113,16 @@ ON DUPLICATE KEY UPDATE config_value = VALUES(config_value);
 
 
 -- 5. 删除 children 表(最后执行,确认迁移完成后再执行此步)
 -- 5. 删除 children 表(最后执行,确认迁移完成后再执行此步)
 -- DROP TABLE IF EXISTS children;
 -- DROP TABLE IF EXISTS children;
+
+-- ============================================================
+-- 购物车表
+-- ============================================================
+CREATE TABLE IF NOT EXISTS cart (
+    id BIGINT AUTO_INCREMENT PRIMARY KEY,
+    user_id BIGINT NOT NULL COMMENT '用户ID',
+    product_id BIGINT NOT NULL COMMENT '商品ID',
+    quantity INT NOT NULL DEFAULT 1 COMMENT '数量',
+    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
+    updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
+    INDEX idx_user_product (user_id, product_id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='购物车';