mac 2 лет назад
Родитель
Сommit
e4d9a1253b

+ 2 - 1
kxs-common/kxs-common-mybatis/src/main/java/com/kxs/common/mybatis/MybatisAutoConfiguration.java

@@ -48,12 +48,13 @@ public class MybatisAutoConfiguration implements WebMvcConfigurer {
 		//动态分表
 		DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor();
 		dynamicTableNameInnerInterceptor.setTableNameHandler(
-				new MonthTableNameHandler("kxs_user_amount_log")
+				new MonthTableNameHandler("kxs_user_amount_log", "kxs_user_trade")
 		);
 		interceptor.addInnerInterceptor(dynamicTableNameInnerInterceptor);
 		return interceptor;
 	}
 
+
 	/**
 	 * 审计字段自动填充
 	 * @return {@link MetaObjectHandler}

+ 0 - 40
kxs-common/kxs-common-mybatis/src/main/java/com/kxs/common/mybatis/config/MybatisPlusConfig.java

@@ -1,40 +0,0 @@
-package com.kxs.common.mybatis.config;
-
-import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
-import com.baomidou.mybatisplus.extension.plugins.inner.DynamicTableNameInnerInterceptor;
-import com.kxs.common.mybatis.handler.MonthTableNameHandler;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import java.util.Random;
-
-/**
- * mybatis plus 配置
- *
- * @author 没秃顶的码农
- * @date 2024-03-18
- */
-@Configuration
-public class MybatisPlusConfig {
-
-    /**
-     * @return {@link MybatisPlusInterceptor}
-     */
-    @Bean
-    public MybatisPlusInterceptor mybatisPlusInterceptor() {
-        //针对 update 和 delete 语句 作用: 阻止恶意的全表更新删除
-        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
-        interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
-
-        //动态分表
-        DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor();
-        dynamicTableNameInnerInterceptor.setTableNameHandler(
-                new MonthTableNameHandler("kxs_user_amount_log", "kxs_user_trade")
-        );
-
-        interceptor.addInnerInterceptor(dynamicTableNameInnerInterceptor);
-        return interceptor;
-    }
-
-}

+ 6 - 0
kxs-stat/kxs-stat-api/src/main/java/com/kxs/stat/api/model/KxsUserTrade.java

@@ -94,6 +94,12 @@ public class KxsUserTrade extends Model<KxsUserTrade> implements Serializable {
     @Schema(description = "品牌ID")
     private Integer brandId;
 
+    /**
+     * 是否会员标识
+     */
+    @Schema(description = "是否会员标识")
+    private Integer vipFlag;
+
 
     /**
      * 扶持期贷记卡交易额

+ 56 - 4
kxs-transfer/src/main/java/com/kxs/transfer/api/service/stat/KxsUserTradeService.java

@@ -56,6 +56,9 @@ public class KxsUserTradeService extends ServiceImpl<KxsUserTradeMapper, KxsUser
         if (fieldDataMap.get("BrandId").getValue() != null) {
             userTrade.setBrandId(Integer.valueOf(fieldDataMap.get("BrandId").getValue().toString()));
         }
+        if (fieldDataMap.get("VipFlag").getValue() != null) {
+            userTrade.setVipFlag(Integer.valueOf(fieldDataMap.get("VipFlag").getValue().toString()));
+        }
         if (fieldDataMap.get("SeoTitle").getValue() != null) {
             String seoTitle = fieldDataMap.get("SeoTitle").getValue().toString();
             if ("self".equals(seoTitle)) {
@@ -84,14 +87,17 @@ public class KxsUserTradeService extends ServiceImpl<KxsUserTradeMapper, KxsUser
         if (fieldDataMap.get("HelpDirectDebitCapTradeAmt").getValue() != null) {
             userTrade.setHelpDebitCapTradeAmt(new BigDecimal(fieldDataMap.get("HelpDirectDebitCapTradeAmt").getValue().toString()));
         }
+        if (fieldDataMap.get("NotHelpDirectDebitCapTradeAmt").getValue() != null) {
+            userTrade.setProDebitCapTradeAmt(new BigDecimal(fieldDataMap.get("NotHelpDirectDebitCapTradeAmt").getValue().toString()));
+        }
         if (fieldDataMap.get("HelpDirectDebitCapNum").getValue() != null) {
-            userTrade.setHelpDebitCapNum(Integer.valueOf(fieldDataMap.get("HelpDirectDebitCapNum").getValue().toString()));
+            userTrade.setHelpDebitCapNum(new BigDecimal(fieldDataMap.get("HelpDirectDebitCapNum").getValue().toString()).intValue());
         }
         if (fieldDataMap.get("NotHelpDirectDebitCapNum").getValue() != null) {
-            userTrade.setProDebitCapNum(Integer.valueOf(fieldDataMap.get("NotHelpDirectDebitCapNum").getValue().toString()));
+            userTrade.setProDebitCapNum(new BigDecimal(fieldDataMap.get("NotHelpDirectDebitCapNum").getValue().toString()).intValue());
         }
         if (fieldDataMap.get("ProfitDirectDebitCapNum").getValue() != null) {
-            userTrade.setProADebitCapNum(Integer.valueOf(fieldDataMap.get("ProfitDirectDebitCapNum").getValue().toString()));
+            userTrade.setProADebitCapNum(new BigDecimal(fieldDataMap.get("ProfitDirectDebitCapNum").getValue().toString()).intValue());
         }
 
         KxsUserTrade kxsUserTrade = baseMapper.selectOne(Wrappers.<KxsUserTrade>lambdaQuery()
@@ -100,7 +106,8 @@ public class KxsUserTradeService extends ServiceImpl<KxsUserTradeMapper, KxsUser
                 .eq(KxsUserTrade::getTradeType, userTrade.getTradeType())
                 .eq(KxsUserTrade::getTotalType, userTrade.getTotalType())
                 .eq(KxsUserTrade::getTradeMonth, userTrade.getTradeMonth())
-                .eq(KxsUserTrade::getTradeDate, userTrade.getTradeDate()));
+                .eq(KxsUserTrade::getTradeDate, userTrade.getTradeDate())
+                .eq(KxsUserTrade::getVipFlag, userTrade.getVipFlag()));
         if (kxsUserTrade == null) {
             // 插入数据
             baseMapper.insert(userTrade);
@@ -143,6 +150,17 @@ public class KxsUserTradeService extends ServiceImpl<KxsUserTradeMapper, KxsUser
         //每个请求线程维护一个month数据,避免多线程数据冲突
         MonthTableNameHandler.setData(tradeMonth);
 
+        if (fieldDataMap.get("SeoTitle").getValue() != null) {
+            String seoTitle = fieldDataMap.get("SeoTitle").getValue().toString();
+            if ("self".equals(seoTitle)) {
+                userTrade.setTotalType(0);
+            }else{
+                userTrade.setTotalType(1);
+            }
+        }
+        if (fieldDataMap.get("QueryCount").getValue() != null) {
+            userTrade.setTradeType(Integer.valueOf(fieldDataMap.get("QueryCount").getValue().toString()));
+        }
         if (fieldDataMap.get("UserId").getValue() != null) {
             userTrade.setUserId(Integer.valueOf(fieldDataMap.get("UserId").getValue().toString()));
         }
@@ -155,6 +173,40 @@ public class KxsUserTradeService extends ServiceImpl<KxsUserTradeMapper, KxsUser
         if (fieldDataMap.get("BrandId").getValue() != null) {
             userTrade.setBrandId(Integer.valueOf(fieldDataMap.get("BrandId").getValue().toString()));
         }
+        if (fieldDataMap.get("VipFlag").getValue() != null) {
+            userTrade.setVipFlag(Integer.valueOf(fieldDataMap.get("VipFlag").getValue().toString()));
+        }
+        if (fieldDataMap.get("ProfitTradeAmt").getValue() != null) {
+            userTrade.setProBDirectTradeAmt(new BigDecimal(fieldDataMap.get("ProfitTradeAmt").getValue().toString()));
+        }
+        if (fieldDataMap.get("ProfitDebitTradeAmt").getValue() != null) {
+            userTrade.setProBDebitTradeAmt(new BigDecimal(fieldDataMap.get("ProfitDebitTradeAmt").getValue().toString()));
+        }
+        if (fieldDataMap.get("ProfitDebitCapTradeAmt").getValue() != null) {
+            userTrade.setProBDebitCapTradeAmt(new BigDecimal(fieldDataMap.get("ProfitDebitCapTradeAmt").getValue().toString()));
+        }
+        if (fieldDataMap.get("ProfitDebitCapNum").getValue() != null) {
+            userTrade.setProBDebitCapNum(new BigDecimal(fieldDataMap.get("ProfitDebitCapNum").getValue().toString()).intValue());
+        }
+
+        KxsUserTrade kxsUserTrade = baseMapper.selectOne(Wrappers.<KxsUserTrade>lambdaQuery()
+                .eq(KxsUserTrade::getUserId, userTrade.getUserId())
+                .eq(KxsUserTrade::getBrandId, userTrade.getBrandId())
+                .eq(KxsUserTrade::getTradeType, userTrade.getTradeType())
+                .eq(KxsUserTrade::getTotalType, userTrade.getTotalType())
+                .eq(KxsUserTrade::getTradeMonth, userTrade.getTradeMonth())
+                .eq(KxsUserTrade::getTradeDate, userTrade.getTradeDate())
+                .eq(KxsUserTrade::getVipFlag, userTrade.getVipFlag()));
+        if (kxsUserTrade == null) {
+            // 插入数据
+            baseMapper.insert(userTrade);
+        } else {
+            userTrade.setId(kxsUserTrade.getId());
+            baseMapper.updateById(userTrade);
+        }
+
+        //删除线程,避免线程污染
+        MonthTableNameHandler.removeData();
     }
 }