修改 前端菜单 管理菜单,角色前后端分配 及通道创建失败的问题

This commit is contained in:
LEED
2025-07-07 22:26:26 +08:00
parent b2cee8aeb7
commit ac40c5e5ec
29 changed files with 899 additions and 81 deletions

View File

@@ -168,7 +168,9 @@ public class SysDeptController extends BaseController
// List<SysMenu> sysMenuList = sysMenuService.selectMenuList(new SysMenu(), 1L, request.getHeader(LANGUAGE));
SysDept sysDept = deptService.selectDeptById(dept.getParentId());
List<SysMenu> sysMenuList = sysMenuService.selectMenuList(new SysMenu(), sysDept.getDeptUserId());
List<SysMenu> sysMenuListF = sysMenuService.selectMenuListF(new SysMenu(), sysDept.getDeptUserId());
Long[] menuIdList = sysMenuList.stream().map(SysMenu::getMenuId).toArray(Long[]::new);
Long[] menuIdListF = sysMenuListF.stream().map(SysMenu::getMenuId).toArray(Long[]::new);
SysRole sysRole = new SysRole();
sysRole.setRoleName("管理员");
sysRole.setRoleKey("manager");
@@ -176,6 +178,7 @@ public class SysDeptController extends BaseController
sysRole.setStatus("0");
sysRole.setDeptId(dept.getDeptId());
sysRole.setMenuIds(menuIdList);
sysRole.setMenuFIds(menuIdListF);
sysRoleService.insertRole(sysRole);
// 注册机构管理员用户

View File

@@ -125,4 +125,13 @@ public class SysLoginController
List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId, request.getHeader(LANGUAGE));
return AjaxResult.success(menuService.buildMenus(menus));
}
@ApiOperation("获取路由信息")
@GetMapping("getBRouters")
public AjaxResult getBusRouters(HttpServletRequest request)
{
Long userId = SecurityUtils.getUserId();
List<SysMenu> menus = menuService.selectMenuTreeByUserIdF(userId, request.getHeader(LANGUAGE));
return AjaxResult.success(menuService.buildMenus(menus));
}
}

View File

@@ -42,6 +42,17 @@ public class SysMenuController extends BaseController
List<SysMenu> menus = menuService.selectMenuList(menu, getUserId());
return success(menus);
}
/**
* 获取菜单列表
*/
@ApiOperation("获取菜单列表")
@PreAuthorize("@ss.hasPermi('system:menu:list')")
@GetMapping("/listF")
public AjaxResult listF(SysMenu menu)
{
List<SysMenu> menus = menuService.selectMenuListF(menu, getUserId());
return success(menus);
}
/**
* 根据菜单编号获取详细信息
@@ -54,6 +65,13 @@ public class SysMenuController extends BaseController
return success(menuService.selectMenuById(menuId));
}
@ApiOperation("根据菜单编号获取详细信息")
@PreAuthorize("@ss.hasPermi('system:menu:query')")
@GetMapping(value = "/F/{menuId}")
public AjaxResult getInfoF(@PathVariable Long menuId)
{
return success(menuService.selectMenuByIdF(menuId));
}
/**
* 获取菜单下拉树列表
*/
@@ -65,6 +83,14 @@ public class SysMenuController extends BaseController
return success(menuService.buildMenuTreeSelect(menus));
}
@ApiOperation("获取菜单下拉树列表")
@GetMapping("/treeselectF")
public AjaxResult treeselectF(SysMenu menu)
{
List<SysMenu> menus = menuService.selectMenuListF(menu, getUserId());
return success(menuService.buildMenuTreeSelect(menus));
}
/**
* 加载对应角色菜单列表树
*/
@@ -73,13 +99,23 @@ public class SysMenuController extends BaseController
public AjaxResult roleMenuTreeselect(@RequestParam Long roleId, @RequestParam Long deptId)
{
List<SysMenu> menus = menuService.deptRoleMenuTreeselect(deptId, roleId);
// List<SysMenu> menus = menuService.selectMenuList(getUserId(), request.getHeader(LANGUAGE));
AjaxResult ajax = AjaxResult.success();
ajax.put("checkedKeys", menuService.selectMenuListByRoleId(roleId));
ajax.put("menus", menuService.buildMenuTreeSelect(menus));
return ajax;
}
@ApiOperation("加载对应角色菜单列表树")
@GetMapping(value = "/roleMenuTreeselectF")
public AjaxResult roleMenuTreeselectF(@RequestParam Long roleId, @RequestParam Long deptId)
{
List<SysMenu> menus = menuService.deptRoleMenuTreeselectF(deptId, roleId);
AjaxResult ajax = AjaxResult.success();
ajax.put("checkedKeys", menuService.selectMenuListByRoleIdF(roleId));
ajax.put("menus", menuService.buildMenuTreeSelect(menus));
return ajax;
}
/**
* 新增菜单
*/
@@ -100,10 +136,27 @@ public class SysMenuController extends BaseController
menu.setCreateBy(getUsername());
return toAjax(menuService.insertMenu(menu));
}
@ApiOperation("新增菜单")
@PreAuthorize("@ss.hasPermi('system:menu:add')")
@Log(title = "菜单管理", businessType = BusinessType.INSERT)
@PostMapping(value = "/F")
public AjaxResult addF(@Validated @RequestBody SysMenu menu)
{
if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUniqueF(menu)))
{
return error(StringUtils.format(MessageUtils.message("menu.add.failed.name.exists"), menu.getMenuName()));
}
else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath()))
{
return error(StringUtils.format(MessageUtils.message("menu.add.failed.path.not.valid"), menu.getMenuName()));
}
menu.setCreateBy(getUsername());
return toAjax(menuService.insertMenuF(menu));
}
/**
* 修改菜单
*/
@ApiOperation("修改菜单")
@PreAuthorize("@ss.hasPermi('system:menu:edit')")
@Log(title = "菜单管理", businessType = BusinessType.UPDATE)
@@ -126,9 +179,32 @@ public class SysMenuController extends BaseController
return toAjax(menuService.updateMenu(menu));
}
@ApiOperation("修改菜单")
@PreAuthorize("@ss.hasPermi('system:menu:edit')")
@Log(title = "菜单管理", businessType = BusinessType.UPDATE)
@PutMapping(value = "/F")
public AjaxResult editF(@Validated @RequestBody SysMenu menu)
{
if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUniqueF(menu)))
{
return error(StringUtils.format(MessageUtils.message("menu.update.failed.name.exists"), menu.getMenuName()));
}
else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) && !StringUtils.ishttp(menu.getPath()))
{
return error(StringUtils.format(MessageUtils.message("menu.update.failed.path.not.valid"), menu.getMenuName()));
}
else if (menu.getMenuId().equals(menu.getParentId()))
{
return error(StringUtils.format(MessageUtils.message("menu.update.failed.parent.not.valid"), menu.getMenuName()));
}
menu.setUpdateBy(getUsername());
return toAjax(menuService.updateMenuF(menu));
}
/**
* 删除菜单
*/
@ApiOperation("删除菜单")
@PreAuthorize("@ss.hasPermi('system:menu:remove')")
@Log(title = "菜单管理", businessType = BusinessType.DELETE)
@@ -145,6 +221,22 @@ public class SysMenuController extends BaseController
}
return toAjax(menuService.deleteMenuById(menuId));
}
@ApiOperation("删除菜单")
@PreAuthorize("@ss.hasPermi('system:menu:remove')")
@Log(title = "菜单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/F/{menuId}")
public AjaxResult removeF(@PathVariable("menuId") Long menuId)
{
if (menuService.hasChildByMenuId(menuId))
{
return warn(MessageUtils.message("menu.delete.failed.child.exists"));
}
if (menuService.checkMenuExistRoleF(menuId))
{
return warn(MessageUtils.message("menu.delete.failed.role.exists"));
}
return toAjax(menuService.deleteMenuByIdF(menuId));
}
/**
* 加载对应部门菜单列表树
@@ -156,4 +248,11 @@ public class SysMenuController extends BaseController
List<SysMenu> menus = menuService.deptMenuTreeselect(deptId);
return success(menuService.buildMenuTreeSelect(menus));
}
@ApiOperation("加载对应部门菜单列表树")
@GetMapping(value = "/deptMenuTreeselectF/{deptId}")
public AjaxResult deptMenuTreeselectF(@PathVariable("deptId") Long deptId)
{
List<SysMenu> menus = menuService.deptMenuTreeselectF(deptId);
return success(menuService.buildMenuTreeSelect(menus));
}
}