Explorar o código

数据同步-广告位表同步

mac %!s(int64=2) %!d(string=hai) anos
pai
achega
fa5dd5f430

+ 19 - 5
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsBanner.java

@@ -18,7 +18,7 @@ import lombok.EqualsAndHashCode;
  * 首页广告管理表(KxsBanner)表实体类
  *
  * @author 系统
- * @since 2023-12-15 12:16:32
+ * @since 2024-06-25 15:45:05
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
@@ -57,7 +57,7 @@ public class KxsBanner extends Model<KxsBanner> implements Serializable {
      * 删除标记,0未删除,1已删除
      */
     @Schema(description = "删除标记,0未删除,1已删除")
-    private String delFlag;
+    private Integer delFlag;
 
 
     /**
@@ -89,10 +89,10 @@ public class KxsBanner extends Model<KxsBanner> implements Serializable {
 
 
     /**
-     * 分类名称
+     * 分类ID
      */
-    @Schema(description = "分类名称")
-    private String banType;
+    @Schema(description = "分类ID")
+    private String colId;
 
 
     /**
@@ -109,6 +109,20 @@ public class KxsBanner extends Model<KxsBanner> implements Serializable {
     private Integer status;
 
 
+    /**
+     * 内容
+     */
+    @Schema(description = "内容")
+    private String contents;
+
+
+    /**
+     * 排序
+     */
+    @Schema(description = "排序")
+    private Integer sort;
+
+
 
 
 }

+ 113 - 0
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsCol.java

@@ -0,0 +1,113 @@
+package com.kxs.system.api.model;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 广告位分类表(KxsCol)表实体类
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsCol extends Model<KxsCol> implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+    
+    
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+
+    /**
+     * 新增时间
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Schema(description = "新增时间")
+    private LocalDateTime createTime;
+
+
+    /**
+     * 更新时间
+     */
+    @TableField(fill = FieldFill.UPDATE)
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+
+    /**
+     * 删除标记,0未删除,1已删除
+     */
+    @Schema(description = "删除标记,0未删除,1已删除")
+    private String delFlag;
+
+
+    /**
+     * 版本
+     */
+    @Schema(description = "版本")
+    private Integer version;
+
+
+    /**
+     * 分类ID标识
+     */
+    @Schema(description = "分类ID标识")
+    private String colId;
+
+
+    /**
+     * 分类名称
+     */
+    @Schema(description = "分类名称")
+    private String colName;
+
+
+    /**
+     * 分类背景图片
+     */
+    @Schema(description = "分类背景图片")
+    private String colPic;
+
+
+    /**
+     * 分类详情
+     */
+    @Schema(description = "分类详情")
+    private String colDetail;
+
+
+    /**
+     * 外链
+     */
+    @Schema(description = "外链")
+    private String url;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+
+
+
+}
+

+ 1 - 11
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsBannerMapper.java

@@ -2,26 +2,16 @@ package com.kxs.system.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.kxs.system.api.model.KxsBanner;
-import com.kxs.system.api.vo.kxsapp.banner.BannerListVO;
 import org.apache.ibatis.annotations.Mapper;
 
-import java.util.List;
-
 /**
  * 首页广告管理表(KxsBanner)表数据库访问层
  *
  * @author 系统
- * @since 2023-12-15 12:16:32
+ * @since 2024-06-25 15:45:05
  */
 @Mapper
 public interface KxsBannerMapper extends BaseMapper<KxsBanner> {
 
-    /**
-     * 查询banner列表
-     *
-     * @return {@link List}<{@link BannerListVO}>
-     */
-    List<BannerListVO> getByList();
-
 }
 

+ 17 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/mapper/KxsColMapper.java

@@ -0,0 +1,17 @@
+package com.kxs.system.biz.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsCol;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 广告位分类表(KxsCol)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+@Mapper
+public interface KxsColMapper extends BaseMapper<KxsCol> {
+
+}
+

+ 1 - 10
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsBannerService.java

@@ -2,23 +2,14 @@ package com.kxs.system.biz.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.system.api.model.KxsBanner;
-import com.kxs.system.api.vo.kxsapp.banner.BannerListVO;
-
-import java.util.List;
 
 /**
  * 首页广告管理表(KxsBanner)表服务接口
  *
  * @author 系统
- * @since 2023-12-15 12:16:32
+ * @since 2024-06-25 15:45:05
  */
 public interface KxsBannerService extends IService<KxsBanner> {
 
-    /**
-     * 查询banner列表
-     *
-     * @return {@link List}<{@link BannerListVO}>
-     */
-    List<BannerListVO> getBylist();
 }
 

+ 15 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/KxsColService.java

@@ -0,0 +1,15 @@
+package com.kxs.system.biz.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.system.api.model.KxsCol;
+
+/**
+ * 广告位分类表(KxsCol)表服务接口
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+public interface KxsColService extends IService<KxsCol> {
+
+}
+

+ 1 - 9
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsBannerServiceImpl.java

@@ -1,27 +1,19 @@
 package com.kxs.system.biz.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.kxs.system.api.vo.kxsapp.banner.BannerListVO;
 import com.kxs.system.biz.mapper.KxsBannerMapper;
 import com.kxs.system.api.model.KxsBanner;
 import com.kxs.system.biz.service.KxsBannerService;
 import org.springframework.stereotype.Service;
 
-import java.util.List;
-
 /**
  * 首页广告管理表(KxsBanner)表服务实现类
  *
  * @author 系统
- * @since 2023-12-15 12:16:32
+ * @since 2024-06-25 15:45:05
  */
 @Service("kxsBannerService")
 public class KxsBannerServiceImpl extends ServiceImpl<KxsBannerMapper, KxsBanner> implements KxsBannerService {
 
-    @Override
-    public List<BannerListVO> getBylist() {
-
-        return baseMapper.getByList();
-    }
 }
 

+ 19 - 0
kxs-system/kxs-system-biz/src/main/java/com/kxs/system/biz/service/impl/KxsColServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.system.biz.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.system.biz.mapper.KxsColMapper;
+import com.kxs.system.api.model.KxsCol;
+import com.kxs.system.biz.service.KxsColService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 广告位分类表(KxsCol)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+@Service("kxsColService")
+public class KxsColServiceImpl extends ServiceImpl<KxsColMapper, KxsCol> implements KxsColService {
+
+}
+

+ 3 - 8
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsBannerMapper.xml

@@ -11,17 +11,12 @@
         <result column="title" property="title" />
         <result column="pic_url" property="picUrl" />
         <result column="url" property="url" />
-        <result column="ban_type" property="banType" />
+        <result column="col_id" property="colId" />
         <result column="remark" property="remark" />
         <result column="status" property="status" />
+        <result column="contents" property="contents" />
+        <result column="sort" property="sort" />
 
     </resultMap>
-    <select id="getByList" resultType="com.kxs.system.api.vo.kxsapp.banner.BannerListVO">
-        select id, title, pic_url, url from kxs_banner a
-        <where>
-            a.del_flag = '0'
-            and status = '1'
-        </where>
-    </select>
 
 </mapper>

+ 20 - 0
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsColMapper.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.kxs.system.biz.mapper.KxsColMapper">
+
+    <resultMap type="com.kxs.system.api.model.KxsCol" id="KxsColMap">
+        <result column="id" property="id" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+        <result column="del_flag" property="delFlag" />
+        <result column="version" property="version" />
+        <result column="col_id" property="colId" />
+        <result column="col_name" property="colName" />
+        <result column="col_pic" property="colPic" />
+        <result column="col_detail" property="colDetail" />
+        <result column="url" property="url" />
+        <result column="sort" property="sort" />
+
+    </resultMap>
+
+</mapper>

+ 15 - 4
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -23,10 +23,7 @@ import com.kxs.transfer.api.service.stat.*;
 import com.kxs.transfer.api.service.store.KxsMachineRecycleService;
 import com.kxs.transfer.api.service.store.KxsWarehouseService;
 import com.kxs.transfer.api.service.store.impl.*;
-import com.kxs.transfer.api.service.sys.KxsMorningLogService;
-import com.kxs.transfer.api.service.sys.KxsMorningService;
-import com.kxs.transfer.api.service.sys.KxsSchoolStudyService;
-import com.kxs.transfer.api.service.sys.KxsSysMsgService;
+import com.kxs.transfer.api.service.sys.*;
 import com.kxs.transfer.api.service.user.*;
 import com.kxs.transfer.api.service.user.impl.KxsUserPresetBeforeService;
 import com.kxs.transfer.api.service.user.impl.KxsUserReRealService;
@@ -111,6 +108,12 @@ public class DtsController {
     private final KxsZlbTradeService kxsZlbTradeService;
     private final KxsUserNewTradeService kxsUserNewTradeService;
 
+
+    private final KxsBannerService kxsBannerService;
+    private final KxsColService kxsColService;
+
+
+
     @Value("${spring.profiles.active}")
     private String active;
 
@@ -343,6 +346,14 @@ public class DtsController {
                 kxsWarehouseService.changeAccountMinData(dmlData);
             }
 
+            //广告分类
+            if ("Col".equals(dmlData.getTableName()) && "KxsBsServer".equals(dmlData.getDatabaseName())) {
+                kxsColService.changeData(dmlData);
+            }
+            if ("Advertisment".equals(dmlData.getTableName()) && "KxsBsServer".equals(dmlData.getDatabaseName())) {
+                kxsBannerService.changeData(dmlData);
+            }
+
 
 
 

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/sys/KxsBannerMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.sys;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsBanner;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 首页广告管理表(KxsBanner)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:05
+ */
+@Mapper
+@DS("sys")
+public interface KxsBannerMapper extends BaseMapper<KxsBanner> {
+
+}
+

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/sys/KxsColMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.sys;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsCol;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 广告位分类表(KxsCol)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+@Mapper
+@DS("sys")
+public interface KxsColMapper extends BaseMapper<KxsCol> {
+
+}
+

+ 81 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/sys/KxsBannerService.java

@@ -0,0 +1,81 @@
+package com.kxs.transfer.api.service.sys;
+
+import com.aliyun.dts.subscribe.clients.record.OperationType;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.system.api.model.KxsBanner;
+import com.kxs.system.api.model.KxsCol;
+import com.kxs.transfer.api.mapper.sys.KxsBannerMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 首页广告管理表(KxsBanner)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:05
+ */
+@Service("kxsBannerService")
+public class KxsBannerService extends ServiceImpl<KxsBannerMapper, KxsBanner> {
+
+    public void changeData(DMLData dmlData) {
+//修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsBanner kxsBanner = new KxsBanner();
+        kxsBanner.setId(id);
+
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "Sort":
+                    kxsBanner.setSort(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Status":
+                    kxsBanner.setStatus(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Url":
+                    kxsBanner.setUrl(validFieldDataMap.get(field).toString());
+                    break;
+                case "SeoTitle":
+                    kxsBanner.setRemark(validFieldDataMap.get(field).toString());
+                    break;
+                case "PicPath":
+                    kxsBanner.setPicUrl(validFieldDataMap.get(field).toString());
+                    break;
+                case "Title":
+                    kxsBanner.setTitle(validFieldDataMap.get(field).toString());
+                    break;
+                case "ColId":
+                    kxsBanner.setColId(validFieldDataMap.get(field).toString());
+                    break;
+                case "Contents":
+                    kxsBanner.setContents(validFieldDataMap.get(field).toString());
+                    break;
+            }
+        }
+
+        if(operation.equals(OperationType.INSERT)){
+            KxsBanner banner = baseMapper.selectById(id);
+            if(banner == null){
+                baseMapper.insert(kxsBanner);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            baseMapper.updateById(kxsBanner);
+        }
+    }
+}
+

+ 75 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/sys/KxsColService.java

@@ -0,0 +1,75 @@
+package com.kxs.transfer.api.service.sys;
+
+import com.aliyun.dts.subscribe.clients.record.OperationType;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.store.api.model.KxsActTotal;
+import com.kxs.system.api.model.KxsCol;
+import com.kxs.transfer.api.mapper.sys.KxsColMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 广告位分类表(KxsCol)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-06-25 15:45:08
+ */
+@Service("kxsColService")
+public class KxsColService extends ServiceImpl<KxsColMapper, KxsCol> {
+
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsCol kxsCol = new KxsCol();
+        kxsCol.setId(id);
+
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "Sort":
+                    kxsCol.setSort(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "Url":
+                    kxsCol.setUrl(validFieldDataMap.get(field).toString());
+                    break;
+                case "ColDetail":
+                    kxsCol.setColDetail(validFieldDataMap.get(field).toString());
+                    break;
+                case "ColPicPath":
+                    kxsCol.setColPic(validFieldDataMap.get(field).toString());
+                    break;
+                case "ColName":
+                    kxsCol.setColName(validFieldDataMap.get(field).toString());
+                    break;
+                case "ColId":
+                    kxsCol.setColId(validFieldDataMap.get(field).toString());
+                    break;
+            }
+        }
+
+        if(operation.equals(OperationType.INSERT)){
+            KxsCol col = baseMapper.selectById(id);
+            if(col == null){
+                baseMapper.insert(kxsCol);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            baseMapper.updateById(kxsCol);
+        }
+    }
+}
+