| 
					
				 | 
			
			
				@@ -5,13 +5,16 @@ import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.common.enums.aigc.PublishContentStatusEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.common.enums.longArticle.ArticleVideoAuditStatusEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.common.enums.longArticle.ArticleVideoBadStatusEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.tzld.longarticle.recommend.server.common.enums.longArticle.VideoTitleReWriteEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.common.enums.recommend.ContentPoolEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.mapper.aigc.PublishContentMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.mapper.longArticle.VideoPoolAuditMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.model.entity.longArticle.PublishSingleVideoSource; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.tzld.longarticle.recommend.server.model.entity.longArticle.VideoTitleReWrite; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.model.param.videoAudit.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.model.vo.VideoPoolAuditListVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.repository.longArticle.PublishSingleVideoSourceRepository; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.tzld.longarticle.recommend.server.repository.longArticle.VideoTitleReWriteRepository; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.util.DateUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.util.RedisUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.tzld.longarticle.recommend.server.util.page.Page; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -23,6 +26,7 @@ import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.beans.factory.annotation.Value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.data.redis.core.RedisTemplate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.util.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.concurrent.TimeUnit; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -40,6 +44,8 @@ public class VideoPoolAuditService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private PublishSingleVideoSourceRepository videoSourceRepository; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private RedisUtil redisUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private VideoTitleReWriteRepository videoTitleReWriteRepository; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private RedisTemplate<String, String> redisTemplate; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -72,6 +78,13 @@ public class VideoPoolAuditService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (CollectionUtils.isEmpty(list)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> contentTraceIdList = list.stream().map(PublishSingleVideoSource::getContentTraceId).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<VideoTitleReWrite> videoTitleReWriteList = videoTitleReWriteRepository.getByContentTraceIdInAndStatus( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                contentTraceIdList, VideoTitleReWriteEnum.AVAILABLE.getCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, List<VideoTitleReWrite>> videoTitleReWriteMap = videoTitleReWriteList.stream() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .sorted((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime())) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .collect(Collectors.groupingBy(VideoTitleReWrite::getContentTraceId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (PublishSingleVideoSource item : list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             VideoPoolAuditListVO vo = new VideoPoolAuditListVO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             vo.setContentId(item.getContentTraceId()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -84,6 +97,11 @@ public class VideoPoolAuditService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (Objects.nonNull(item.getVideoPoolAuditTimestamp())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 vo.setAuditTimestamp(item.getVideoPoolAuditTimestamp()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<VideoTitleReWrite> titleReWriteList = videoTitleReWriteMap.get(item.getContentTraceId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (CollectionUtils.isNotEmpty(titleReWriteList) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    && !StringUtils.hasText(item.getArticleTitleUpdateAccount())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                vo.setTitle(titleReWriteList.get(titleReWriteList.size() - 1).getNewTitle()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             VideoPoolAuditListVO.VideoItem videoItem = new VideoPoolAuditListVO.VideoItem(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             videoItem.setVideoId(item.getContentTraceId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             videoItem.setTitle(item.getMiniProgramTitle()); 
			 |