diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/SmsServiceEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/SmsServiceEnums.java index 09c9040..a8f5eef 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/SmsServiceEnums.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/SmsServiceEnums.java @@ -110,6 +110,32 @@ public enum SmsServiceEnums { } + public static List getSelectedNodes(int id) + { + + List list = new ArrayList<>(); + for (SmsServiceEnums e : SmsServiceEnums.values()) { + if(e.getId() == id) { + Map rootMap = new HashMap(); + rootMap.put("id",e.getId()); + rootMap.put("name",e.getName()); + rootMap.put("pid",e.getPid()); + if (isLeaf(e.getId())) + { + rootMap.put("children",getSmsServiceTree(e.getId())); + rootMap.put("isLeaf",false); + } + else + { + rootMap.put("isLeaf",true); + } + list.add(rootMap); + } + } + return list; + + } + /** * 只要子节点 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/EnumsController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/EnumsController.java index bd8954b..2a6962c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/EnumsController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/EnumsController.java @@ -337,7 +337,7 @@ public class EnumsController { public static void main(String a[]) { - List list = SmsServiceEnums.getSmsServiceTree(-1); + List list = SmsServiceEnums.getSelectedNodes(6); System.out.println(list); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java index 30b4869..99dd18f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java @@ -2,6 +2,7 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.enums.SmsServiceEnums; import com.lyms.platform.common.enums.WeekEnums; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseObjectResponse; @@ -212,10 +213,27 @@ public class SmsConfigFacade { } sr.setDeptPrefix(deptsPrefixs); List smsService = JsonUtil.toList(model.getSmsService(), Map.class); - sr.setSmsService(smsService); + sr.setSmsService(getSelectedNode(smsService)); return sr; } + private List getSelectedNode(List smsServices) + { + List nodes = new ArrayList<>(); + + for(Map service : smsServices) + { + for(Object obj : service.keySet()) + { + Integer id = (Integer)obj; + List list = SmsServiceEnums.getSelectedNodes(id); + nodes.addAll(list); + } + + } + return nodes; + } + /** * 更新单个部门的前缀