supeng há 4 dias atrás
pai
commit
626c85b9ac

+ 14 - 0
content-understanding-core/src/main/java/com/tzld/piaoquan/content/understanding/model/dto/VideoUnderstandingMessageDTO.java

@@ -0,0 +1,14 @@
+package com.tzld.piaoquan.content.understanding.model.dto;
+
+import lombok.Data;
+
+/**
+ * @author supeng
+ */
+@Data
+public class VideoUnderstandingMessageDTO {
+    /**
+     * 视频ID
+     */
+    private Long videoId;
+}

+ 4 - 3
content-understanding-core/src/main/java/com/tzld/piaoquan/content/understanding/rocketmq/producer/OldVersionRemainVideoUnderstandingProducer.java

@@ -1,6 +1,7 @@
 package com.tzld.piaoquan.content.understanding.rocketmq.producer;
 
 import com.alibaba.fastjson.JSON;
+import com.tzld.piaoquan.content.understanding.model.dto.VideoUnderstandingMessageDTO;
 import com.tzld.piaoquan.content.understanding.util.RetryUtil;
 import org.apache.rocketmq.client.apis.message.MessageId;
 import org.apache.rocketmq.client.apis.producer.SendReceipt;
@@ -26,11 +27,11 @@ public class OldVersionRemainVideoUnderstandingProducer {
     @Value("${rocketmq.producer.oldversion.topic:topic_old_version_remain_video_understanding}")
     private String oldVersionRemainTopic;
 
-    public MessageId syncSendDelayMessage(Map<String, Object> messageMap, Duration duration) {
+    public MessageId syncSendDelayMessage(VideoUnderstandingMessageDTO messageDTO, Duration duration) {
         return RetryUtil.executeWithRetry(() -> {
-            SendReceipt sendReceipt = rocketMQClientTemplate.syncSendDelayMessage(oldVersionRemainTopic, JSON.toJSONString(messageMap), duration);
+            SendReceipt sendReceipt = rocketMQClientTemplate.syncSendDelayMessage(oldVersionRemainTopic, JSON.toJSONString(messageDTO), duration);
             if (Objects.isNull(sendReceipt) || Objects.isNull(sendReceipt.getMessageId())) {
-                throw new RuntimeException("OldVersionRemainVideoUnderstandingProducer syncSendDelayMessage failure messageMap = " + messageMap);
+                throw new RuntimeException("OldVersionRemainVideoUnderstandingProducer syncSendDelayMessage failure messageDTO = " + messageDTO);
             }
             return sendReceipt.getMessageId();
         }, "OldVersionRemainVideoUnderstandingProducer");

+ 14 - 8
content-understanding-core/src/main/java/com/tzld/piaoquan/content/understanding/service/impl/ContentServiceImpl.java

@@ -14,6 +14,7 @@ import com.tzld.piaoquan.content.understanding.common.exception.CommonException;
 import com.tzld.piaoquan.content.understanding.dao.mapper.*;
 import com.tzld.piaoquan.content.understanding.model.dto.ContentDTO;
 import com.tzld.piaoquan.content.understanding.model.dto.TaskResultDTO;
+import com.tzld.piaoquan.content.understanding.model.dto.VideoUnderstandingMessageDTO;
 import com.tzld.piaoquan.content.understanding.model.param.*;
 import com.tzld.piaoquan.content.understanding.model.po.*;
 import com.tzld.piaoquan.content.understanding.model.vo.TaskResultVO;
@@ -457,19 +458,22 @@ public class ContentServiceImpl implements ContentService {
                             }
                             //解冻
                             aliyunOssManager.restoreObject(TRANSCODE_BUCKET, transedVideoPath, EXPIRE_DAYS);
-                            Map<String, Object> messageMap = new HashMap<>();
-                            messageMap.put("videoId", videoId);
+//                            Map<String, Object> messageMap = new HashMap<>();
+//                            messageMap.put("videoId", videoId);
+                            VideoUnderstandingMessageDTO messageDTO = new VideoUnderstandingMessageDTO();
+                            messageDTO.setVideoId(videoId);
                             Duration duration;
                             if (isCodeArchive) {
                                 duration = Duration.ofHours(1);
                             } else {
                                 duration = Duration.ofHours(12);
                             }
+
                             try {
-                                MessageId messageId = oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageMap, duration);
+                                MessageId messageId = oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageDTO, duration);
                                 log.info("syncSendDelayMessage messageId = {}", messageId);
                             } catch (Exception e) {
-                                log.error("syncSendDelayMessage error messageMap = {}", e, messageMap);
+                                log.error("syncSendDelayMessage error messageDTO = {}", e, messageDTO);
                             }
                             return null;
                         } else {
@@ -508,8 +512,10 @@ public class ContentServiceImpl implements ContentService {
                         }
                         //解冻
                         aliyunOssManager.restoreObject(TRANSCODE_BUCKET, videoPath, EXPIRE_DAYS);
-                        Map<String, Object> messageMap = new HashMap<>();
-                        messageMap.put("videoId", videoId);
+//                        Map<String, Object> messageMap = new HashMap<>();
+//                        messageMap.put("videoId", videoId);
+                        VideoUnderstandingMessageDTO messageDTO = new VideoUnderstandingMessageDTO();
+                        messageDTO.setVideoId(videoId);
                         Duration duration;
                         if (isCodeArchive) {
                             duration = Duration.ofHours(1);
@@ -517,9 +523,9 @@ public class ContentServiceImpl implements ContentService {
                             duration = Duration.ofHours(12);
                         }
                         try {
-                            oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageMap, duration);
+                            oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageDTO, duration);
                         } catch (Exception e) {
-                            log.error("syncSendDelayMessage error messageMap = {}", e, messageMap);
+                            log.error("syncSendDelayMessage error messageDTO = {}", e, messageDTO);
                         }
                         return null;
                     } else {

+ 6 - 3
content-understanding-server/src/test/java/com/tzld/piaoquan/content/understanding/service/RocketmqTest.java

@@ -2,6 +2,7 @@ package com.tzld.piaoquan.content.understanding.service;
 
 import com.alibaba.fastjson.JSON;
 import com.tzld.piaoquan.content.understanding.BaseTest;
+import com.tzld.piaoquan.content.understanding.model.dto.VideoUnderstandingMessageDTO;
 import com.tzld.piaoquan.content.understanding.rocketmq.producer.OldVersionRemainVideoUnderstandingProducer;
 import org.apache.rocketmq.client.apis.message.MessageId;
 import org.apache.rocketmq.client.apis.producer.SendReceipt;
@@ -21,10 +22,12 @@ public class RocketmqTest extends BaseTest {
 
     @Test
     public void testSend() {
-        Map<String, Object> messageMap = new HashMap<>();
-        messageMap.put("videoId", 9039231L);
+//        Map<String, Object> messageMap = new HashMap<>();
+//        messageMap.put("videoId", 9039231L);
+        VideoUnderstandingMessageDTO messageDTO = new VideoUnderstandingMessageDTO();
+        messageDTO.setVideoId(9039231L);
         Duration duration = Duration.ofMinutes(1);
-        MessageId messageId = oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageMap, duration);
+        MessageId messageId = oldVersionRemainVideoUnderstandingProducer.syncSendDelayMessage(messageDTO, duration);
         System.out.println(messageId);
     }
 }