|
@@ -112,6 +112,10 @@ public class SysMenuServiceImpl implements SysMenuService {
|
|
|
public ResponseJson<Void> updateMenu(Integer id, SysMenu menu) {
|
|
|
menu.setId(id);
|
|
|
menu.setDelFlag(0);
|
|
|
+ SysMenu dbMenu = systemMapper.getMenuByName(menu.getMenuType(), menu.getName());
|
|
|
+ if (null != dbMenu && !dbMenu.getId().equals(id)) {
|
|
|
+ return ResponseJson.error("菜单路由名已存在", null);
|
|
|
+ }
|
|
|
systemMapper.updateMenu(menu);
|
|
|
// 按钮权限JSON数据解析
|
|
|
ResponseJson<List<SysPermission>> result = parsePermissionJson(menu.getId(), menu.getPermissionJson());
|
|
@@ -190,8 +194,12 @@ public class SysMenuServiceImpl implements SysMenuService {
|
|
|
if (!StringUtils.hasLength(menu.getTitle())) {
|
|
|
return ResponseJson.error("菜单名称不能为空!", null);
|
|
|
}
|
|
|
+ log.info(menu.getMenuType() + "," + menu.getName());
|
|
|
// 根据路由名称查询菜单
|
|
|
- SysMenu dbMenu = systemMapper.getMenuByName(menu.getName());
|
|
|
+ SysMenu dbMenu = systemMapper.getMenuByName(menu.getMenuType(), menu.getName());
|
|
|
+ if (null != dbMenu) {
|
|
|
+ log.info(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" + dbMenu.getId());
|
|
|
+ }
|
|
|
if (null == dbMenu) {
|
|
|
systemMapper.insertMenu(menu);
|
|
|
// 按钮权限JSON数据解析
|
|
@@ -319,6 +327,9 @@ public class SysMenuServiceImpl implements SysMenuService {
|
|
|
for (Integer permissionId : permissionIds) {
|
|
|
systemMapper.deletePermission(permissionId);
|
|
|
}
|
|
|
+ // 获取子菜单列表,递归删除
|
|
|
+ List<SysMenu> childMenuList = systemMapper.getMenuList(id, null, null);
|
|
|
+ childMenuList.forEach(childMenu-> deleteMenu(childMenu.getId()));
|
|
|
return ResponseJson.success();
|
|
|
}
|
|
|
|