diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java index fc4b0bd..1c015b7 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/CoreTreeService.java @@ -404,8 +404,19 @@ public class CoreTreeService implements ICoreTreeService { @Override @ApiOperation(value = "父节点检查",notes = "检查菜单的父节点是否是当前节点的子节点") public void doValidatorSysMenuParentId(SysMenu menu) { - findSysMenuChildrenTreePack(menu,0); - validatorSysMenuParentId(menu.getChildList(),menu.getParentId()); + if(menu != null){ + if(menu.getParentId().longValue() == menu.getId().longValue()){ + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("上级组织不能为当前系统功能") + .setErrorSolution("请重新操作") + .build(); + } + + findSysMenuChildrenTreePack(menu,0); + validatorSysMenuParentId(menu.getChildList(),menu.getParentId()); + } } @Override @@ -585,7 +596,7 @@ public class CoreTreeService implements ICoreTreeService { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) - .setErrorDetail("上级部门不能为子部门") + .setErrorDetail("上级部门不能为子目录") .setErrorSolution("请重新操作") .build(); }