wangyunpeng 1 일 전
부모
커밋
7100f5ef5b

+ 2 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/vo/CategoryGroupDataExport.java

@@ -11,7 +11,9 @@ public class CategoryGroupDataExport {
     private Long fansCount = 0L;
     private Integer viewCount = 0;
     private Integer firstLevel = 0;
+    private Integer fission0 = 0;
     private Double readRate;
     private Double openRate;
+    private Double fissionRate;
     private Double openFansRate;
 }

+ 5 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/vo/CategoryGroupFunnelExport.java

@@ -10,6 +10,11 @@ public class CategoryGroupFunnelExport {
     private Long matchSuccessCount;
     private Double matchSuccessRate;
     private Long videoAuditCount;
+    private Double auditRate;
     private Long videoAuditPassCount;
     private Double videoAuditPassRate;
+    private Double readRate;
+    private Double openRate;
+    private Double fissionRate;
+
 }

+ 1 - 1
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/ArticleCategoryService.java

@@ -98,7 +98,7 @@ public class ArticleCategoryService {
         // 晋级 生成计划 添加品类处理任务
         addPromotionArticleCategoryByProducePlan();
         // 视频内容池 添加品类处理任务
-        addVideoPoolArticleCategory();
+//        addVideoPoolArticleCategory();
         // 调用大模型进行内容分类
         dealArticleCategory();
     }

+ 37 - 8
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/DataDashboardService.java

@@ -2598,7 +2598,8 @@ public class DataDashboardService {
         sum.setSource("SUM");
         sum.setDateStr(dateStr);
         for (ContentGroupFunnelExport export : result) {
-            if (!export.getType().equals(type) && !"SUM".equals(type)) {
+            if ((!export.getType().equals(type) && !"SUM".equals(type))
+                    || export.getSource().equals("SUM")) {
                 continue;
             }
             sum.setCrawlerCount(sum.getCrawlerCount() + export.getCrawlerCount());
@@ -3733,9 +3734,10 @@ public class DataDashboardService {
 
         List<Pair<String, String>> styles = Arrays
                 .asList(
-                        Pair.of("H", "0.00%"),
                         Pair.of("I", "0.00%"),
-                        Pair.of("J", "0.00%")
+                        Pair.of("J", "0.00%"),
+                        Pair.of("K", "0.00%"),
+                        Pair.of("L", "0.00%")
                 );
         doSendFeishuSheet(dateStrList, dailyDetailSheetToken, "bl1eL2", rowNum, rows,
                 2, styles, null, null);
@@ -3778,6 +3780,7 @@ public class DataDashboardService {
             export.setPublishTimes(export.getPublishTimes() + 1);
             export.setViewCount(export.getViewCount() + item.getViewCount());
             export.setFirstLevel(export.getFirstLevel() + item.getFirstLevel());
+            export.setFission0(export.getFission0() + item.getFission0());
             export.setFansCount(export.getFansCount() + item.getFans());
         }
         List<CategoryGroupDataExport> result = new ArrayList<>();
@@ -3791,6 +3794,9 @@ public class DataDashboardService {
                 if (export.getViewCount() != null && export.getViewCount() != 0) {
                     export.setOpenRate(((double) export.getFirstLevel() / export.getViewCount()));
                 }
+                if (export.getFirstLevel() != null && export.getFirstLevel() != 0) {
+                    export.setFissionRate(((double) export.getFission0() / export.getFirstLevel()));
+                }
                 result.add(export);
             }
         }
@@ -3813,8 +3819,10 @@ public class DataDashboardService {
                     export.setCategory(category);
                     sumMap.put(category, export);
                 }
+                export.setPublishTimes(export.getPublishTimes() + categoryMap.getValue().getPublishTimes());
                 export.setViewCount(export.getViewCount() + categoryMap.getValue().getViewCount());
                 export.setFirstLevel(export.getFirstLevel() + categoryMap.getValue().getFirstLevel());
+                export.setFission0(export.getFission0() + categoryMap.getValue().getFission0());
                 export.setFansCount(export.getFansCount() + categoryMap.getValue().getFansCount());
             }
         }
@@ -3827,6 +3835,9 @@ public class DataDashboardService {
             if (export.getViewCount() != null && export.getViewCount() != 0) {
                 export.setOpenRate(((double) export.getFirstLevel() / export.getViewCount()));
             }
+            if (export.getFirstLevel() != null && export.getFirstLevel() != 0) {
+                export.setFissionRate(((double) export.getFission0() / export.getFirstLevel()));
+            }
             result.add(export);
         }
         return result;
@@ -3877,8 +3888,11 @@ public class DataDashboardService {
 
         List<Pair<String, String>> styles = Arrays
                 .asList(
-                        Pair.of("E", "0.00%"),
-                        Pair.of("H", "0.00%")
+                        Pair.of("G", "0%"),
+                        Pair.of("I", "0%"),
+                        Pair.of("J", "0.00%"),
+                        Pair.of("K", "0%"),
+                        Pair.of("L", "0%")
                 );
         doSendFeishuSheet(dateStrList, dailyDetailSheetToken, "0Lwz8A", rowNum, rows,
                 2, styles, null, null);
@@ -3893,7 +3907,7 @@ public class DataDashboardService {
         // 匹配
         List<CategoryGroupFunnelExport> matchCategoryList = longArticleBaseMapper.getCategoryMatchCount(dateStart, dateEnd);
         Map<String, CategoryGroupFunnelExport> categoryMap = matchCategoryList.stream()
-               .collect(Collectors.toMap(CategoryGroupFunnelExport::getCategory, Function.identity()));
+                .collect(Collectors.toMap(CategoryGroupFunnelExport::getCategory, Function.identity()));
         for (CategoryGroupFunnelExport item : matchCategoryList) {
             item.setDateStr(dateStr);
             if (Objects.nonNull(item.getMatchCount()) && item.getMatchCount() > 0) {
@@ -3913,8 +3927,23 @@ public class DataDashboardService {
             }
             export.setVideoAuditPassCount(item.getVideoAuditPassCount());
             export.setVideoAuditCount(item.getVideoAuditCount());
-            if (Objects.nonNull(item.getVideoAuditCount()) && item.getVideoAuditCount() > 0) {
-                export.setVideoAuditPassRate((double) item.getVideoAuditPassCount() / item.getVideoAuditCount());
+            if (Objects.nonNull(export.getMatchSuccessCount()) && export.getMatchSuccessCount() > 0
+                    && Objects.nonNull(export.getVideoAuditCount())) {
+                export.setAuditRate((double) export.getVideoAuditCount() / export.getMatchSuccessCount());
+            }
+            if (Objects.nonNull(export.getVideoAuditCount()) && export.getVideoAuditCount() > 0) {
+                export.setVideoAuditPassRate((double) export.getVideoAuditPassCount() / export.getVideoAuditCount());
+            }
+        }
+        List<CategoryGroupDataExport> dataList = buildCategoryGroupDataExport(dateStr);
+        Map<String, CategoryGroupDataExport> categoryDataMap = dataList.stream().filter(o -> o.getPosition().equals("头条"))
+                .collect(Collectors.toMap(CategoryGroupDataExport::getCategory, Function.identity()));
+        for (CategoryGroupFunnelExport export : result) {
+            CategoryGroupDataExport data = categoryDataMap.get(export.getCategory());
+            if (Objects.nonNull(data)) {
+                export.setReadRate(data.getReadRate());
+                export.setOpenRate(data.getOpenRate());
+                export.setFissionRate(data.getFissionRate());
             }
         }