zero vor 1 Jahr
Ursprung
Commit
7b79e89b06
1 geänderte Dateien mit 11 neuen und 14 gelöschten Zeilen
  1. 11 14
      src/main/java/cn/cslg/pas/service/business/es/EsCountService.java

+ 11 - 14
src/main/java/cn/cslg/pas/service/business/es/EsCountService.java

@@ -848,7 +848,9 @@ public class EsCountService {
     public void getDateCountDTOS(Aggregate agg, String field, Integer topN, String format, List<EsCountDetailDTO> detailDTOS,
                                  EsCountDTO esCountDTO, String valueOne, String valueTwo) throws ParseException {
         List<DateHistogramBucket> list = agg.dateHistogram().buckets().array();
-        esCountDTO.setAllNumber(Long.valueOf(String.valueOf(list.size())));
+        long all = Long.valueOf(String.valueOf(list.size()));
+        esCountDTO.setAllNumber(all);
+
         List<EsCountDetailDTO> esCountDetailDTOS = new ArrayList<>();
         if (StringUtils.isNotEmpty(format) && format.equals("半年")) {
             List<EsCountDetailDTO> detailDTOList = new ArrayList<>();
@@ -951,23 +953,18 @@ public class EsCountService {
         }
 
         if (!CollectionUtils.isEmpty(esCountDetailDTOS)) {
+            long num = Long.valueOf(String.valueOf(topN));
+            long finalNum = all - num;
+            if (finalNum > 0) {
+                esCountDTO.setRemainingNum(finalNum);
+            } else {
+                esCountDTO.setRemainingNum(0l);
+            }
+
             List<EsCountDetailDTO> collect = esCountDetailDTOS.stream()
                     .sorted(Comparator.comparing(EsCountDetailDTO::getName).reversed()).limit(topN).collect(Collectors.toList());
             detailDTOS.addAll(collect);
         }
-
-//        EsCountDetailDTO countDTO = new EsCountDetailDTO();
-//        countDTO.setField(field);
-//        countDTO.setName("其他");
-//        if (list.size() > topN) {
-//            int sum = list.size() - topN;
-//            countDTO.setNumber(Long.valueOf(String.valueOf(sum)));
-//
-//        } else {
-//            countDTO.setNumber(0L);
-//        }
-//        countDTO.setTopN(topN);
-//        detailDTOS.add(countDTO);
     }
 
     /**