Kaynağa Gözat

Merge branch 'wyp/0317-export' of Server/long-article-recommend into master

wangyunpeng 3 ay önce
ebeveyn
işleme
6673ecdec1

+ 12 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/entity/crawler/ArticleDetailInfo.java

@@ -41,10 +41,22 @@ public class ArticleDetailInfo implements Serializable {
     private Integer firstLevel;
     @Column(name = "fission_0")
     private Integer fission0;
+    @Column(name = "fission_0_head")
+    private Integer fission0Head;
+    @Column(name = "fission_0_recommend")
+    private Integer fission0Recommend;
     @Column(name = "fission_1")
     private Integer fission1;
+    @Column(name = "fission_1_head")
+    private Integer fission1Head;
+    @Column(name = "fission_1_recommend")
+    private Integer fission1Recommend;
     @Column(name = "fission_2")
     private Integer fission2;
+    @Column(name = "fission_2_head")
+    private Integer fission2Head;
+    @Column(name = "fission_2_recommend")
+    private Integer fission2Recommend;
 
     @Data
     public static class PK implements Serializable {

+ 40 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/entity/longArticle/DatastatSortStrategy.java

@@ -52,26 +52,62 @@ public class DatastatSortStrategy implements Serializable {
     private Integer firstLevel;
     @Column(name = "fission0")
     private Integer fission0;
+    @Column(name = "fission0_head")
+    private Integer fission0Head;
+    @Column(name = "fission0_recommend")
+    private Integer fission0Recommend;
     @Column(name = "fission1")
     private Integer fission1;
+    @Column(name = "fission1_head")
+    private Integer fission1Head;
+    @Column(name = "fission1_recommend")
+    private Integer fission1Recommend;
     @Column(name = "fission2")
     private Integer fission2;
+    @Column(name = "fission2_head")
+    private Integer fission2Head;
+    @Column(name = "fission2_recommend")
+    private Integer fission2Recommend;
     @Column(name = "second_first_level")
     private Integer secondFirstLevel;
     @Column(name = "second_fission0")
     private Integer secondFission0;
+    @Column(name = "second_fission0_head")
+    private Integer secondFission0Head;
+    @Column(name = "second_fission0_recommend")
+    private Integer secondFission0Recommend;
     @Column(name = "second_fission1")
     private Integer secondFission1;
+    @Column(name = "second_fission1_head")
+    private Integer secondFission1Head;
+    @Column(name = "second_fission1_recommend")
+    private Integer secondFission1Recommend;
     @Column(name = "second_fission2")
     private Integer secondFission2;
+    @Column(name = "second_fission2_head")
+    private Integer secondFission2Head;
+    @Column(name = "second_fission2_recommend")
+    private Integer secondFission2Recommend;
     @Column(name = "third_first_level")
     private Integer thirdFirstLevel;
     @Column(name = "third_fission0")
     private Integer thirdFission0;
+    @Column(name = "third_fission0_head")
+    private Integer thirdFission0Head;
+    @Column(name = "third_fission0_recommend")
+    private Integer thirdFission0Recommend;
     @Column(name = "third_fission1")
     private Integer thirdFission1;
+    @Column(name = "third_fission1_head")
+    private Integer thirdFission1Head;
+    @Column(name = "third_fission1_recommend")
+    private Integer thirdFission1Recommend;
     @Column(name = "third_fission2")
     private Integer thirdFission2;
+    @Column(name = "third_fission2_head")
+    private Integer thirdFission2Head;
+    @Column(name = "third_fission2_recommend")
+    private Integer thirdFission2Recommend;
     @Column(name = "read_rate")
     private Double readRate = 0.0;
     @Column(name = "read_fans_rate")
@@ -80,6 +116,10 @@ public class DatastatSortStrategy implements Serializable {
     private Double firstReadRate = 0.0;
     @Column(name = "fission0_first_rate")
     private Double fission0FirstRate = 0.0;
+    @Column(name = "fission0_head_first_rate")
+    private Double fission0HeadFirstRate = 0.0;
+    @Column(name = "fission0_recommend_first_rate")
+    private Double fission0RecommendFirstRate = 0.0;
     @Column(name = "fission1_fission0_rate")
     private Double fission1Fission0Rate = 0.0;
     @Column(name = "fission0_read_avg_rate")

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

@@ -44,6 +44,8 @@ public class NewSortStrategyExport {
     private Double readFansRate = 0.0;
     private Double firstReadRate = 0.0;
     private Double fission0FirstRate = 0.0;
+    private Double fission0HeadFirstRate = 0.0;
+    private Double fission0RecommendFirstRate = 0.0;
     private Double fission1Fission0Rate = 0.0;
     private Double fission0ReadAvgRate = 0.0;
     //历史信息

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

@@ -186,7 +186,9 @@ public class DataDashboardService {
                         Pair.of("O", "0.00%"),
                         Pair.of("P", "0.00%"),
                         Pair.of("Q", "0.00%"),
-                        Pair.of("R", "0.00%")
+                        Pair.of("R", "0.00%"),
+                        Pair.of("S", "0.00%"),
+                        Pair.of("T", "0.00%")
                 );
         doSendFeishuSheet(dateStrList, sheetToken, sheetId, rowNum, rows, 2, styles, delDateStrList, null);
     }
@@ -624,49 +626,85 @@ public class DataDashboardService {
             Date secondDate = articleDetailInfos.stream().map(ArticleDetailInfo::getRecallDt).filter(o -> o.after(minDate)).min(Date::compareTo).orElse(new Date());
             Date thirdDate = articleDetailInfos.stream().map(ArticleDetailInfo::getRecallDt).filter(o -> o.after(secondDate)).min(Date::compareTo).orElse(new Date());
             int sumFirstLevel = 0;
-            int sumFission0 = 0;
-            int sumFission1 = 0;
-            int sumFission2 = 0;
+            int sumFission0 = 0, sumFission0Head = 0, sumFission0Recommend = 0;
+            int sumFission1 = 0, sumFission1Head = 0, sumFission1Recommend = 0;
+            int sumFission2 = 0, sumFission2Head = 0, sumFission2Recommend = 0;
             int sumSecondFirstLevel = 0;
-            int sumSecondFission0 = 0;
-            int sumSecondFission1 = 0;
-            int sumSecondFission2 = 0;
+            int sumSecondFission0 = 0, sumSecondFission0Head = 0, sumSecondFission0Recommend = 0;
+            int sumSecondFission1 = 0, sumSecondFission1Head = 0, sumSecondFission1Recommend = 0;
+            int sumSecondFission2 = 0, sumSecondFission2Head = 0, sumSecondFission2Recommend = 0;
             int sumThirdFirstLevel = 0;
-            int sumThirdFission0 = 0;
-            int sumThirdFission1 = 0;
-            int sumThirdFission2 = 0;
+            int sumThirdFission0 = 0, sumThirdFission0Head = 0, sumThirdFission0Recommend = 0;
+            int sumThirdFission1 = 0, sumThirdFission1Head = 0, sumThirdFission1Recommend = 0;
+            int sumThirdFission2 = 0, sumThirdFission2Head = 0, sumThirdFission2Recommend = 0;
             for (ArticleDetailInfo articleDetailInfo : articleDetailInfos) {
                 if (articleDetailInfo.getRecallDt().equals(minDate)) {
                     sumFirstLevel += Optional.ofNullable(articleDetailInfo.getFirstLevel()).orElse(0);
                     sumFission0 += Optional.ofNullable(articleDetailInfo.getFission0()).orElse(0);
+                    sumFission0Head += Optional.ofNullable(articleDetailInfo.getFission0Head()).orElse(0);
+                    sumFission0Recommend += Optional.ofNullable(articleDetailInfo.getFission0Recommend()).orElse(0);
                     sumFission1 += Optional.ofNullable(articleDetailInfo.getFission1()).orElse(0);
+                    sumFission1Head += Optional.ofNullable(articleDetailInfo.getFission1Head()).orElse(0);
+                    sumFission1Recommend += Optional.ofNullable(articleDetailInfo.getFission1Recommend()).orElse(0);
                     sumFission2 += Optional.ofNullable(articleDetailInfo.getFission2()).orElse(0);
+                    sumFission2Head += Optional.ofNullable(articleDetailInfo.getFission2Head()).orElse(0);
+                    sumFission2Recommend += Optional.ofNullable(articleDetailInfo.getFission2Recommend()).orElse(0);
                 }
                 if (articleDetailInfo.getRecallDt().equals(secondDate)) {
                     sumSecondFirstLevel += Optional.ofNullable(articleDetailInfo.getFirstLevel()).orElse(0);
                     sumSecondFission0 += Optional.ofNullable(articleDetailInfo.getFission0()).orElse(0);
+                    sumSecondFission0Head += Optional.ofNullable(articleDetailInfo.getFission0Head()).orElse(0);
+                    sumSecondFission0Recommend += Optional.ofNullable(articleDetailInfo.getFission0Recommend()).orElse(0);
                     sumSecondFission1 += Optional.ofNullable(articleDetailInfo.getFission1()).orElse(0);
+                    sumSecondFission1Head += Optional.ofNullable(articleDetailInfo.getFission1Head()).orElse(0);
+                    sumSecondFission1Recommend += Optional.ofNullable(articleDetailInfo.getFission1Recommend()).orElse(0);
                     sumSecondFission2 += Optional.ofNullable(articleDetailInfo.getFission2()).orElse(0);
+                    sumSecondFission2Head += Optional.ofNullable(articleDetailInfo.getFission2Head()).orElse(0);
+                    sumSecondFission2Recommend += Optional.ofNullable(articleDetailInfo.getFission2Recommend()).orElse(0);
                 }
                 if (articleDetailInfo.getRecallDt().equals(thirdDate)) {
                     sumThirdFirstLevel += Optional.ofNullable(articleDetailInfo.getFirstLevel()).orElse(0);
                     sumThirdFission0 += Optional.ofNullable(articleDetailInfo.getFission0()).orElse(0);
+                    sumThirdFission0Head += Optional.ofNullable(articleDetailInfo.getFission0Head()).orElse(0);
+                    sumThirdFission0Recommend += Optional.ofNullable(articleDetailInfo.getFission0Recommend()).orElse(0);
                     sumThirdFission1 += Optional.ofNullable(articleDetailInfo.getFission1()).orElse(0);
+                    sumThirdFission1Head += Optional.ofNullable(articleDetailInfo.getFission1Head()).orElse(0);
+                    sumThirdFission1Recommend += Optional.ofNullable(articleDetailInfo.getFission1Recommend()).orElse(0);
                     sumThirdFission2 += Optional.ofNullable(articleDetailInfo.getFission2()).orElse(0);
+                    sumThirdFission2Head += Optional.ofNullable(articleDetailInfo.getFission2Head()).orElse(0);
+                    sumThirdFission2Recommend += Optional.ofNullable(articleDetailInfo.getFission2Recommend()).orElse(0);
                 }
             }
             obj.setFirstLevel(sumFirstLevel);
             obj.setFission0(sumFission0);
+            obj.setFission0Head(sumFission0Head);
+            obj.setFission0Recommend(sumFission0Recommend);
             obj.setFission1(sumFission1);
+            obj.setFission1Head(sumFission1Head);
+            obj.setFission1Recommend(sumFission1Recommend);
             obj.setFission2(sumFission2);
+            obj.setFission2Head(sumFission2Head);
+            obj.setFission2Recommend(sumFission2Recommend);
             obj.setSecondFirstLevel(sumSecondFirstLevel);
             obj.setSecondFission0(sumSecondFission0);
+            obj.setSecondFission0Head(sumSecondFission0Head);
+            obj.setSecondFission0Recommend(sumSecondFission0Recommend);
             obj.setSecondFission1(sumSecondFission1);
+            obj.setSecondFission1Head(sumSecondFission1Head);
+            obj.setSecondFission1Recommend(sumSecondFission1Recommend);
             obj.setSecondFission2(sumSecondFission2);
+            obj.setSecondFission2Head(sumSecondFission2Head);
+            obj.setSecondFission2Recommend(sumSecondFission2Recommend);
             obj.setThirdFirstLevel(sumThirdFirstLevel);
             obj.setThirdFission0(sumThirdFission0);
+            obj.setThirdFission0Head(sumThirdFission0Head);
+            obj.setThirdFission0Recommend(sumThirdFission0Recommend);
             obj.setThirdFission1(sumThirdFission1);
+            obj.setThirdFission1Head(sumThirdFission1Head);
+            obj.setThirdFission1Recommend(sumThirdFission1Recommend);
             obj.setThirdFission2(sumThirdFission2);
+            obj.setThirdFission2Head(sumThirdFission2Head);
+            obj.setThirdFission2Recommend(sumThirdFission2Recommend);
         }
     }
 
@@ -702,8 +740,16 @@ public class DataDashboardService {
                 obj.setReadFansRate((article.getShowViewCount() * 1.0) / avgInfo.getFans());
             }
         }
-        if (Objects.nonNull(obj.getFirstLevel()) && obj.getFirstLevel() > 0 && Objects.nonNull(obj.getFission0())) {
-            obj.setFission0FirstRate((obj.getFission0() * 1.0) / obj.getFirstLevel());
+        if (Objects.nonNull(obj.getFirstLevel()) && obj.getFirstLevel() > 0) {
+            if (Objects.nonNull(obj.getFission0())) {
+                obj.setFission0FirstRate((obj.getFission0() * 1.0) / obj.getFirstLevel());
+            }
+            if (Objects.nonNull(obj.getFission0Head())) {
+                obj.setFission0HeadFirstRate((obj.getFission0Head() * 1.0) / obj.getFirstLevel());
+            }
+            if (Objects.nonNull(obj.getFission0Recommend())) {
+                obj.setFission0RecommendFirstRate((obj.getFission0Recommend() * 1.0) / obj.getFirstLevel());
+            }
         }
         if (article.getShowViewCount() > 0 && Objects.nonNull(obj.getFirstLevel())) {
             obj.setFirstReadRate((obj.getFirstLevel() * 1.0) / article.getShowViewCount());

+ 18 - 7
long-article-recommend-service/src/main/resources/mapper/longArticle/LongArticleBaseMapper.xml

@@ -18,9 +18,13 @@
         INSERT INTO datastat_sort_strategy
         (date_str, publish_time, account_mode, account_source, account_type, account_status, bussiness_type,
         account_name, strategy, fans, view_count, avg_view_count, first_view_count, first_avg_view_count,
-        first_level, fission0, fission1, fission2, second_first_level, second_fission0, second_fission1,
-        second_fission2, third_first_level, third_fission0, third_fission1, third_fission2,
-        read_rate, read_fans_rate, first_read_rate, fission0_first_rate, fission1_fission0_rate,
+        first_level, fission0, fission0_head, fission0_recommend, fission1, fission1_head, fission1_recommend, fission2,
+        fission2_head, fission2_recommend, second_first_level, second_fission0, second_fission0_head,
+        second_fission0_recommend, second_fission1, second_fission1_head, second_fission1_recommend,
+        second_fission2, second_fission2_head, second_fission2_recommend, third_first_level, third_fission0,
+        third_fission0_head, third_fission0_recommend, third_fission1, third_fission1_head, third_fission1_recommend,
+        third_fission2,third_fission2_head, third_fission2_recommend,
+        read_rate, read_fans_rate, first_read_rate, fission0_first_rate, fission0_head_first_rate, fission0_recommend_first_rate, fission1_fission0_rate,
         fission0_read_avg_rate, his_read_rate, his_first_read_rate, his_fission0_first_rate, position, gh_id, title,
         link, wx_sn, fission0_read_avg_100_rate, fission0_read_avg_500_rate, fission0_read_avg_1000_rate,
         crawler_plan_name, crawler_plan_tag, produce_plan_name, produce_plan_tag, publish_plan_name,
@@ -31,10 +35,17 @@
             (#{item.dateStr}, #{item.publishTime}, #{item.accountMode}, #{item.accountSource}, #{item.accountType},
             #{item.accountStatus}, #{item.businessType}, #{item.accountName}, #{item.strategy}, #{item.fans},
             #{item.viewCount}, #{item.avgViewCount}, #{item.firstViewCount}, #{item.firstAvgViewCount},
-            #{item.firstLevel}, #{item.fission0}, #{item.fission1}, #{item.fission2}, #{item.secondFirstLevel},
-            #{item.secondFission0}, #{item.secondFission1}, #{item.secondFission2}, #{item.thirdFirstLevel},
-            #{item.thirdFission0}, #{item.thirdFission1}, #{item.thirdFission2}, #{item.readRate},
-            #{item.readFansRate}, #{item.firstReadRate}, #{item.fission0FirstRate}, #{item.fission1Fission0Rate},
+            #{item.firstLevel}, #{item.fission0},#{item.fission0Head},#{item.fission0Recommend}, #{item.fission1},
+            #{item.fission1Head},#{item.fission1Recommend}, #{item.fission2},#{item.fission2Head},
+            #{item.fission2Recommend}, #{item.secondFirstLevel}, #{item.secondFission0},
+            #{item.secondFission0Head}, #{item.secondFission0Recommend}, #{item.secondFission1},
+            #{item.secondFission1Head}, #{item.secondFission1Recommend}, #{item.secondFission2},
+            #{item.secondFission2Head}, #{item.secondFission2Recommend}, #{item.thirdFirstLevel},
+            #{item.thirdFission0}, #{item.thirdFission0Head}, #{item.thirdFission0Recommend},
+            #{item.thirdFission1}, #{item.thirdFission1Head}, #{item.thirdFission1Recommend},
+            #{item.thirdFission2}, #{item.thirdFission2Head}, #{item.thirdFission2Recommend}, #{item.readRate},
+            #{item.readFansRate}, #{item.firstReadRate}, #{item.fission0FirstRate}, #{item.fission0HeadFirstRate},
+             #{item.fission0RecommendFirstRate}, #{item.fission1Fission0Rate},
             #{item.fission0ReadAvgRate}, #{item.hisReadRate}, #{item.hisFirstReadRate}, #{item.hisFission0FirstRate},
             #{item.position}, #{item.ghId}, #{item.title}, #{item.link},
             #{item.wxSn}, #{item.fission0ReadAvg100Rate}, #{item.fission0ReadAvg500Rate},