浏览代码

Merge branch 'feature_20250909_supeng_optimize_risk_filter_no_uid' of algorithm/recommend-server into master

supeng 4 天之前
父节点
当前提交
74d1cb54c7

+ 9 - 1
recommend-server-service/src/main/java/com/tzld/piaoquan/recommend/server/service/RecommendService.java

@@ -85,6 +85,8 @@ public class RecommendService {
     private Set<Long> riskScenes;
     @ApolloJsonValue("${creative.info.feature.channel.name:[]}")
     private Set<String> creativeInfoFeatureChannelNameSet;
+    @ApolloJsonValue("${none.user.risk.exclude.apptype:[]}")
+    private Set<Integer> noneUserRiskExcludeAppTypes;
 
     public static final String channelGroupPrefix = "alg_recsys_user_channel_group";
 
@@ -361,9 +363,15 @@ public class RecommendService {
 
         // 风险过滤
         if (riskVideoFilterSwitch) {
+            //0 4产品之外,hotsencetype 1089进入,没有mid和uid时,推荐返回过滤掉风险视频
+            boolean isNoneUserRisk = (Objects.isNull(noneUserRiskExcludeAppTypes) || !noneUserRiskExcludeAppTypes.contains(param.getAppType()))
+                    && Objects.equals(1089L, request.getHotSceneType())
+                    && (Objects.isNull(param.getUid()) || Objects.equals("0", param.getUid().trim()) || Objects.equals("null", param.getUid().trim()))
+                    && (Objects.isNull(param.getMid()) || Objects.equals("", param.getMid().trim()));
             boolean riskUser = riskScenes.contains(request.getHotSceneType())
                     || riskUserCache.getUnchecked(RedisKeyConstants.Recommend.riskUserUid).contains(param.getUid())
-                    || riskUserCache.getUnchecked(RedisKeyConstants.Recommend.riskUserMid).contains(param.getMid());
+                    || riskUserCache.getUnchecked(RedisKeyConstants.Recommend.riskUserMid).contains(param.getMid())
+                    || isNoneUserRisk;
             param.setRiskUser(riskUser);
         }