Bladeren bron

rootSessionId尾号ab

jch 1 maand geleden
bovenliggende
commit
5b0bb17521

+ 16 - 0
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/rank/strategy/RankStrategy4RegionMergeModelV566.java

@@ -19,9 +19,11 @@ import com.tzld.piaoquan.recommend.server.util.FeatureBucketUtils;
 import com.tzld.piaoquan.recommend.server.util.FeatureUtils;
 import com.tzld.piaoquan.recommend.server.util.JSONUtils;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
@@ -35,11 +37,25 @@ public class RankStrategy4RegionMergeModelV566 extends RankStrategy4RegionMergeM
     @ApolloJsonValue("${rank.score.merge.weightv566:}")
     private Map<String, Double> mergeWeight;
 
+    @Value("#{'${rootsessionid.tails.566:}'.split(',')}")
+    private Set<String> rootSessionIdTails;
+
     @Autowired
     private FeatureService featureService;
 
+    @Autowired
+    private RankStrategy4RegionMergeModelV567 modelV567;
+
     @Override
     public List<Video> mergeAndRankRovRecall(RankParam param) {
+        String rootSessionId = param.getRootSessionId();
+        if (StringUtils.isBlank(rootSessionId) || CollectionUtils.isEmpty(rootSessionIdTails)) {
+            return modelV567.mergeAndRankRovRecall(param);
+        }
+        String tail = rootSessionId.substring(rootSessionId.length() - 1);
+        if (!rootSessionIdTails.contains(tail)) {
+            return modelV567.mergeAndRankRovRecall(param);
+        }
         Map<String, Double> mergeWeight = this.mergeWeight != null ? this.mergeWeight : new HashMap<>(0);
 
         //-------------------融-------------------