Przeglądaj źródła

排序空处理

chengyao 3 lat temu
rodzic
commit
abc5dc5de8

+ 1 - 1
src/main/java/com/diagbot/dto/BehospitalInfoDTO.java

@@ -49,7 +49,7 @@ public class BehospitalInfoDTO implements Serializable {
      * 年龄
      */
     @Excel(name = "年龄", orderNum = "5")
-    private String age;
+    private String age = "";
 
 
     /**

+ 20 - 20
src/main/java/com/diagbot/facade/DataAnalysisFacade.java

@@ -337,71 +337,71 @@ public class DataAnalysisFacade {
             getEntryDefectImproveInnerVO) {
         if(StringUtils.isNotBlank(getEntryDefectImproveInnerVO.getAsc())){
             if("behDeptName".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehDeptName)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehDeptName, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
 
             }
             if("doctorName".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getDoctorName)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getDoctorName, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
 
             }
             if("name".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getName)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getName, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
             }
             if("fileCode".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getFileCode)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getFileCode, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
             }
             if("age".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getAge)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getAge, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
             }
             if("behospitalDate".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehospitalDate)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehospitalDate, Comparator.nullsLast(Date::compareTo))).collect(Collectors.toList());
             }
             if("leaveHospitalDate".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLeaveHospitalDate)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLeaveHospitalDate, Comparator.nullsLast(Date::compareTo))).collect(Collectors.toList());
             }
             if("scoreRes".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getScoreRes)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getScoreRes, Comparator.nullsLast(Double::compareTo))).collect(Collectors.toList());
             }
             if("level".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLevel)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLevel, Comparator.nullsLast(String::compareTo))).collect(Collectors.toList());
             }
             if("gradeTime".equals(getEntryDefectImproveInnerVO.getAsc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getGradeTime)).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getGradeTime, Comparator.nullsLast(Date::compareTo))).collect(Collectors.toList());
             }
         }
 
         if(StringUtils.isNotBlank(getEntryDefectImproveInnerVO.getDesc())){
             if("behDeptName".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehDeptName).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehDeptName, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
 
             }
             if("doctorName".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getDoctorName).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getDoctorName, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
 
             }
             if("name".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getName).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getName, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("fileCode".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getFileCode).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getFileCode, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("age".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getAge).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getAge, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("behospitalDate".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehospitalDate).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getBehospitalDate, Comparator.nullsLast(Date::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("leaveHospitalDate".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLeaveHospitalDate).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLeaveHospitalDate, Comparator.nullsLast(Date::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("scoreRes".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getScoreRes).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getScoreRes, Comparator.nullsLast(Double::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("level".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLevel).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getLevel, Comparator.nullsLast(String::compareTo)).reversed()).collect(Collectors.toList());
             }
             if("gradeTime".equals(getEntryDefectImproveInnerVO.getDesc())){
-                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getGradeTime).reversed()).collect(Collectors.toList());
+                behospitalInfoDTOList = behospitalInfoDTOList.stream().sorted(Comparator.comparing(BehospitalInfoDTO::getGradeTime, Comparator.nullsLast(Date::compareTo)).reversed()).collect(Collectors.toList());
             }
         }
         return behospitalInfoDTOList;