Explorar o código

修改page生成 超长打点 渠道标识

xueyiming hai 9 meses
pai
achega
6c9fb3d640

+ 14 - 3
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/common/enums/SecretEnum.java

@@ -5,16 +5,18 @@ import java.util.Objects;
 
 public enum SecretEnum {
 
-    SECRET_ENUM_1("3b83574b477d4c5b8508a6e33f6e35ec", "魅力"),
-    SECRET_ENUM_2("70d342bf11a84ac7aca6b3e99541e085", "老来福");
+    SECRET_ENUM_1("3b83574b477d4c5b8508a6e33f6e35ec", "魅力", "ml"),
+    SECRET_ENUM_2("70d342bf11a84ac7aca6b3e99541e085", "老来福", "llf");
 
-    SecretEnum(String secret, String desc) {
+    SecretEnum(String secret, String desc, String channel) {
         this.secret = secret;
         this.desc = desc;
+        this.channel = channel;
     }
 
     public final String secret;
     public final String desc;
+    public final String channel;
 
     public static boolean contains(String secret) {
         for (SecretEnum secretEnum : SecretEnum.values()) {
@@ -24,4 +26,13 @@ public enum SecretEnum {
         }
         return false;
     }
+
+    public static SecretEnum get(String secret) {
+        for (SecretEnum secretEnum : SecretEnum.values()) {
+            if (Objects.equals(secretEnum.secret, secret)) {
+                return secretEnum;
+            }
+        }
+        return null;
+    }
 }

+ 4 - 46
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/cgi/BucketDataParam.java

@@ -1,7 +1,10 @@
 package com.tzld.longarticle.recommend.server.model.cgi;
 
+import lombok.Data;
+
 import java.util.List;
 
+@Data
 public class BucketDataParam {
 
     private String accountId;
@@ -16,51 +19,6 @@ public class BucketDataParam {
 
     private List<ArticleInfo> articleList;
 
-    public String getAccountId() {
-        return accountId;
-    }
-
-    public void setAccountId(String accountId) {
-        this.accountId = accountId;
-    }
-
-    public String getAccountName() {
-        return accountName;
-    }
-
-    public void setAccountName(String accountName) {
-        this.accountName = accountName;
-    }
-
-    public String getGhId() {
-        return ghId;
-    }
-
-    public void setGhId(String ghId) {
-        this.ghId = ghId;
-    }
-
-    public String getStrategy() {
-        return strategy;
-    }
-
-    public void setStrategy(String strategy) {
-        this.strategy = strategy;
-    }
-
-    public String getPlanId() {
-        return planId;
-    }
-
-    public void setPlanId(String planId) {
-        this.planId = planId;
-    }
-
-    public List<ArticleInfo> getArticleList() {
-        return articleList;
-    }
+    private String channel;
 
-    public void setArticleList(List<ArticleInfo> articleList) {
-        this.articleList = articleList;
-    }
 }

+ 12 - 5
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/cgi/TouLiuHttpClientService.java

@@ -22,8 +22,15 @@ public class TouLiuHttpClientService {
 //                .build();
 //    }
 
-    public String sendAdFlowAddRequest(String baseUrl, String videoId, String putTypeOne,
-                                       String putTypeTwo, String putTypeThree, String putCarrierId) {
+    public String sendAdFlowAddRequest(String baseUrl,
+                                       Long videoId,
+                                       String putScene,
+                                       String channel,
+                                       String remark,
+                                       String putTypeOne,
+                                       String putTypeTwo,
+                                       String putTypeThree,
+                                       String putCarrierId) {
         WebClient webClient = WebClient.builder()
                 .baseUrl(baseUrl)
                 .build();
@@ -31,9 +38,9 @@ public class TouLiuHttpClientService {
         // 构建请求体  
         String jsonBody = "{" +
                 "\"videoId\":\"" + videoId + "\"," +
-                "\"putScene\":\"" + "touliu" + "\"," +
-                "\"channel\":\"" + "tencentgzh" + "\"," +
-                "\"remark\":\"" + "自动" + "\"," +
+                "\"putScene\":\"" + putScene + "\"," +
+                "\"channel\":\"" + channel + "\"," +
+                "\"remark\":\"" + remark + "\"," +
                 "\"putTypeOne\":\"" + putTypeOne + "\"," +
                 "\"putTypeTwo\":\"" + putTypeTwo + "\"," +
                 "\"putTypeThree\":\"" + putTypeThree + "\"," +

+ 3 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/AccessTokenService.java

@@ -1,6 +1,7 @@
 package com.tzld.longarticle.recommend.server.service.exterior;
 
 
+import com.tzld.longarticle.recommend.server.common.enums.SecretEnum;
 import com.tzld.longarticle.recommend.server.common.response.CommonResponse;
 import com.tzld.longarticle.recommend.server.model.param.AccessTokenParam;
 import com.tzld.longarticle.recommend.server.model.vo.AccessTokenVo;
@@ -10,4 +11,6 @@ public interface AccessTokenService {
     CommonResponse<AccessTokenVo> getAccessToken(AccessTokenParam param);
 
     boolean validateAccessToken(String accessToken);
+
+    SecretEnum getSecretEnum(String accessToken);
 }

+ 10 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/impl/AccessTokenServiceImpl.java

@@ -51,6 +51,7 @@ public class AccessTokenServiceImpl implements AccessTokenService {
         } else {
             String newAccessToken = UUID.randomUUID().toString().replace("-", "");
             redisTemplate.opsForValue().set(param.getSecret(), newAccessToken, 2L, TimeUnit.HOURS);
+            redisTemplate.opsForValue().set(newAccessToken, param.getSecret(), 3L, TimeUnit.HOURS);
             long expire = 7200L;
             String timestamp = String.valueOf(System.currentTimeMillis() / 1000 + expire + 600);
             redisTemplate.opsForHash().put(ACCESS_TOKEN_LIST, newAccessToken, timestamp);
@@ -73,4 +74,13 @@ public class AccessTokenServiceImpl implements AccessTokenService {
         }
         return true;
     }
+
+    @Override
+    public SecretEnum getSecretEnum(String accessToken) {
+        String secret = redisTemplate.opsForValue().get(accessToken);
+        if(StringUtils.isEmpty(secret)){
+            return null;
+        }
+        return SecretEnum.get(secret);
+    }
 }

+ 9 - 2
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/impl/ThirdPartyServiceImpl.java

@@ -1,6 +1,7 @@
 package com.tzld.longarticle.recommend.server.service.exterior.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.tzld.longarticle.recommend.server.common.enums.SecretEnum;
 import com.tzld.longarticle.recommend.server.common.enums.cgi.ReplyStrategyServiceEnum;
 import com.tzld.longarticle.recommend.server.common.response.CommonResponse;
 import com.tzld.longarticle.recommend.server.common.response.ExceptionCodeEnum;
@@ -53,8 +54,13 @@ public class ThirdPartyServiceImpl implements ThirdPartyService {
         if (!accessTokenService.validateAccessToken(param.getAccessToken())) {
             return CommonResponse.create(ExceptionCodeEnum.PARAM_ERROR, "accessToken错误或者已失效");
         }
+        SecretEnum secretEnum = accessTokenService.getSecretEnum(param.getAccessToken());
+        if (secretEnum == null) {
+            return CommonResponse.create(ExceptionCodeEnum.PARAM_ERROR, "获取secret失败");
+        }
+        String channel = secretEnum.channel;
         List<PushMessageVo> pushMessageVoList = new ArrayList<>();
-        ReplyBucketData replyBucketData = getPushMessageData(param);
+        ReplyBucketData replyBucketData = getPushMessageData(param, channel);
         log.info("replyBucketData={}", JSON.toJSONString(replyBucketData));
         if (replyBucketData == null) {
             log.error("获取推送策略数据失败");
@@ -79,7 +85,7 @@ public class ThirdPartyServiceImpl implements ThirdPartyService {
         return CommonResponse.success(pushMessageVoList);
     }
 
-    private ReplyBucketData getPushMessageData(PushMessageParam param) {
+    private ReplyBucketData getPushMessageData(PushMessageParam param, String channel) {
         log.info("strategyServiceMap={}", JSON.toJSONString(strategyServiceMap));
         for (Map.Entry<String, ReplyStrategyService> stringReplyStrategyServiceEntry : strategyServiceMap.entrySet()) {
             ReplyStrategyService replyStrategyService = stringReplyStrategyServiceEntry.getValue();
@@ -87,6 +93,7 @@ public class ThirdPartyServiceImpl implements ThirdPartyService {
             if (replyStrategyService.support(ReplyStrategyServiceEnum.PUSH_MESSAGE_STRATEGY_V1)) {
                 BucketDataParam bucketDataParam = new BucketDataParam();
                 bucketDataParam.setGhId(param.getGhId());
+                bucketDataParam.setChannel(channel);
                 return replyStrategyService.getResult(bucketDataParam);
             }
         }

+ 36 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/impl/WeComServiceImpl.java

@@ -24,6 +24,8 @@ import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.PostConstruct;
+import java.io.UnsupportedEncodingException;
+import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -35,6 +37,8 @@ public class WeComServiceImpl implements WeComService {
 
     private static final String CORP_ID = "wwa4015dc7d652a21f";
 
+    private static final int MAX_BYTES = 64;
+
     @Autowired
     private ApplicationContext applicationContext;
 
@@ -64,6 +68,12 @@ public class WeComServiceImpl implements WeComService {
             WeComPushMessageVo weComPushMessageVo = new WeComPushMessageVo();
             weComPushMessageVo.setGroupIndex(groupData.getGroupIndex());
             List<MsgData> msgDataList = groupData.getMsgDataList();
+            for (MsgData msgData : msgDataList) {
+                if(msgData.getTitle().getBytes(StandardCharsets.UTF_8).length > MAX_BYTES){
+                    String s = truncateString(msgData.getTitle(), 61) + "...";
+
+                }
+            }
             MsgData msgData = new MsgData();
             msgData.setMsgType(3);
             msgData.setTitle("欢迎你的到来");
@@ -89,4 +99,30 @@ public class WeComServiceImpl implements WeComService {
         // 无执行策略 不会走到这里
         return null;
     }
+
+    public static String truncateString(String input, int maxBytes) {
+        if (input == null || maxBytes <= 0) {
+            return "";
+        }
+
+        byte[] bytes = input.getBytes(StandardCharsets.UTF_8);
+        if (bytes.length <= maxBytes) {
+            return input; // 如果字节数已经在限制内,直接返回原字符串
+        }
+
+        // 截取字节数组
+        byte[] truncatedBytes = new byte[maxBytes];
+        System.arraycopy(bytes, 0, truncatedBytes, 0, maxBytes);
+
+        // 将截取的字节数组转换回字符串
+        String truncatedString = new String(truncatedBytes, StandardCharsets.UTF_8);
+
+        // 处理可能的字符截断问题
+        // 如果截取后字符串的字节数仍然大于 maxBytes,向前查找直到找到有效字符
+        while (truncatedString.getBytes(StandardCharsets.UTF_8).length > maxBytes) {
+            truncatedString = truncatedString.substring(0, truncatedString.length() - 1);
+        }
+
+        return truncatedString;
+    }
 }

+ 9 - 23
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/strategy/reply/impl/BuckStrategyV1.java

@@ -168,45 +168,31 @@ public class BuckStrategyV1 implements ReplyStrategyService {
         if (CollectionUtils.isEmpty(smallDataCgiReplyList)) {
             return smallDataCgiReplyList;
         }
-        Set<String> keys = smallDataCgiReplyList.stream().map(x -> x.getGhId() + "&" + x.getMiniVideoId()).collect(Collectors.toSet());
-        Map<String, SmallPageUrlDetail> keyPageUrl = new HashMap<>();
-        // gh-id + videoId 复用同一page_url及落地页id
-        for (String key : keys) {
-            String[] keyArr = key.split("&");
-            String ghId = keyArr[0];
-            String videoId = keyArr[1];
+        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
             // 查询库里是否存在,如果存在即复用
             CgiReplyBucketDataExample cgiReplyBucketDataExample = new CgiReplyBucketDataExample();
-            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0).andMiniVideoIdEqualTo(Long.valueOf(videoId)).andGhIdEqualTo(ghId);
-            List<CgiReplyBucketData> cgiReplyBucketData = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
+            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0)
+                    .andMiniVideoIdEqualTo(cgiReplyBucketData.getMiniVideoId())
+                    .andGhIdEqualTo(cgiReplyBucketData.getGhId())
+                    .andSortEqualTo(cgiReplyBucketData.getSort());
+            List<CgiReplyBucketData> cgiReplyBucketDataList = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
             SmallPageUrlDetail smallPageUrlDetail = new SmallPageUrlDetail();
-            if (CollectionUtils.isEmpty(cgiReplyBucketData)) {
+            if (CollectionUtils.isEmpty(cgiReplyBucketDataList)) {
                 // 库里不存在,调用新生成
-                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, videoId, "公众号", "自动回复小程序", "位置X", ghId);
+                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, cgiReplyBucketData.getMiniVideoId(), "touliu","tencentgzh","自动","公众号", "自动回复小程序", "位置" + cgiReplyBucketData.getSort(), cgiReplyBucketData.getGhId());
                 JSONObject jsonObject = JSON.parseObject(response);
                 if (jsonObject.getInteger("code").equals(0)) {
                     smallPageUrlDetail = jsonObject.getObject("data", SmallPageUrlDetail.class);
-                    keyPageUrl.put(key, smallPageUrlDetail);
                 } else {
                     log.error("httpClientService get page url error,response:" + response);
                     throw new RuntimeException("httpClientService get page url error");
                 }
             } else {
                 // 复用
-                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketData.get(0);
+                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketDataList.get(0);
                 smallPageUrlDetail.setId(cgiReplyBucketData1.getPagePathUrlId());
                 smallPageUrlDetail.setUrl(cgiReplyBucketData1.getMiniPagePath());
             }
-            keyPageUrl.put(key, smallPageUrlDetail);
-        }
-        // 处理数据
-        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
-            String key = cgiReplyBucketData.getGhId() + "&" + cgiReplyBucketData.getMiniVideoId();
-            SmallPageUrlDetail smallPageUrlDetail = keyPageUrl.get(key);
-            if (Objects.isNull(smallPageUrlDetail)) {
-                log.error("setSmallPageUrl get map url is null" + JSON.toJSONString(keyPageUrl));
-                throw new RuntimeException("setSmallPageUrl get map url is null");
-            }
             cgiReplyBucketData.setPagePathUrlId(smallPageUrlDetail.getId());
             cgiReplyBucketData.setMiniPagePath(smallPageUrlDetail.getUrl());
         }

+ 11 - 25
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/strategy/reply/impl/PushMessageStrategyV1.java

@@ -65,7 +65,7 @@ public class PushMessageStrategyV1 implements ReplyStrategyService {
         // 2 处理小程序--读取离线数据表--获取策略排序小程序数据
         List<CgiReplyBucketData> smallDataCgiReplyList = readStrategyOrderSmallData(keyedSet, bucketDataParam);
         // 2.1 获取小程序落地页地址 http调用
-        smallDataCgiReplyList = setSmallPageUrl(smallDataCgiReplyList);
+        smallDataCgiReplyList = setSmallPageUrl(smallDataCgiReplyList, bucketDataParam.getChannel());
         log.info(JSON.toJSONString(smallDataCgiReplyList));
         // 3 入库读表
         insertSmallData(smallDataCgiReplyList, keyedSet, bucketDataParam);
@@ -148,49 +148,35 @@ public class PushMessageStrategyV1 implements ReplyStrategyService {
         }
     }
 
-    private List<CgiReplyBucketData> setSmallPageUrl(List<CgiReplyBucketData> smallDataCgiReplyList) {
+    private List<CgiReplyBucketData> setSmallPageUrl(List<CgiReplyBucketData> smallDataCgiReplyList, String channel) {
         if (CollectionUtils.isEmpty(smallDataCgiReplyList)) {
             return smallDataCgiReplyList;
         }
-        Set<String> keys = smallDataCgiReplyList.stream().map(x -> x.getGhId() + "&" + x.getMiniVideoId()).collect(Collectors.toSet());
-        Map<String, SmallPageUrlDetail> keyPageUrl = new HashMap<>();
-        // gh-id + videoId 复用同一page_url及落地页id
-        for (String key : keys) {
-            String[] keyArr = key.split("&");
-            String ghId = keyArr[0];
-            String videoId = keyArr[1];
+        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
             // 查询库里是否存在,如果存在即复用
             CgiReplyBucketDataExample cgiReplyBucketDataExample = new CgiReplyBucketDataExample();
-            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0).andMiniVideoIdEqualTo(Long.valueOf(videoId)).andGhIdEqualTo(ghId);
-            List<CgiReplyBucketData> cgiReplyBucketData = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
+            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0)
+                    .andMiniVideoIdEqualTo(cgiReplyBucketData.getMiniVideoId())
+                    .andGhIdEqualTo(cgiReplyBucketData.getGhId())
+                    .andSortEqualTo(cgiReplyBucketData.getSort());
+            List<CgiReplyBucketData> cgiReplyBucketDataList = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
             SmallPageUrlDetail smallPageUrlDetail = new SmallPageUrlDetail();
-            if (CollectionUtils.isEmpty(cgiReplyBucketData)) {
+            if (CollectionUtils.isEmpty(cgiReplyBucketDataList)) {
                 // 库里不存在,调用新生成
-                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, videoId, "公众号", "自动回复小程序", "位置X", ghId);
+                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, cgiReplyBucketData.getMiniVideoId(), "dyyjs", channel, "自动", "公众号", "自动回复小程序", "位置" + cgiReplyBucketData.getSort(), cgiReplyBucketData.getGhId());
                 JSONObject jsonObject = JSON.parseObject(response);
                 if (jsonObject.getInteger("code").equals(0)) {
                     smallPageUrlDetail = jsonObject.getObject("data", SmallPageUrlDetail.class);
-                    keyPageUrl.put(key, smallPageUrlDetail);
                 } else {
                     log.error("httpClientService get page url error,response:" + response);
                     throw new RuntimeException("httpClientService get page url error");
                 }
             } else {
                 // 复用
-                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketData.get(0);
+                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketDataList.get(0);
                 smallPageUrlDetail.setId(cgiReplyBucketData1.getPagePathUrlId());
                 smallPageUrlDetail.setUrl(cgiReplyBucketData1.getMiniPagePath());
             }
-            keyPageUrl.put(key, smallPageUrlDetail);
-        }
-        // 处理数据
-        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
-            String key = cgiReplyBucketData.getGhId() + "&" + cgiReplyBucketData.getMiniVideoId();
-            SmallPageUrlDetail smallPageUrlDetail = keyPageUrl.get(key);
-            if (Objects.isNull(smallPageUrlDetail)) {
-                log.error("setSmallPageUrl get map url is null" + JSON.toJSONString(keyPageUrl));
-                throw new RuntimeException("setSmallPageUrl get map url is null");
-            }
             cgiReplyBucketData.setPagePathUrlId(smallPageUrlDetail.getId());
             cgiReplyBucketData.setMiniPagePath(smallPageUrlDetail.getUrl());
         }

+ 9 - 23
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/strategy/reply/impl/WeComPushMessageStrategyV1.java

@@ -152,45 +152,31 @@ public class WeComPushMessageStrategyV1 implements ReplyStrategyService {
         if (CollectionUtils.isEmpty(smallDataCgiReplyList)) {
             return smallDataCgiReplyList;
         }
-        Set<String> keys = smallDataCgiReplyList.stream().map(x -> x.getGhId() + "&" + x.getMiniVideoId()).collect(Collectors.toSet());
-        Map<String, SmallPageUrlDetail> keyPageUrl = new HashMap<>();
-        // gh-id + videoId 复用同一page_url及落地页id
-        for (String key : keys) {
-            String[] keyArr = key.split("&");
-            String ghId = keyArr[0];
-            String videoId = keyArr[1];
+        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
             // 查询库里是否存在,如果存在即复用
             CgiReplyBucketDataExample cgiReplyBucketDataExample = new CgiReplyBucketDataExample();
-            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0).andMiniVideoIdEqualTo(Long.valueOf(videoId)).andGhIdEqualTo(ghId);
-            List<CgiReplyBucketData> cgiReplyBucketData = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
+            cgiReplyBucketDataExample.createCriteria().andIsDeleteEqualTo(0)
+                    .andMiniVideoIdEqualTo(cgiReplyBucketData.getMiniVideoId())
+                    .andGhIdEqualTo(cgiReplyBucketData.getGhId())
+                    .andSortEqualTo(cgiReplyBucketData.getSort());
+            List<CgiReplyBucketData> cgiReplyBucketDataList = cgiReplyBucketDataMapper.selectByExample(cgiReplyBucketDataExample);
             SmallPageUrlDetail smallPageUrlDetail = new SmallPageUrlDetail();
-            if (CollectionUtils.isEmpty(cgiReplyBucketData)) {
+            if (CollectionUtils.isEmpty(cgiReplyBucketDataList)) {
                 // 库里不存在,调用新生成
-                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, videoId, "公众号", "自动回复小程序", "位置X", ghId);
+                String response = httpClientService.sendAdFlowAddRequest(GET_SMALL_PAGE_URL, cgiReplyBucketData.getMiniVideoId(), "touliu", "tencentqw", "自动", "企微", "自动回复小程序", "位置" + cgiReplyBucketData.getSort(), cgiReplyBucketData.getGhId());
                 JSONObject jsonObject = JSON.parseObject(response);
                 if (jsonObject.getInteger("code").equals(0)) {
                     smallPageUrlDetail = jsonObject.getObject("data", SmallPageUrlDetail.class);
-                    keyPageUrl.put(key, smallPageUrlDetail);
                 } else {
                     log.error("httpClientService get page url error,response:" + response);
                     throw new RuntimeException("httpClientService get page url error");
                 }
             } else {
                 // 复用
-                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketData.get(0);
+                CgiReplyBucketData cgiReplyBucketData1 = cgiReplyBucketDataList.get(0);
                 smallPageUrlDetail.setId(cgiReplyBucketData1.getPagePathUrlId());
                 smallPageUrlDetail.setUrl(cgiReplyBucketData1.getMiniPagePath());
             }
-            keyPageUrl.put(key, smallPageUrlDetail);
-        }
-        // 处理数据
-        for (CgiReplyBucketData cgiReplyBucketData : smallDataCgiReplyList) {
-            String key = cgiReplyBucketData.getGhId() + "&" + cgiReplyBucketData.getMiniVideoId();
-            SmallPageUrlDetail smallPageUrlDetail = keyPageUrl.get(key);
-            if (Objects.isNull(smallPageUrlDetail)) {
-                log.error("setSmallPageUrl get map url is null" + JSON.toJSONString(keyPageUrl));
-                throw new RuntimeException("setSmallPageUrl get map url is null");
-            }
             cgiReplyBucketData.setPagePathUrlId(smallPageUrlDetail.getId());
             cgiReplyBucketData.setMiniPagePath(smallPageUrlDetail.getUrl());
         }