diff --git a/openhis-server-new/core-system/src/main/java/com/core/system/service/impl/SysMenuServiceImpl.java b/openhis-server-new/core-system/src/main/java/com/core/system/service/impl/SysMenuServiceImpl.java index bc5a1c49..4730aa07 100644 --- a/openhis-server-new/core-system/src/main/java/com/core/system/service/impl/SysMenuServiceImpl.java +++ b/openhis-server-new/core-system/src/main/java/com/core/system/service/impl/SysMenuServiceImpl.java @@ -284,10 +284,15 @@ public class SysMenuServiceImpl implements ISysMenuService { @Override public int updateMenu(SysMenu menu) { //路径Path唯一性判断 - SysMenu sysMenu = menuMapper.selectMenuByPath(menu.getPath()); - if (sysMenu != null && !menu.getMenuId().equals(sysMenu.getMenuId())) { - return -1; + String path = menu.getPath(); + if (StringUtils.isNotBlank(path)) { + SysMenu sysMenu = menuMapper.selectMenuByPath(menu.getPath()); + // 先判断sysMenu是否不为null,再比较menuId + if (sysMenu != null && !menu.getMenuId().equals(sysMenu.getMenuId())) { + return -1; // 路由地址已存在 + } } + // 执行更新 return menuMapper.updateMenu(menu); }