wangyunpeng 10 kuukautta sitten
vanhempi
commit
99d3a10bed

+ 8 - 4
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/filter/FilterService.java

@@ -1,7 +1,9 @@
 package com.tzld.longarticle.recommend.server.service.filter;
 
 import com.tzld.longarticle.recommend.server.common.ThreadPoolFactory;
+import com.tzld.longarticle.recommend.server.model.Content;
 import com.tzld.longarticle.recommend.server.service.ServiceBeanFactory;
+import com.tzld.longarticle.recommend.server.service.filter.strategy.BadStrategy;
 import com.tzld.longarticle.recommend.server.service.filter.strategy.CategoryStrategy;
 import com.tzld.longarticle.recommend.server.service.filter.strategy.DuplicateStrategy;
 import com.tzld.longarticle.recommend.server.service.filter.strategy.HistoryTitleStrategy;
@@ -16,6 +18,7 @@ import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 @Slf4j
 @Service
@@ -59,10 +62,10 @@ public class FilterService {
         if (CollectionUtils.isEmpty(contentIds)) {
             return Collections.emptyList();
         }
-//        List<String> result = Lists.newArrayList(param.getContents());
-//        for (int i = 0; i < contentIds.size(); ++i) {
-//            result.retainAll(contentIds.get(i));
-//        }
+        List<String> result = param.getContents().stream().map(Content::getId).collect(Collectors.toList());
+        for (int i = 0; i < contentIds.size(); ++i) {
+            result.retainAll(contentIds.get(i));
+        }
         return null;
     }
 
@@ -71,6 +74,7 @@ public class FilterService {
         strategies.add(ServiceBeanFactory.getBean(HistoryTitleStrategy.class));
         strategies.add(ServiceBeanFactory.getBean(DuplicateStrategy.class));
         strategies.add(ServiceBeanFactory.getBean(CategoryStrategy.class));
+        strategies.add(ServiceBeanFactory.getBean(BadStrategy.class));
 
         return strategies;
     }

+ 1 - 2
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/filter/strategy/BadStrategy.java

@@ -52,8 +52,7 @@ public class BadStrategy  implements FilterStrategy {
         List<String> result = new ArrayList<>();
         List<Content> contents  = param.getContents();
         for (Content content : contents) {
-            String title = content.getTitle().trim().replace("\u200b", "");
-            if (!TitleSimilarCheckUtil.isDuplicateContent(title, badTitles)) {
+            if (!TitleSimilarCheckUtil.isDuplicateContent(content.getTitle(), badTitles)) {
                 result.add(content.getId());
             }
         }

+ 1 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/util/TitleSimilarCheckUtil.java

@@ -11,6 +11,7 @@ public class TitleSimilarCheckUtil {
 
     public static boolean isDuplicateContent(String title, List<String> existsContentTitle) {
         boolean result = false;
+        title = title.trim().replace("\u200b", "");
         for (String existsTitle : existsContentTitle) {
             if (isSimilar(title, existsTitle, SIMILARITY_THRESHOLD)) {
                 return true;