|
@@ -46,6 +46,7 @@ import com.tzld.longarticle.recommend.server.util.DateUtils;
|
|
|
import com.tzld.longarticle.recommend.server.util.MapBuilder;
|
|
|
import com.tzld.longarticle.recommend.server.util.Md5Util;
|
|
|
import com.tzld.longarticle.recommend.server.util.feishu.FeiShu;
|
|
|
+import com.tzld.longarticle.recommend.server.util.feishu.FeishuMessageSender;
|
|
|
import com.xxl.job.core.biz.model.ReturnT;
|
|
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -615,7 +616,7 @@ public class DataDashboardService {
|
|
|
Map<String, Map<String, Map<String, AccountAvgInfo>>> accountAvgInfoIndexMap,
|
|
|
Map<String, List<ArticleDetailInfo>> hisArticleDetailInfoMap) {
|
|
|
List<Article> hisArticles = hisArticleMap.getOrDefault(article.getTitle(), new ArrayList<>());
|
|
|
- hisArticles = hisArticles.stream().filter(o -> o.getPublishTimestamp() < (article.getPublishTimestamp() - 3600 * 8)
|
|
|
+ hisArticles = hisArticles.stream().filter(o -> o.getPublishTimestamp() < (article.getPublishTimestamp() - 60 * 60 * 8)
|
|
|
&& (1 == o.getItemIndex() || 2 == o.getItemIndex())
|
|
|
&& !ScoreStrategy.hisContentLateFilter(o.getPublishTimestamp())).collect(Collectors.toList());
|
|
|
Integer readCount = 0;
|
|
@@ -1074,6 +1075,7 @@ public class DataDashboardService {
|
|
|
for (String dateStr : dateStrList) {
|
|
|
newContentsYesData.addAll(intermediateIndicatorsData(dateStr));
|
|
|
}
|
|
|
+ checkViewCountFeishuAlarm(newContentsYesData);
|
|
|
newContentsYesData.sort(Comparator.comparing(IntermediateIndicatorsExport::getDateStr).reversed()
|
|
|
.thenComparing((o1, o2) -> -o1.getType().compareTo(o2.getType())));
|
|
|
int rowNum = newContentsYesData.size();
|
|
@@ -1134,6 +1136,18 @@ public class DataDashboardService {
|
|
|
doSendFeishuSheet(dateStrList, sheetToken, sheetId, rowNum, rows, 3, styles, null, null);
|
|
|
}
|
|
|
|
|
|
+ private void checkViewCountFeishuAlarm(List<IntermediateIndicatorsExport> newContentsYesData) {
|
|
|
+ for (IntermediateIndicatorsExport data : newContentsYesData) {
|
|
|
+ if (!"L4".equals(data.getType())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (data.getViewCount() < 100000){
|
|
|
+ FeishuMessageSender.sendWebHookMessage(FeishuRobotIdEnum.RECOMMEND.getRobotId(),
|
|
|
+ "【中间指标】 " + data.getDateStr() + "-" + data.getType() + " 阅读量异常");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public List<IntermediateIndicatorsExport> intermediateIndicatorsData(String dateStr) {
|
|
|
List<IntermediateIndicatorsExport> result = buildIntermediateIndicatorsData(dateStr);
|
|
|
Map<String, IntermediateIndicatorsExport> resultMap = result.stream().collect(Collectors.toMap(
|
|
@@ -1195,7 +1209,7 @@ public class DataDashboardService {
|
|
|
IntermediateIndicatorsExport item = resultMap.get(type);
|
|
|
List<Article> list = hisPublishMap.get(data.getTitle());
|
|
|
Integer poolLevel = getArticlePoolLevel(data.getGhId(), list, small);
|
|
|
- list = list.stream().filter(publish -> publish.getPublishTimestamp() < (article.getPublishTimestamp() - 3600 * 8))
|
|
|
+ list = list.stream().filter(publish -> publish.getPublishTimestamp() < (article.getPublishTimestamp() - 60 * 60 * 8))
|
|
|
.collect(Collectors.toList());
|
|
|
// L1层仅统计历史发布在3-8位置文章
|
|
|
if (poolLevel > 1 && "L1".equals(item.getType())) {
|
|
@@ -1455,7 +1469,7 @@ public class DataDashboardService {
|
|
|
for (Article publish : hisPublish) {
|
|
|
if (poolLevel == 1) {
|
|
|
List<Article> list = hisPublishMap.get(publish.getTitle());
|
|
|
- list = list.stream().filter(o -> o.getPublishTimestamp() < (publish.getPublishTimestamp() - 3600 * 8))
|
|
|
+ list = list.stream().filter(o -> o.getPublishTimestamp() < (publish.getPublishTimestamp() - 60 * 60 * 8))
|
|
|
.collect(Collectors.toList());
|
|
|
Integer hisPublishPoolLevel = getArticlePoolLevel(publish.getGhId(), list, small);
|
|
|
if (hisPublishPoolLevel > poolLevel) {
|