diff --git a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/bo/CueProductBO.java b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/bo/CueProductBO.java new file mode 100644 index 0000000..8dce62f --- /dev/null +++ b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/bo/CueProductBO.java @@ -0,0 +1,73 @@ +package com.tmerclub.cloud.search.bo; + +import com.tmerclub.cloud.common.constant.Constant; +import com.tmerclub.cloud.common.model.BaseModel; +import com.tmerclub.cloud.search.canal.annotation.CanalModel; +import com.tmerclub.cloud.search.canal.common.FieldNamingPolicy; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; +import java.io.Serializable; + +/** + * 球杆商品信息 + * + * @author: frank + * @create: 2025-04-19 + **/ +@Data +@EqualsAndHashCode(callSuper = true) +@CanalModel(database = "tmerclub" + Constant.UNDERLINE_ENV + "_local", table = "cue_product", fieldNamingPolicy = FieldNamingPolicy.LOWER_UNDERSCORE) +public class CueProductBO extends BaseModel implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 商品ID + */ + private Long productId; + /** + * 关联的品牌ID + */ + private Long brandId; + /** + * 关联的系列ID + */ + private Long seriesId; + /** + * 关联的球杆类型ID + */ + private Long typeId; + /** + * 商品名称 + */ + private String productName; + /** + * 商品描述 + */ + private String productDescription; + /** + * 商品图片 + */ + private String productImages; + /** + * 价格 + */ + private Long productPrice; + /** + * 排序 + */ + private Integer productSeq; + /** + * 状态:0-禁用,1-启用 + */ + private Integer productStatus; + /** + * 删除状态 0-未删除 1-已删除 + */ + private Integer deleted; + + +} diff --git a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/listener/CueProductCanalListener.java b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/listener/CueProductCanalListener.java new file mode 100644 index 0000000..7132978 --- /dev/null +++ b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/listener/CueProductCanalListener.java @@ -0,0 +1,29 @@ +package com.tmerclub.cloud.search.listener; + +import com.tmerclub.cloud.search.bo.CueProductBO; +import com.tmerclub.cloud.search.canal.model.CanalBinLogResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +/** + * 球杆商品监听器 + * + * @author: frank + * @create: 2025-04-19 + **/ +@Component +public class CueProductCanalListener extends BaseCanalBinlogEventThrowExceptionProcessor { + + private static final Logger log = LoggerFactory.getLogger(CueProductCanalListener.class); + + @Override + protected void processInsertInternal(CanalBinLogResult result) { + log.error("球杆商品新增:{}", result.getDatabaseName()); + } + + @Override + protected void processUpdateInternal(CanalBinLogResult result) { + log.error("球杆商品修改:{}", result.getDatabaseName()); + } +}