From 4844317f710288aae3fde97fadb19f6b686b8e87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Sun, 20 Feb 2022 00:12:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=8A=82=E7=82=B9=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E3=80=81=E6=A0=87=E7=AD=BE=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xm/core/service/XmMenuService.java | 17 +++++++++-------- .../xm/core/service/XmProjectPhaseService.java | 15 ++++++++------- .../java/com/xm/core/service/XmTaskService.java | 15 ++++++++------- 3 files changed, 25 insertions(+), 22 deletions(-) diff --git a/xm-core/src/main/java/com/xm/core/service/XmMenuService.java b/xm-core/src/main/java/com/xm/core/service/XmMenuService.java index d9a68ae6..6d9c88e9 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmMenuService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmMenuService.java @@ -60,7 +60,7 @@ public class XmMenuService extends BaseService { if(addList.size()>0) { this.batchInsert(addList); - List list= addList.stream().filter(i->!addList.stream().filter(k->k.getMenuId().equals(i.getPmenuId())).findAny().isPresent()).collect(Collectors.toList()); + List list= addList.stream().filter(i->!xmMenus.stream().filter(k->k.getMenuId().equals(i.getPmenuId())).findAny().isPresent()).collect(Collectors.toList()); list=list.stream().filter(i-> StringUtils.hasText(i.getPmenuId())).collect(Collectors.toList()); if(list.size()>0){ this.updateChildrenCntByIds(list.stream().map(i->i.getPmenuId()).collect(Collectors.toSet()).stream().collect(Collectors.toList())); @@ -87,10 +87,11 @@ public class XmMenuService extends BaseService { for (XmMenu node : noExistsList) { if(hadCalcMap.containsKey(node.getPmenuId())){ String idPaths=hadCalcMap.get(node.getPmenuId()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getMenuId()+","); }else{ this.parentIdPathsCalcBeforeSave(node); String idPaths=node.getPidPaths(); + idPaths=idPaths.substring(0,idPaths.length()-node.getMenuId().length()-1); hadCalcMap.put(node.getPmenuId(),idPaths); } } @@ -101,7 +102,7 @@ public class XmMenuService extends BaseService { } if(hadCalcMap.containsKey(node.getPmenuId())){ String idPaths=hadCalcMap.get(node.getPmenuId()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getMenuId()+","); }else{ List pnodeList=this.getParentList(node,nodes); XmMenu topParent=pnodeList.get(pnodeList.size()-1); @@ -112,13 +113,13 @@ public class XmMenuService extends BaseService { for (int i = pnodeList.size() - 1; i >= 0; i--) { idPath=idPath+pnodeList.get(i).getMenuId()+","; } - node.setPidPaths(idPath); + node.setPidPaths(idPath+node.getMenuId()+","); } } for (XmMenu node : nodes) { String idPaths=node.getPidPaths(); String[] idpss=idPaths.split(","); - node.setLvl(idpss.length); + node.setLvl(idpss.length-1); } return nodes; } @@ -126,7 +127,7 @@ public class XmMenuService extends BaseService { public Tips parentIdPathsCalcBeforeSave(XmMenu currNode) { Tips tips = new Tips("成功"); if (!StringUtils.hasText(currNode.getPmenuId()) || "0".equals(currNode.getPmenuId())) { - currNode.setPidPaths("0,"); + currNode.setPidPaths("0," + currNode.getMenuId() + ","); return tips; } else { List parentList=this.getParentList(currNode); @@ -134,11 +135,11 @@ public class XmMenuService extends BaseService { for (int i = parentList.size() - 1; i >= 0; i--) { idPath=idPath+parentList.get(i).getMenuId()+","; } - currNode.setPidPaths(idPath); + currNode.setPidPaths(idPath+currNode.getMenuId()+","); String idPaths=currNode.getPidPaths(); String[] idpss=idPaths.split(","); - currNode.setLvl(idpss.length); + currNode.setLvl(idpss.length-1); } return tips; } diff --git a/xm-core/src/main/java/com/xm/core/service/XmProjectPhaseService.java b/xm-core/src/main/java/com/xm/core/service/XmProjectPhaseService.java index b3b08600..29a4f4fe 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmProjectPhaseService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmProjectPhaseService.java @@ -251,10 +251,11 @@ public class XmProjectPhaseService extends BaseService { for (XmProjectPhase node : noExistsList) { if(hadCalcMap.containsKey(node.getParentPhaseId())){ String idPaths=hadCalcMap.get(node.getParentPhaseId()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getId()+","); }else{ this.parentIdPathsCalcBeforeSave(node); String idPaths=node.getPidPaths(); + idPaths=idPaths.substring(0,idPaths.length()-node.getId().length()-1); hadCalcMap.put(node.getParentPhaseId(),idPaths); } } @@ -265,7 +266,7 @@ public class XmProjectPhaseService extends BaseService { } if(hadCalcMap.containsKey(node.getParentPhaseId())){ String idPaths=hadCalcMap.get(node.getParentPhaseId()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getId()+","); }else{ List pnodeList=this.getParentList(node,nodes); XmProjectPhase topParent=pnodeList.get(pnodeList.size()-1); @@ -276,13 +277,13 @@ public class XmProjectPhaseService extends BaseService { for (int i = pnodeList.size() - 1; i >= 0; i--) { idPath=idPath+pnodeList.get(i).getId()+","; } - node.setPidPaths(idPath); + node.setPidPaths(idPath+node.getId()+","); } } for (XmProjectPhase node : nodes) { String idPaths=node.getPidPaths(); String[] idpss=idPaths.split(","); - node.setLvl(idpss.length); + node.setLvl(idpss.length-1); } return nodes; } @@ -297,7 +298,7 @@ public class XmProjectPhaseService extends BaseService { public Tips parentIdPathsCalcBeforeSave(XmProjectPhase currNode) { Tips tips = new Tips("成功"); if (!StringUtils.hasText(currNode.getParentPhaseId()) || "0".equals(currNode.getParentPhaseId())) { - currNode.setPidPaths("0,"); + currNode.setPidPaths("0," + currNode.getId() + ","); return tips; } else { List parentList=this.getParentList(currNode); @@ -305,11 +306,11 @@ public class XmProjectPhaseService extends BaseService { for (int i = parentList.size() - 1; i >= 0; i--) { idPath=idPath+parentList.get(i).getId()+","; } - currNode.setPidPaths(idPath); + currNode.setPidPaths(idPath+currNode.getId()+","); String idPaths=currNode.getPidPaths(); String[] idpss=idPaths.split(","); - currNode.setLvl(idpss.length); + currNode.setLvl(idpss.length-1); } return tips; } diff --git a/xm-core/src/main/java/com/xm/core/service/XmTaskService.java b/xm-core/src/main/java/com/xm/core/service/XmTaskService.java index 8e20074c..d4268385 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmTaskService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmTaskService.java @@ -447,10 +447,11 @@ public class XmTaskService extends BaseService { for (XmTask node : noExistsList) { if(hadCalcMap.containsKey(node.getParentTaskid())){ String idPaths=hadCalcMap.get(node.getParentTaskid()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getId()+","); }else{ this.parentIdPathsCalcBeforeSave(node); String idPaths=node.getPidPaths(); + idPaths=idPaths.substring(0,idPaths.length()-node.getId().length()-1); hadCalcMap.put(node.getParentTaskid(),idPaths); } } @@ -461,7 +462,7 @@ public class XmTaskService extends BaseService { } if(hadCalcMap.containsKey(node.getParentTaskid())){ String idPaths=hadCalcMap.get(node.getParentTaskid()); - node.setPidPaths(idPaths); + node.setPidPaths(idPaths+node.getId()+","); }else{ List pnodeList=this.getParentList(node,nodes); XmTask topParent=pnodeList.get(pnodeList.size()-1); @@ -472,13 +473,13 @@ public class XmTaskService extends BaseService { for (int i = pnodeList.size() - 1; i >= 0; i--) { idPath=idPath+pnodeList.get(i).getId()+","; } - node.setPidPaths(idPath); + node.setPidPaths(idPath+node.getId()+","); } } for (XmTask node : nodes) { String idPaths=node.getPidPaths(); String[] idpss=idPaths.split(","); - node.setLvl(idpss.length); + node.setLvl(idpss.length-1); } return nodes; } @@ -493,7 +494,7 @@ public class XmTaskService extends BaseService { public Tips parentIdPathsCalcBeforeSave(XmTask currNode) { Tips tips = new Tips("成功"); if (!StringUtils.hasText(currNode.getParentTaskid()) || "0".equals(currNode.getParentTaskid())) { - currNode.setPidPaths("0,"); + currNode.setPidPaths("0," + currNode.getId() + ","); return tips; } else { List parentList=this.getParentList(currNode); @@ -501,11 +502,11 @@ public class XmTaskService extends BaseService { for (int i = parentList.size() - 1; i >= 0; i--) { idPath=idPath+parentList.get(i).getId()+","; } - currNode.setPidPaths(idPath); + currNode.setPidPaths(idPath+currNode.getId()+","); String idPaths=currNode.getPidPaths(); String[] idpss=idPaths.split(","); - currNode.setLvl(idpss.length); + currNode.setLvl(idpss.length-1); } return tips; }