소스 검색

兼容保底数据为空

xueyiming 7 달 전
부모
커밋
047a09de86
1개의 변경된 파일27개의 추가작업 그리고 28개의 파일을 삭제
  1. 27 28
      we-com-server/src/main/java/com/tzld/piaoquan/wecom/job/WeComMessageDataJob.java

+ 27 - 28
we-com-server/src/main/java/com/tzld/piaoquan/wecom/job/WeComMessageDataJob.java

@@ -84,35 +84,34 @@ public class WeComMessageDataJob {
         String sql = String.format("SELECT * FROM loghubods.history_good_video_can_push_user_list where dt = %s;",
                 DateUtil.getBeforeDayDateString());
         List<Record> recordList = OdpsUtil.getOdpsData(sql);
-        if (CollectionUtils.isEmpty(recordList)) {
-            return;
-        }
-        List<PushMessage> list = new ArrayList<>();
-        for (Record record : recordList) {
-            PushMessage pushMessage = new PushMessage();
-            Long videoId = Long.parseLong((String) record.get(0));
-            Set<Long> userIds = new HashSet<>(JSONObject.parseArray((String) record.get(1), Long.class));
-            Long staffId = Long.parseLong((String) record.get(2));
-            Double score = Double.parseDouble((String) record.get(3));
-            pushMessage.setVideoId(videoId);
-            pushMessage.setUserIds(userIds);
-            pushMessage.setStaffId(staffId);
-            pushMessage.setScore(score);
-            list.add(pushMessage);
-        }
-        historicalTopMap = list.stream()
-                .collect(Collectors.groupingBy(PushMessage::getStaffId,
-                        Collectors.mapping(pushMessage -> pushMessage,
-                                Collectors.toList())))
-                .entrySet()
-                .stream()
-                .collect(Collectors.toMap(
-                        Map.Entry::getKey,
-                        entry -> entry.getValue().stream()
-                                .sorted(Comparator.comparing(PushMessage::getScore).reversed()) // 根据 score 降序排序
-                                .collect(Collectors.toList())
-                ));
+        if (!CollectionUtils.isEmpty(recordList)) {
+            List<PushMessage> list = new ArrayList<>();
+            for (Record record : recordList) {
+                PushMessage pushMessage = new PushMessage();
+                Long videoId = Long.parseLong((String) record.get(0));
+                Set<Long> userIds = new HashSet<>(JSONObject.parseArray((String) record.get(1), Long.class));
+                Long staffId = Long.parseLong((String) record.get(2));
+                Double score = Double.parseDouble((String) record.get(3));
+                pushMessage.setVideoId(videoId);
+                pushMessage.setUserIds(userIds);
+                pushMessage.setStaffId(staffId);
+                pushMessage.setScore(score);
+                list.add(pushMessage);
+            }
+            historicalTopMap = list.stream()
+                    .collect(Collectors.groupingBy(PushMessage::getStaffId,
+                            Collectors.mapping(pushMessage -> pushMessage,
+                                    Collectors.toList())))
+                    .entrySet()
+                    .stream()
+                    .collect(Collectors.toMap(
+                            Map.Entry::getKey,
+                            entry -> entry.getValue().stream()
+                                    .sorted(Comparator.comparing(PushMessage::getScore).reversed()) // 根据 score 降序排序
+                                    .collect(Collectors.toList())
+                    ));
 
+        }
         //保底视频获取
         String key = String.format(GUARANTEED_MINI_PROGRAM_KEY, DateUtil.getThatDayDateString());
         GuaranteedParam guaranteedParam = (GuaranteedParam) redisTemplate.opsForValue().get(key);