孙永军 %!s(int64=2) %!d(string=hai) anos
pai
achega
672111a8ea

+ 12 - 10
src/main/java/com/sxtvs/open/api/clue/service/impl/ClueServiceImpl.java

@@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.util.HashMap;
 import java.util.Map;
 import java.util.stream.Collectors;
 
@@ -57,16 +58,17 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements IC
                 .orderByDesc(Clue::getAddTime)
         );
 
-        Map<Long, Pair<String, Integer>> collect = clueInfoService.lambdaQuery().in(
-                ClueInfo::getRelaId, clueIPage.getRecords().stream().map(Clue::getId).collect(Collectors.toList())
-        ).list().stream().collect(Collectors.groupingBy(ClueInfo::getRelaId, Collectors.collectingAndThen(Collectors.toList(),
-                data -> new ImmutablePair<>(Strings.join(data.stream().map(ClueInfo::getType).distinct().collect(Collectors.toList()), ','), data.size())
-        )));
-
-        clueIPage.setRecords(clueIPage.getRecords().stream().peek(v -> {
-            v.setClueInfoCount(collect.containsKey(v.getId()) ? collect.get(v.getId()).getRight() : 1);
-            v.setClueInfoType(collect.containsKey(v.getId()) ? collect.get(v.getId()).getLeft() : "0");
-        }).collect(Collectors.toList()));
+        if(clueIPage.getTotal() > 0){
+            Map<Long, Pair<String, Integer>> collect = clueInfoService.lambdaQuery().in(
+                    ClueInfo::getRelaId, clueIPage.getRecords().stream().map(Clue::getId).collect(Collectors.toList())
+            ).list().stream().collect(Collectors.groupingBy(ClueInfo::getRelaId, Collectors.collectingAndThen(Collectors.toList(),
+                    data -> new ImmutablePair<>(Strings.join(data.stream().map(ClueInfo::getType).distinct().collect(Collectors.toList()), ','), data.size())
+            )));
+            clueIPage.setRecords(clueIPage.getRecords().stream().peek(v -> {
+                v.setClueInfoCount(collect.containsKey(v.getId()) ? collect.get(v.getId()).getRight() : 1);
+                v.setClueInfoType(collect.containsKey(v.getId()) ? collect.get(v.getId()).getLeft() : "0");
+            }).collect(Collectors.toList()));
+        }
 
         return clueIPage;
     }