Kaynağa Gözat

用户新增统计表数据同步

mac 2 yıl önce
ebeveyn
işleme
fa72757bc6

+ 108 - 0
kxs-stat/kxs-stat-api/src/main/java/com/kxs/stat/api/model/KxsUserNewTrade.java

@@ -0,0 +1,108 @@
+package com.kxs.stat.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;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表实体类
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class KxsUserNewTrade extends Model<KxsUserNewTrade> 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;
+
+
+    /**
+     * 交易日
+     */
+    @Schema(description = "交易日")
+    private Integer tradeDate;
+
+
+    /**
+     * 交易月
+     */
+    @Schema(description = "交易月")
+    private Integer tradeMonth;
+
+
+    /**
+     * 创客ID
+     */
+    @Schema(description = "创客ID")
+    private Integer userId;
+
+
+    /**
+     * 统计类型 0个人 1团队
+     */
+    @Schema(description = "统计类型 0个人 1团队")
+    private Integer totalType;
+
+
+    /**
+     * 新增数量
+     */
+    @Schema(description = "新增数量")
+    private Integer newCount;
+
+
+
+
+}
+

+ 17 - 0
kxs-stat/kxs-stat-biz/src/main/java/com/kxs/stat/biz/mapper/KxsUserNewTradeMapper.java

@@ -0,0 +1,17 @@
+package com.kxs.stat.biz.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.stat.api.model.KxsUserNewTrade;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+@Mapper
+public interface KxsUserNewTradeMapper extends BaseMapper<KxsUserNewTrade> {
+
+}
+

+ 15 - 0
kxs-stat/kxs-stat-biz/src/main/java/com/kxs/stat/biz/service/KxsUserNewTradeService.java

@@ -0,0 +1,15 @@
+package com.kxs.stat.biz.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.stat.api.model.KxsUserNewTrade;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表服务接口
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+public interface KxsUserNewTradeService extends IService<KxsUserNewTrade> {
+
+}
+

+ 19 - 0
kxs-stat/kxs-stat-biz/src/main/java/com/kxs/stat/biz/service/impl/KxsUserNewTradeServiceImpl.java

@@ -0,0 +1,19 @@
+package com.kxs.stat.biz.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.stat.biz.mapper.KxsUserNewTradeMapper;
+import com.kxs.stat.api.model.KxsUserNewTrade;
+import com.kxs.stat.biz.service.KxsUserNewTradeService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+@Service("kxsUserNewTradeService")
+public class KxsUserNewTradeServiceImpl extends ServiceImpl<KxsUserNewTradeMapper, KxsUserNewTrade> implements KxsUserNewTradeService {
+
+}
+

+ 19 - 0
kxs-stat/kxs-stat-biz/src/main/resources/mapper/KxsUserNewTradeMapper.xml

@@ -0,0 +1,19 @@
+<?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.stat.biz.mapper.KxsUserNewTradeMapper">
+
+    <resultMap type="com.kxs.stat.api.model.KxsUserNewTrade" id="KxsUserNewTradeMap">
+        <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="trade_date" property="tradeDate" />
+        <result column="trade_month" property="tradeMonth" />
+        <result column="user_id" property="userId" />
+        <result column="total_type" property="totalType" />
+        <result column="new_count" property="newCount" />
+
+    </resultMap>
+
+</mapper>

+ 5 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -105,6 +105,7 @@ public class DtsController {
     private final KxsUserLogoutTradeService kxsUserLogoutTradeService;
     private final KxsUserLogoutTradeService kxsUserLogoutTradeService;
     private final KxsUserGdTradeService kxsUserGdTradeService;
     private final KxsUserGdTradeService kxsUserGdTradeService;
     private final KxsZlbTradeService kxsZlbTradeService;
     private final KxsZlbTradeService kxsZlbTradeService;
+    private final KxsUserNewTradeService kxsUserNewTradeService;
 
 
     @Value("${spring.profiles.active}")
     @Value("${spring.profiles.active}")
     private String active;
     private String active;
@@ -390,6 +391,10 @@ public class DtsController {
             if ("HelpProfitUserTradeSummay".equals(dmlData.getTableName())) {
             if ("HelpProfitUserTradeSummay".equals(dmlData.getTableName())) {
                 kxsZlbTradeService.changeData(dmlData);
                 kxsZlbTradeService.changeData(dmlData);
             }
             }
+            //助力宝统计
+            if ("PullnewSummary".equals(dmlData.getTableName())) {
+                kxsUserNewTradeService.changeData(dmlData);
+            }
 
 
 
 
 
 

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/stat/KxsUserNewTradeMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.stat;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.stat.api.model.KxsUserNewTrade;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表数据库访问层
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+@Mapper
+@DS("stat")
+public interface KxsUserNewTradeMapper extends BaseMapper<KxsUserNewTrade> {
+
+}
+

+ 81 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/stat/KxsUserNewTradeService.java

@@ -0,0 +1,81 @@
+package com.kxs.transfer.api.service.stat;
+
+import com.aliyun.dts.subscribe.clients.record.OperationType;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.stat.api.model.KxsUserNewTrade;
+import com.kxs.stat.api.model.KxsZlbTrade;
+import com.kxs.transfer.api.mapper.stat.KxsUserNewTradeMapper;
+import com.kxs.transfer.api.model.table.DMLData;
+import com.kxs.transfer.api.model.table.FieldData;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 创客新增统计表(KxsUserNewTrade)表服务实现类
+ *
+ * @author 系统
+ * @since 2024-05-16 11:07:42
+ */
+@Service("kxsUserNewTradeService")
+public class KxsUserNewTradeService extends ServiceImpl<KxsUserNewTradeMapper, KxsUserNewTrade> {
+
+    public void changeData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //全部字段值
+        Map<String, FieldData> fieldDataMap = dmlData.getFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsUserNewTrade userNewTrade = new KxsUserNewTrade();
+
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        if (fieldDataMap.get("UserId").getValue() != null) {
+            userNewTrade.setUserId(Integer.valueOf(fieldDataMap.get("UserId").getValue().toString()));
+        }
+        if (fieldDataMap.get("TradeMonth").getValue() != null) {
+            userNewTrade.setTradeMonth(Integer.valueOf(fieldDataMap.get("TradeMonth").getValue().toString()));
+        }
+        if (fieldDataMap.get("TradeDate").getValue() != null) {
+            userNewTrade.setTradeDate(Integer.valueOf(fieldDataMap.get("TradeDate").getValue().toString()));
+        }
+        if (fieldDataMap.get("SeoTitle").getValue() != null) {
+            String seoTitle = fieldDataMap.get("SeoTitle").getValue().toString();
+            if ("self".equals(seoTitle)) {
+                userNewTrade.setTotalType(0);
+            } else {
+                userNewTrade.setTotalType(1);
+            }
+        }
+        if (fieldDataMap.get("RecUserAuthNum").getValue() != null) {
+            userNewTrade.setNewCount(Integer.valueOf(fieldDataMap.get("TradeAmount").getValue().toString()));
+        }
+
+
+
+
+        KxsUserNewTrade kxsZlbTrade = baseMapper.selectOne(Wrappers.<KxsUserNewTrade>lambdaQuery()
+                .eq(KxsUserNewTrade::getUserId, userNewTrade.getUserId())
+                .eq(KxsUserNewTrade::getTotalType, userNewTrade.getTotalType())
+                .eq(KxsUserNewTrade::getTradeMonth, userNewTrade.getTradeMonth())
+                .eq(KxsUserNewTrade::getTradeDate, userNewTrade.getTradeDate()));
+        if(kxsZlbTrade == null){
+            baseMapper.insert(userNewTrade);
+        }else{
+            userNewTrade.setId(kxsZlbTrade.getId());
+            baseMapper.updateById(userNewTrade);
+        }
+    }
+}
+

+ 3 - 2
kxs-transfer/src/main/java/com/kxs/transfer/api/service/store/impl/KxsMachineAdvanceService.java

@@ -129,9 +129,10 @@ public class KxsMachineAdvanceService extends ServiceImpl<KxsMachineAdvanceMappe
                     machineAdvanceInfo.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
                     machineAdvanceInfo.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
                     break;
                     break;
                 case "ApplyDate":
                 case "ApplyDate":
-                    machineAdvanceInfo.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    if(validFieldDataMap.get(field) != null){
+                        machineAdvanceInfo.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    }
                     break;
                     break;
-
             }
             }
         }
         }
         if (operation.equals(OperationType.UPDATE)) {
         if (operation.equals(OperationType.UPDATE)) {