|
|
@@ -156,10 +156,21 @@ public class ThirdPartyPushMessageStrategyV1 implements ReplyStrategyService {
|
|
|
if ("base".equals(key)) {
|
|
|
continue;
|
|
|
}
|
|
|
- List<CgiReplyBucketData> collect = smallDataCgiReplyList.stream()
|
|
|
- .filter(x -> x.getStrategy().equals(key))
|
|
|
- .filter(x -> x.getGhId().equals(bucketDataParam.getGhId()))
|
|
|
- .collect(Collectors.toList());
|
|
|
+ List<Long> videoIds = new ArrayList<>();
|
|
|
+ List<CgiReplyBucketData> collect = new ArrayList<>();
|
|
|
+ for (CgiReplyBucketData data : smallDataCgiReplyList) {
|
|
|
+ if (!data.getStrategy().equals(key)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (!data.getGhId().equals(bucketDataParam.getGhId())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (videoIds.contains(data.getMiniVideoId())) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ videoIds.add(data.getMiniVideoId());
|
|
|
+ collect.add(data);
|
|
|
+ }
|
|
|
if (CollectionUtils.isEmpty(collect)) {
|
|
|
log.error("ThirdPartyPushMessageStrategyV1 insertSmallData 算法排序数据异常 ,key:" + key +
|
|
|
",data:" + JSON.toJSONString(smallDataCgiReplyList) + ",ghId:" + bucketDataParam.getGhId());
|