|  | @@ -1,6 +1,8 @@
 | 
	
		
			
				|  |  |  package com.tzld.longarticle.recommend.server;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | +import com.tzld.longarticle.recommend.server.common.enums.recommend.ArticleCategoryStatusEnum;
 | 
	
		
			
				|  |  | +import com.tzld.longarticle.recommend.server.mapper.longArticle.ArticleCategoryMapper;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.model.entity.longArticle.ArticleCategory;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.model.entity.longArticle.DatastatScore;
 | 
	
		
			
				|  |  |  import com.tzld.longarticle.recommend.server.model.vo.IntermediateIndicatorsExport;
 | 
	
	
		
			
				|  | @@ -32,6 +34,8 @@ public class DataDashboardTest {
 | 
	
		
			
				|  |  |      DatastatScoreRepository datastatScoreRepository;
 | 
	
		
			
				|  |  |      @Resource
 | 
	
		
			
				|  |  |      ArticleCategoryRepository articleCategoryRepository;
 | 
	
		
			
				|  |  | +    @Resource
 | 
	
		
			
				|  |  | +    ArticleCategoryMapper articleCategoryMapper;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Test
 | 
	
		
			
				|  |  |      public void test() {
 | 
	
	
		
			
				|  | @@ -77,19 +81,29 @@ public class DataDashboardTest {
 | 
	
		
			
				|  |  |      @Test
 | 
	
		
			
				|  |  |      public void datastatScore() {
 | 
	
		
			
				|  |  |          List<DatastatScore> scoreList = datastatScoreRepository.getBySourceIdIsNotNull();
 | 
	
		
			
				|  |  | -        List<ArticleCategory> categoryList = articleCategoryRepository.getByStatusAndVersion(1, 2);
 | 
	
		
			
				|  |  | +        List<ArticleCategory> categoryList = articleCategoryRepository.getByStatusAndVersion(ArticleCategoryStatusEnum.SUCCESS.getCode(), 2);
 | 
	
		
			
				|  |  |          Map<String, ArticleCategory> categoryMap = categoryList.stream().collect(Collectors.toMap(ArticleCategory::getProduceContentId, category -> category));
 | 
	
		
			
				|  |  | -        Map<String, ArticleCategory> titleMap = categoryList.stream().collect(Collectors.toMap(ArticleCategory::getTitle, category -> category));
 | 
	
		
			
				|  |  | -        for (DatastatScore score : scoreList) {
 | 
	
		
			
				|  |  | -            ArticleCategory category = categoryMap.get(score.getSourceId());
 | 
	
		
			
				|  |  | -            if (Objects.isNull(category)) {
 | 
	
		
			
				|  |  | -                category = titleMap.get(score.getTitle());
 | 
	
		
			
				|  |  | -                if (Objects.isNull(category)) {
 | 
	
		
			
				|  |  | -                    continue;
 | 
	
		
			
				|  |  | +        Map<String, ArticleCategory> titleMap = categoryList.stream().collect(Collectors.toMap(ArticleCategory::getTitle, category -> category, (a, b) -> a));
 | 
	
		
			
				|  |  | +        Map<String, List<DatastatScore>> scoreMap = scoreList.stream().collect(Collectors.groupingBy(DatastatScore::getTitle));
 | 
	
		
			
				|  |  | +        for (Map.Entry<String, List<DatastatScore>> entry : scoreMap.entrySet()) {
 | 
	
		
			
				|  |  | +            String title = entry.getKey();
 | 
	
		
			
				|  |  | +            List<DatastatScore> list = entry.getValue();
 | 
	
		
			
				|  |  | +            ArticleCategory category = null;
 | 
	
		
			
				|  |  | +            for (DatastatScore score : list) {
 | 
	
		
			
				|  |  | +                category = categoryMap.get(score.getSourceId());
 | 
	
		
			
				|  |  | +                if (Objects.nonNull(category)) {
 | 
	
		
			
				|  |  | +                    category = titleMap.get(score.getTitle());
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -            score.setCategory(category.getCategory());
 | 
	
		
			
				|  |  | -            datastatScoreRepository.save(score);
 | 
	
		
			
				|  |  | +            if (Objects.isNull(category)) {
 | 
	
		
			
				|  |  | +                category = titleMap.get(title);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (Objects.isNull(category)) {
 | 
	
		
			
				|  |  | +                log.error("category not exists");
 | 
	
		
			
				|  |  | +                continue;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            articleCategoryMapper.updateArticleCategory(title, category.getCategory());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 |