| 
														
															@@ -1,6 +1,5 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 package com.tzld.piaoquan.content.understanding.service.impl; 
														 | 
														
														 | 
														
															 package com.tzld.piaoquan.content.understanding.service.impl; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.alibaba.fastjson.JSON; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.aliyun.odps.data.Record; 
														 | 
														
														 | 
														
															 import com.aliyun.odps.data.Record; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.aliyun.oss.model.ObjectMetadata; 
														 | 
														
														 | 
														
															 import com.aliyun.oss.model.ObjectMetadata; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.aliyun.oss.model.StorageClass; 
														 | 
														
														 | 
														
															 import com.aliyun.oss.model.StorageClass; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -25,16 +24,10 @@ import com.tzld.piaoquan.content.understanding.service.ContentService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.LoghubService; 
														 | 
														
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.LoghubService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.ODPSManager; 
														 | 
														
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.ODPSManager; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.PipelineService; 
														 | 
														
														 | 
														
															 import com.tzld.piaoquan.content.understanding.service.PipelineService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.tzld.piaoquan.content.understanding.util.HttpClientUtil; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.tzld.piaoquan.content.understanding.util.HttpPoolClient; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import com.tzld.piaoquan.content.understanding.util.RetryUtil; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.tzld.piaoquan.content.understanding.util.UrlUtil; 
														 | 
														
														 | 
														
															 import com.tzld.piaoquan.content.understanding.util.UrlUtil; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.xxl.job.core.log.XxlJobLogger; 
														 | 
														
														 | 
														
															 import com.xxl.job.core.log.XxlJobLogger; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import lombok.extern.slf4j.Slf4j; 
														 | 
														
														 | 
														
															 import lombok.extern.slf4j.Slf4j; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import org.apache.rocketmq.client.apis.message.Message; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.apache.rocketmq.client.apis.message.MessageId; 
														 | 
														
														 | 
														
															 import org.apache.rocketmq.client.apis.message.MessageId; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import org.apache.rocketmq.client.apis.producer.SendReceipt; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import org.apache.rocketmq.client.core.RocketMQClientTemplate; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.beans.BeanUtils; 
														 | 
														
														 | 
														
															 import org.springframework.beans.BeanUtils; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.beans.factory.annotation.Autowired; 
														 | 
														
														 | 
														
															 import org.springframework.beans.factory.annotation.Autowired; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.beans.factory.annotation.Value; 
														 | 
														
														 | 
														
															 import org.springframework.beans.factory.annotation.Value; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -307,6 +300,44 @@ public class ContentServiceImpl implements ContentService { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         XxlJobLogger.log("table = {} execute time = {}", topReturnTable, stopwatch.stop().elapsed(TimeUnit.MILLISECONDS)); 
														 | 
														
														 | 
														
															         XxlJobLogger.log("table = {} execute time = {}", topReturnTable, stopwatch.stop().elapsed(TimeUnit.MILLISECONDS)); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    @Override 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    public void historyVideoUnderstandingHandler() { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        Stopwatch stopwatch = Stopwatch.createStarted(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        List<Record> newRecommendRecords = odpsManager.tableTunnelQuery("loghubods", topHistoryTable); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if (Objects.nonNull(newRecommendRecords) && !newRecommendRecords.isEmpty()) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            XxlJobLogger.log("table = {} records size = {}", topHistoryTable, newRecommendRecords.size()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            for (Record record : newRecommendRecords) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                try { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    Long videoId = record.getBigint("videoid"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    if (Objects.isNull(videoId)) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        XxlJobLogger.log("table = {} videoId 为 null", topHistoryTable); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        continue; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    String videoUrl = getVideoUrl(videoId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    if (Objects.isNull(videoUrl)) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        XxlJobLogger.log("table = {} videoId = {} videoUrl is null", topHistoryTable, videoId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        continue; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    SubmitTasksParam submitTasksParam = new SubmitTasksParam(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    List<ContentDTO> contentDTOList = new ArrayList<>(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    ContentDTO contentDTO = new ContentDTO(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    contentDTO.setVideoId(videoId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    contentDTO.setContentType(ContentTypeEnum.VIDEO.getValue()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    contentDTO.setContent(videoUrl); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    contentDTO.setPipelineId(oldVersionPipelineId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    contentDTOList.add(contentDTO); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    submitTasksParam.setContents(contentDTOList); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    TaskResultVO taskResultVO = submitTasks(submitTasksParam); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                } catch (Exception e) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    XxlJobLogger.log("record = {} error", record); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            XxlJobLogger.log("table = {} records is empty", topHistoryTable); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        XxlJobLogger.log("table = {} execute time = {}", topHistoryTable, stopwatch.stop().elapsed(TimeUnit.MILLISECONDS)); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     /** 
														 | 
														
														 | 
														
															     /** 
														 | 
													
												
											
												
													
														| 
														 | 
														
															      * 获取视频URL 
														 | 
														
														 | 
														
															      * 获取视频URL 
														 | 
													
												
											
												
													
														| 
														 | 
														
															      * <p> 
														 | 
														
														 | 
														
															      * <p> 
														 |