Bladeren bron

fwhStrategy

wangyunpeng 4 weken geleden
bovenliggende
commit
327f45c8d1

+ 1 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/common/enums/recommend/RankStrategyEnum.java

@@ -28,6 +28,7 @@ public enum RankStrategyEnum {
     LATE_STRATEGY("ArticleRankLate", "晚间策略", "lateRankStrategy"),
     RANDOM_STRATEGY("ArticleRankRandom", "随机策略", "randomRankStrategy"),
     DEFAULT_STRATEGY("ArticleRankV1", "默认策略", "defaultRankStrategy"),
+    FWH_STRATEGY("FwhStrategy", "服务号策略", "fwhColdStartRankStrategy"),
     ;
 
     private final String strategy;

+ 5 - 5
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/recommend/rank/strategy/FwhColdStartRankStrategy.java

@@ -12,10 +12,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author dyp
@@ -71,7 +68,10 @@ public class FwhColdStartRankStrategy implements RankStrategy {
 
         // 3 选文章
         List<Content> result = new ArrayList<>();
-        int size = param.getSize() * param.getUserGroupIds().size();
+        int size = param.getSize();
+        if (Objects.nonNull(param.getUserGroupIds())) {
+            size = param.getSize() * param.getUserGroupIds().size();
+        }
         result.addAll(contents.subList(0, Math.min(contents.size(), size)));
 
         return new RankResult(result);