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

feat(backend): 新增 ProductComboItem 实体与 Mapper(套餐独立模型重写 Task1, sync_gap_tasks)

Agnes Agent 1 неделя назад
Родитель
Сommit
7cfaf8f9b5

+ 46 - 0
cfc-backend/src/main/java/com/etotem/cfc/entity/ProductComboItem.java

@@ -0,0 +1,46 @@
+package com.etotem.cfc.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 商品套餐内容(商品级定义、SKU 级键控):
+ * 一个套餐商品包含哪些子商品(子商品 SKU × 数量)。
+ * 归属列 combo_sku_id = 套餐 SKU(套餐商品通常单规格,即套餐唯一 SKU)。
+ * 不引用旧命名(product_sku_combo_items / product_bundle_items),避免与旧机制混淆。
+ */
+@Data
+@TableName("product_combo_items")
+public class ProductComboItem implements Serializable {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /** 套餐 SKU id(内容归属) */
+    private Long comboSkuId;
+
+    /** 子商品 */
+    private Long childProductId;
+
+    /** 子商品 SKU(必填,精确到规格) */
+    private Long childSkuId;
+
+    /** 数量(>0) */
+    private Integer quantity;
+
+    private Date createdAt;
+
+    /* ---- 展示字段(不落库,listComboItems 回填) ---- */
+    @TableField(exist = false)
+    private String childProductName;
+    @TableField(exist = false)
+    private String childProductImage;
+    @TableField(exist = false)
+    private String childSkuSpecs;
+}

+ 9 - 0
cfc-backend/src/main/java/com/etotem/cfc/mapper/ProductComboItemMapper.java

@@ -0,0 +1,9 @@
+package com.etotem.cfc.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.etotem.cfc.entity.ProductComboItem;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ProductComboItemMapper extends BaseMapper<ProductComboItem> {
+}