wangyunpeng 13 timmar sedan
förälder
incheckning
39b5fd513a

+ 15 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/strategy/impl/BuckStrategyV1.java

@@ -250,12 +250,27 @@ public class BuckStrategyV1 implements ReplyStrategyService {
             CgiReplyBucketDataExample cgiReplyBucketDataExample = new CgiReplyBucketDataExample();
             cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0).andMsgTypeEqualTo(1).andStrategyEqualTo(key).andGhIdEqualTo(bucketDataParam.getGhId());
             List<CgiReplyBucketData> cgiReplyBucketData1 = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
+            Map<Long, CgiReplyBucketData> cgiReplyBucketDataMap = cgiReplyBucketData1.stream()
+                    .collect(Collectors.toMap(CgiReplyBucketData::getMiniVideoId, x -> x, (a, b) -> b));
             for (CgiReplyBucketData cgiReplyBucketData : cgiReplyBucketData1) {
                 cgiReplyBucketData.setIsDelete(1);
                 cgiReplyBucketDataMapper.updateByPrimaryKeySelective(cgiReplyBucketData);
             }
             // 入库
             for (CgiReplyBucketData cgiReplyBucketData : collect) {
+                if (Objects.isNull(cgiReplyBucketData.getMiniVideoId())) {
+                    Long videoId = MessageUtil.getVideoId(cgiReplyBucketData.getMiniPagePath());
+                    cgiReplyBucketData.setMiniVideoId(videoId);
+                }
+                CgiReplyBucketData oldData = cgiReplyBucketDataMap.get(cgiReplyBucketData.getMiniVideoId());
+                if (Objects.nonNull(oldData)) {
+                    if (StringUtils.isEmpty(cgiReplyBucketData.getTitle())) {
+                        cgiReplyBucketData.setTitle(oldData.getTitle());
+                    }
+                    if (StringUtils.isEmpty(cgiReplyBucketData.getCoverUrl())) {
+                        cgiReplyBucketData.setCoverUrl(oldData.getCoverUrl());
+                    }
+                }
                 cgiReplyBucketDataMapper.insertSelective(cgiReplyBucketData);
                 String redisKey = "auto_reply_video_detail_" + cgiReplyBucketData.getRootSourceId();
                 VideoCharacteristicVO vo = new VideoCharacteristicVO();

+ 4 - 0
api-module/src/main/java/com/tzld/piaoquan/api/service/strategy/impl/ThirdPartyPushMessageStrategyV1.java

@@ -170,6 +170,10 @@ public class ThirdPartyPushMessageStrategyV1 implements ReplyStrategyService {
                     .collect(Collectors.toMap(ContentPlatformGzhPlanVideo::getVideoId, x -> x, (a, b) -> b));
             // 入库
             for (CgiReplyBucketData cgiReplyBucketData : collect) {
+                if (Objects.isNull(cgiReplyBucketData.getMiniVideoId())) {
+                    Long videoId = MessageUtil.getVideoId(cgiReplyBucketData.getMiniPagePath());
+                    cgiReplyBucketData.setMiniVideoId(videoId);
+                }
                 ContentPlatformGzhPlanVideo gzhPlanVideo = gzhPlanVideoMap.get(cgiReplyBucketData.getMiniVideoId());
                 if (Objects.nonNull(gzhPlanVideo)) {
                     try {