广州市综治平台后端
zhouxiantao
5 days ago 140170b48b50c33dc68558dc7d97ccd65bffbc7d
dyh-service/dyh-cust/src/main/java/cn/huge/module/utils/TreeUtils.java
@@ -4,9 +4,7 @@
import cn.huge.module.ctuser.dto.CtUnitTreeDTO;
import org.apache.commons.collections.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.*;
/**
 * @author zhouxiantao
@@ -60,20 +58,22 @@
        List<CtUnitTreeDTO> termsList = new ArrayList<>();
        if(ObjectUtils.isNotEmpty(termsSet)){
            for (CtUnitTreeDTO selectTermDTO : termsSet) {
                termsList.add(selectTermDTO);
            }
            termsList.sort((o1, o2)->{
                String s1 = o1.getValue().replaceAll("[^0-9]", "");
                String s1 = selectTermDTO.getValue().replaceAll("[^0-9]", "");
                if(ObjectUtils.isEmpty(s1)){
                    s1 = "0";
                }
                String s2 = o2.getValue().replaceAll("[^0-9]", "");
                if(ObjectUtils.isEmpty(s2)){
                    s2 = "0";
                }
                Double totalScore1 = Double.valueOf(s1);
                Double totalScore2 = Double.valueOf(s2);
                if(totalScore1 < totalScore2) {
                selectTermDTO.setSort(totalScore1);
                String area = getArea(selectTermDTO.getLabel());
                if(ObjectUtils.isNotEmpty(area)){
                    selectTermDTO.setSort(Double.valueOf(area));
                }
                termsList.add(selectTermDTO);
            }
            termsList.sort((o1, o2)->{
                Double totalScore1 = o1.getSort();
                Double totalScore2 = o2.getSort();
                if(totalScore1 > totalScore2) {
                    return 1;
                }else if (totalScore1.equals(totalScore2)) {
                    return 0;
@@ -85,4 +85,25 @@
        return termsList;
    }
    public static String getArea(String areaName) {
        Map<String, String> map = new HashMap<>();
        map.put("越秀区", "2");
        map.put("海珠区", "3");
        map.put("荔湾区", "4");
        map.put("天河区", "5");
        map.put("白云区", "6");
        map.put("黄埔区", "7");
        map.put("花都区", "8");
        map.put("番禺区", "9");
        map.put("南沙区", "10");
        map.put("从化区", "11");
        map.put("增城区", "12");
        for (String s : map.keySet()) {
            if(areaName.contains(s)){
                return map.get(s);
            }
        }
        return null;
    }
}