|
@@ -26,6 +26,7 @@ import com.tzld.longarticle.recommend.server.repository.longArticle.ArticleCrawl
|
|
|
import com.tzld.longarticle.recommend.server.repository.longArticle.ArticlePoolPromotionSourceRepository;
|
|
|
import com.tzld.longarticle.recommend.server.util.DateUtils;
|
|
|
import com.tzld.longarticle.recommend.server.util.Md5Util;
|
|
|
+import com.tzld.longarticle.recommend.server.util.TitleSimilarCheckUtil;
|
|
|
import com.tzld.longarticle.recommend.server.util.page.Page;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
@@ -119,8 +120,20 @@ public class ArticleCategoryService {
|
|
|
articleCategory.setCategory(obj.getString(articleCategory.getTitle()));
|
|
|
articleCategory.setStatus(ArticleCategoryStatusEnum.SUCCESS.getCode());
|
|
|
} else {
|
|
|
- articleCategory.setStatus(ArticleCategoryStatusEnum.FAIL.getCode());
|
|
|
- articleCategory.setFailReason(kimiResult.getFailReason());
|
|
|
+ if (Objects.nonNull(obj)) {
|
|
|
+ for (Map.Entry<String, Object> entry : obj.entrySet()) {
|
|
|
+ if (TitleSimilarCheckUtil.isSimilar(articleCategory.getTitle(), entry.getKey(),
|
|
|
+ TitleSimilarCheckUtil.ARTICLE_PROMOTION_THRESHOLD)) {
|
|
|
+ articleCategory.setCategory(obj.getString(entry.getKey()));
|
|
|
+ articleCategory.setStatus(ArticleCategoryStatusEnum.SUCCESS.getCode());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!StringUtils.hasText(articleCategory.getCategory())) {
|
|
|
+ articleCategory.setStatus(ArticleCategoryStatusEnum.FAIL.getCode());
|
|
|
+ articleCategory.setFailReason(kimiResult.getFailReason());
|
|
|
+ }
|
|
|
}
|
|
|
articleCategoryRepository.save(articleCategory);
|
|
|
}
|
|
@@ -312,8 +325,20 @@ public class ArticleCategoryService {
|
|
|
articleCategory.setStatus(ArticleCategoryStatusEnum.SUCCESS.getCode());
|
|
|
articleCategory.setFailReason(null);
|
|
|
} else {
|
|
|
- articleCategory.setStatus(ArticleCategoryStatusEnum.FAIL.getCode());
|
|
|
- articleCategory.setFailReason(kimiResult.getFailReason());
|
|
|
+ if (Objects.nonNull(obj)) {
|
|
|
+ for (Map.Entry<String, Object> entry : obj.entrySet()) {
|
|
|
+ if (TitleSimilarCheckUtil.isSimilar(articleCategory.getTitle(), entry.getKey(),
|
|
|
+ TitleSimilarCheckUtil.ARTICLE_PROMOTION_THRESHOLD)) {
|
|
|
+ articleCategory.setCategory(obj.getString(entry.getKey()));
|
|
|
+ articleCategory.setStatus(ArticleCategoryStatusEnum.SUCCESS.getCode());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!StringUtils.hasText(articleCategory.getCategory())) {
|
|
|
+ articleCategory.setStatus(ArticleCategoryStatusEnum.FAIL.getCode());
|
|
|
+ articleCategory.setFailReason(kimiResult.getFailReason());
|
|
|
+ }
|
|
|
}
|
|
|
articleCategoryRepository.save(articleCategory);
|
|
|
}
|