diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java index 6bf2591..bb68c22 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java @@ -1441,16 +1441,47 @@ public class TestController { for (BasicConfig bs : mainBasicConfigList) { configData(bs, basicConfigList, slaveBasicConfigMap); + sortBasicConfig(bs); } + Collections.sort(mainBasicConfigList, new Comparator() { + @Override + public int compare(BasicConfig o1, BasicConfig o2) { + if(o1.getWeight()!=null&&o2.getWeight()!=null){ + return -Integer.compare(o1.getWeight(),o2.getWeight()); + } + return 0; + } + }); + } catch (Exception e) { e.printStackTrace(); } + BaseResponse baseResponse = new BaseResponse(); baseResponse.setObject(mainBasicConfigList); return baseResponse; } + public void sortBasicConfig(BasicConfig basicConfig){ + if(CollectionUtils.isNotEmpty(basicConfig.getBasicConfigs())){ + for(BasicConfig bs:basicConfig.getBasicConfigs()){ + if(CollectionUtils.isNotEmpty(bs.getBasicConfigs())){ + sortBasicConfig(bs); + } + } + Collections.sort(basicConfig.getBasicConfigs(), new Comparator() { + @Override + public int compare(BasicConfig o1, BasicConfig o2) { + if(o1.getWeight()!=null&&o2.getWeight()!=null){ + return o1.getWeight().compareTo(o2.getWeight()); + }else{ + return 0; + } + } + }); + } + } public static void configData(BasicConfig bs, List basicConfigList, Map> slaveBasicConfigMap) { if (slaveBasicConfigMap.containsKey(bs.getId())) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java index da86c8d..2316669 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java @@ -22,10 +22,7 @@ import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Component public class BasicConfigFacade { @@ -75,12 +72,25 @@ public class BasicConfigFacade { for (BasicConfig bs : mainBasicConfigList) { configData(bs, basicConfigList,slaveBasicConfigMap); + sortBasicConfig(bs); } + + //根据权重排序 + Collections.sort(mainBasicConfigList, new Comparator() { + @Override + public int compare(BasicConfig o1, BasicConfig o2) { + if(o1.getWeight()!=null&&o2.getWeight()!=null){ + return -Integer.compare(o1.getWeight(),o2.getWeight()); + } + return 0; + } + }); BaseResponse baseResponse = new BaseResponse(); baseResponse.setObject(mainBasicConfigList); return baseResponse; } + //子节点根据权重排序 public void configData(BasicConfig bs, List basicConfigList,Map> slaveBasicConfigMap) { if (slaveBasicConfigMap.containsKey(bs.getId())) { @@ -91,6 +101,25 @@ public class BasicConfigFacade { } } + public void sortBasicConfig(BasicConfig basicConfig){ + if(CollectionUtils.isNotEmpty(basicConfig.getBasicConfigs())){ + for(BasicConfig bs:basicConfig.getBasicConfigs()){ + if(CollectionUtils.isNotEmpty(bs.getBasicConfigs())){ + sortBasicConfig(bs); + } + } + Collections.sort(basicConfig.getBasicConfigs(), new Comparator() { + @Override + public int compare(BasicConfig o1, BasicConfig o2) { + if(o1.getWeight()!=null&&o2.getWeight()!=null){ + return o1.getWeight().compareTo(o2.getWeight()); + }else{ + return 0; + } + } + }); + } + } /**