Explorar el Código

[bug-6831]受控文件查询重写排序规则按照发布时间和文件编号排序

xiexh hace 4 meses
padre
commit
e77fa4ae79

+ 11 - 5
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/business/service/impl/ReformServiceImpl.java

@@ -1,6 +1,5 @@
 package com.lc.ibps.business.service.impl;
 
-import com.lc.ibps.api.org.constant.PartyType;
 import com.lc.ibps.base.core.constants.StringPool;
 import com.lc.ibps.base.core.util.AppUtil;
 import com.lc.ibps.base.core.util.BeanUtils;
@@ -11,7 +10,6 @@ import com.lc.ibps.business.service.ReformService;
 import com.lc.ibps.cloud.entity.APIResult;
 import com.lc.ibps.org.api.IPartyPositionService;
 import com.lc.ibps.org.party.persistence.entity.PartyPositionPo;
-import com.lc.ibps.org.party.persistence.entity.PartyPositionTbl;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import lombok.extern.log4j.Log4j2;
@@ -20,7 +18,6 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
@@ -325,8 +322,17 @@ public class ReformServiceImpl implements ReformService {
                 .map(Optional::get)
                 .collect(Collectors.toList());
         //重新排序,数据量超过一万可能耗时长一点,超过十万或许有性能问题
-        sortData(order.trim(),mergedList);
-        Map<String, Object> map = paginate(mergedList, pageNo , limit);
+        //sortData(order.trim(),mergedList);
+        List<Map<String, Object>> collect = mergedList.stream().sorted(Comparator.comparing(
+                (Map<String, Object> map) -> (String) map.get("fa_bu_shi_jian_"),
+                Comparator.nullsLast(Comparator.naturalOrder())
+                ).thenComparing(
+                map -> (String) map.get("wen_jian_bian_hao"),
+                Comparator.nullsLast(Comparator.naturalOrder())
+                )
+        ).collect(Collectors.toList());
+
+        Map<String, Object> map = paginate(collect, pageNo , limit);
         result.setVariables(map);
         return result;
     }