From 5bd2838b2b99e45c6cb0cba377395e941ea0de2f Mon Sep 17 00:00:00 2001 From: Sxile <3440626@qq.com> Date: 星期五, 19 六月 2020 18:22:47 +0800 Subject: [PATCH] 修复注释与参数名称不对应 --- ruoyi/src/main/java/com/ruoyi/project/system/controller/SysMenuController.java | 45 ++++++++++++++++++++++++++++++++++----------- 1 files changed, 34 insertions(+), 11 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysMenuController.java b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysMenuController.java index d47ff4d..a958f62 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysMenuController.java +++ b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysMenuController.java @@ -11,12 +11,16 @@ import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.constant.Constants; import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.common.utils.ServletUtils; +import com.ruoyi.common.utils.StringUtils; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; +import com.ruoyi.framework.security.LoginUser; +import com.ruoyi.framework.security.service.TokenService; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.project.system.domain.SysMenu; @@ -34,6 +38,9 @@ @Autowired private ISysMenuService menuService; + @Autowired + private TokenService tokenService; + /** * 获取菜单列表 */ @@ -41,8 +48,10 @@ @GetMapping("/list") public AjaxResult list(SysMenu menu) { - List<SysMenu> menus = menuService.selectMenuList(menu); - return AjaxResult.success(menuService.buildMenuTree(menus)); + LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest()); + Long userId = loginUser.getUser().getUserId(); + List<SysMenu> menus = menuService.selectMenuList(menu, userId); + return AjaxResult.success(menus); } /** @@ -58,23 +67,27 @@ /** * 获取菜单下拉树列表 */ - @PreAuthorize("@ss.hasPermi('system:menu:query')") @GetMapping("/treeselect") - public AjaxResult treeselect(SysMenu dept) + public AjaxResult treeselect(SysMenu menu) { - List<SysMenu> menus = menuService.selectMenuList(dept); + LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest()); + Long userId = loginUser.getUser().getUserId(); + List<SysMenu> menus = menuService.selectMenuList(menu, userId); return AjaxResult.success(menuService.buildMenuTreeSelect(menus)); } /** * 加载对应角色菜单列表树 */ - @PreAuthorize("@ss.hasPermi('system:menu:query')") @GetMapping(value = "/roleMenuTreeselect/{roleId}") - @ResponseBody public AjaxResult roleMenuTreeselect(@PathVariable("roleId") Long roleId) { - return AjaxResult.success(menuService.selectMenuListByRoleId(roleId)); + LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest()); + List<SysMenu> menus = menuService.selectMenuList(loginUser.getUser().getUserId()); + AjaxResult ajax = AjaxResult.success(); + ajax.put("checkedKeys", menuService.selectMenuListByRoleId(roleId)); + ajax.put("menus", menuService.buildMenuTreeSelect(menus)); + return ajax; } /** @@ -83,11 +96,16 @@ @PreAuthorize("@ss.hasPermi('system:menu:add')") @Log(title = "菜单管理", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody @Validated SysMenu menu) + public AjaxResult add(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { return AjaxResult.error("新增菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); + } + else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) + && !StringUtils.startsWithAny(menu.getPath(), Constants.HTTP, Constants.HTTPS)) + { + return AjaxResult.error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); } menu.setCreateBy(SecurityUtils.getUsername()); return toAjax(menuService.insertMenu(menu)); @@ -99,12 +117,17 @@ @PreAuthorize("@ss.hasPermi('system:menu:edit')") @Log(title = "菜单管理", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@RequestBody SysMenu menu) + public AjaxResult edit(@Validated @RequestBody SysMenu menu) { if (UserConstants.NOT_UNIQUE.equals(menuService.checkMenuNameUnique(menu))) { return AjaxResult.error("修改菜单'" + menu.getMenuName() + "'失败,菜单名称已存在"); } + else if (UserConstants.YES_FRAME.equals(menu.getIsFrame()) + && !StringUtils.startsWithAny(menu.getPath(), Constants.HTTP, Constants.HTTPS)) + { + return AjaxResult.error("新增菜单'" + menu.getMenuName() + "'失败,地址必须以http(s)://开头"); + } menu.setUpdateBy(SecurityUtils.getUsername()); return toAjax(menuService.updateMenu(menu)); } -- Gitblit v1.9.2