|
@@ -5,6 +5,8 @@ import com.google.common.collect.Lists;
|
|
|
import com.tzld.longarticle.recommend.server.common.CostMonitor;
|
|
|
import com.tzld.longarticle.recommend.server.common.ThreadPoolFactory;
|
|
|
import com.tzld.longarticle.recommend.server.common.enums.StatusEnum;
|
|
|
+import com.tzld.longarticle.recommend.server.common.enums.recommend.ArticleCategoryStatusEnum;
|
|
|
+import com.tzld.longarticle.recommend.server.common.enums.recommend.ArticlePoolPromotionSourceStatusEnum;
|
|
|
import com.tzld.longarticle.recommend.server.common.enums.recommend.ArticleTypeEnum;
|
|
|
import com.tzld.longarticle.recommend.server.common.enums.recommend.FeishuRobotIdEnum;
|
|
|
import com.tzld.longarticle.recommend.server.mapper.crawler.CrawlerBaseMapper;
|
|
@@ -186,18 +188,27 @@ public class RecallService implements ApplicationContextAware {
|
|
|
}
|
|
|
|
|
|
public void setContentCategory(List<Content> contentList) {
|
|
|
- List<String> channelContentIds = contentList.stream().map(Content::getCrawlerChannelContentId).collect(Collectors.toList());
|
|
|
+ List<String> channelContentIds = contentList.stream().map(Content::getCrawlerChannelContentId)
|
|
|
+ .collect(Collectors.toList());
|
|
|
// 查询晋升rootProduceContentId
|
|
|
- List<ArticlePoolPromotionSource> sourceList = articlePoolPromotionSourceRepository.getByChannelContentIdIn(channelContentIds);
|
|
|
- Map<String, ArticlePoolPromotionSource> sourceMap = sourceList.stream().collect(Collectors.toMap(ArticlePoolPromotionSource::getChannelContentId, Function.identity()));
|
|
|
- List<String> publishContentIds = sourceList.stream().map(ArticlePoolPromotionSource::getRootPublishContentId).collect(Collectors.toList());
|
|
|
+ List<ArticlePoolPromotionSource> sourceList = articlePoolPromotionSourceRepository
|
|
|
+ .getByChannelContentIdInAndStatusAndDeleted(channelContentIds,
|
|
|
+ ArticlePoolPromotionSourceStatusEnum.FINISH.getCode(), 0);
|
|
|
+ Map<String, ArticlePoolPromotionSource> sourceMap = sourceList.stream()
|
|
|
+ .collect(Collectors.toMap(ArticlePoolPromotionSource::getChannelContentId, Function.identity()));
|
|
|
+ List<String> publishContentIds = sourceList.stream().
|
|
|
+ map(ArticlePoolPromotionSource::getRootPublishContentId).collect(Collectors.toList());
|
|
|
List<PublishContent> publishContentList = publishContentRepository.getByIdIn(publishContentIds);
|
|
|
- Map<String, PublishContent> publishContentMap = publishContentList.stream().collect(Collectors.toMap(PublishContent::getId, Function.identity()));
|
|
|
+ Map<String, PublishContent> publishContentMap = publishContentList.stream()
|
|
|
+ .collect(Collectors.toMap(PublishContent::getId, Function.identity()));
|
|
|
// 根据produceContentId查询category
|
|
|
- List<ArticleCategory> articleCategoryList = articleCategoryRepository.findAll();
|
|
|
- Map<String, ArticleCategory> categoryMap = articleCategoryList.stream().collect(Collectors.toMap(ArticleCategory::getProduceContentId, Function.identity()));
|
|
|
- Map<String, ArticleCategory> coldStartCategoryMap = articleCategoryList.stream().collect(Collectors.toMap(ArticleCategory::getChannelContentId, Function.identity(), (a, b) -> a));
|
|
|
- Map<String, ArticleCategory> titleCategoryMap = articleCategoryList.stream().collect(Collectors.toMap(ArticleCategory::getTitleMd5, Function.identity(), (a, b) -> a));
|
|
|
+ List<ArticleCategory> articleCategoryList = articleCategoryRepository.getByStatus(ArticleCategoryStatusEnum.SUCCESS.getCode());
|
|
|
+ Map<String, ArticleCategory> categoryMap = articleCategoryList.stream()
|
|
|
+ .collect(Collectors.toMap(ArticleCategory::getProduceContentId, Function.identity()));
|
|
|
+ Map<String, ArticleCategory> coldStartCategoryMap = articleCategoryList.stream()
|
|
|
+ .collect(Collectors.toMap(ArticleCategory::getChannelContentId, Function.identity(), (a, b) -> a));
|
|
|
+ Map<String, ArticleCategory> titleCategoryMap = articleCategoryList.stream()
|
|
|
+ .collect(Collectors.toMap(ArticleCategory::getTitleMd5, Function.identity(), (a, b) -> a));
|
|
|
for (Content content : contentList) {
|
|
|
ArticlePoolPromotionSource source = sourceMap.get(content.getCrawlerChannelContentId());
|
|
|
ArticleCategory category = null;
|
|
@@ -434,7 +445,8 @@ public class RecallService implements ApplicationContextAware {
|
|
|
continue;
|
|
|
}
|
|
|
int sumFission0 = 0;
|
|
|
- Date minDate = article.getArticleDetailInfoList().stream().map(ArticleDetailInfo::getRecallDt).min(Date::compareTo).orElse(new Date());
|
|
|
+ Date minDate = article.getArticleDetailInfoList().stream().map(ArticleDetailInfo::getRecallDt)
|
|
|
+ .min(Date::compareTo).orElse(new Date());
|
|
|
for (ArticleDetailInfo articleDetailInfo : article.getArticleDetailInfoList()) {
|
|
|
if (articleDetailInfo.getRecallDt().equals(minDate) && Objects.nonNull(articleDetailInfo.getFission0())) {
|
|
|
sumFission0 += articleDetailInfo.getFission0();
|