mirror of https://gitee.com/stylefeng/roses
【7.6.0】【sys】【permission】封装通用方法
parent
94544961b5
commit
d0b5a768e8
|
@ -77,4 +77,12 @@ public interface SysMenuService extends IService<SysMenu> {
|
||||||
*/
|
*/
|
||||||
Long getMenuAppId(Long menuId);
|
Long getMenuAppId(Long menuId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取所有的菜单信息,用在角色绑定权限界面
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @since 2023/6/15 9:24
|
||||||
|
*/
|
||||||
|
List<SysMenu> getTotalMenus();
|
||||||
|
|
||||||
}
|
}
|
|
@ -91,6 +91,14 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SysMenu> getTotalMenus() {
|
||||||
|
LambdaQueryWrapper<SysMenu> menuLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
menuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuName, SysMenu::getMenuParentId, SysMenu::getAppId);
|
||||||
|
menuLambdaQueryWrapper.orderByAsc(SysMenu::getMenuSort);
|
||||||
|
return this.list(menuLambdaQueryWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<AppGroupDetail> getAppMenuGroupDetail(SysMenuRequest sysMenuRequest) {
|
public List<AppGroupDetail> getAppMenuGroupDetail(SysMenuRequest sysMenuRequest) {
|
||||||
|
|
||||||
|
@ -106,7 +114,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
// 2. 获取应用对应的所有菜单
|
// 2. 获取应用对应的所有菜单
|
||||||
LambdaQueryWrapper<SysMenu> wrapper = this.createWrapper(sysMenuRequest);
|
LambdaQueryWrapper<SysMenu> wrapper = this.createWrapper(sysMenuRequest);
|
||||||
wrapper.in(SysMenu::getAppId, totalAppIds);
|
wrapper.in(SysMenu::getAppId, totalAppIds);
|
||||||
wrapper.select(SysMenu::getMenuId, SysMenu::getMenuParentId, SysMenu::getMenuPids, SysMenu::getMenuName, SysMenu::getAppId, SysMenu::getMenuType);
|
wrapper.select(SysMenu::getMenuId, SysMenu::getMenuParentId, SysMenu::getMenuPids, SysMenu::getMenuName, SysMenu::getAppId,
|
||||||
|
SysMenu::getMenuType);
|
||||||
List<SysMenu> sysMenuList = this.list(wrapper);
|
List<SysMenu> sysMenuList = this.list(wrapper);
|
||||||
if (ObjectUtil.isEmpty(sysMenuList)) {
|
if (ObjectUtil.isEmpty(sysMenuList)) {
|
||||||
return appList;
|
return appList;
|
||||||
|
@ -118,7 +127,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
if (ObjectUtil.isNotEmpty(menuParentIds)) {
|
if (ObjectUtil.isNotEmpty(menuParentIds)) {
|
||||||
LambdaQueryWrapper<SysMenu> queryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<SysMenu> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
queryWrapper.in(SysMenu::getMenuId, menuParentIds);
|
queryWrapper.in(SysMenu::getMenuId, menuParentIds);
|
||||||
queryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuParentId, SysMenu::getMenuPids, SysMenu::getMenuName, SysMenu::getAppId, SysMenu::getMenuType);
|
queryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuParentId, SysMenu::getMenuPids, SysMenu::getMenuName,
|
||||||
|
SysMenu::getAppId, SysMenu::getMenuType);
|
||||||
queryWrapper.orderByAsc(SysMenu::getMenuSort);
|
queryWrapper.orderByAsc(SysMenu::getMenuSort);
|
||||||
List<SysMenu> parentMenus = this.list(queryWrapper);
|
List<SysMenu> parentMenus = this.list(queryWrapper);
|
||||||
sysMenuList.addAll(parentMenus);
|
sysMenuList.addAll(parentMenus);
|
||||||
|
|
|
@ -74,10 +74,7 @@ public class PermissionAssignServiceImpl implements PermissionAssignService {
|
||||||
public RoleBindPermissionResponse createSelectTreeStructure() {
|
public RoleBindPermissionResponse createSelectTreeStructure() {
|
||||||
|
|
||||||
// 获取所有的菜单
|
// 获取所有的菜单
|
||||||
LambdaQueryWrapper<SysMenu> menuLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
List<SysMenu> totalMenus = this.sysMenuService.getTotalMenus();
|
||||||
menuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuName, SysMenu::getMenuParentId, SysMenu::getAppId);
|
|
||||||
menuLambdaQueryWrapper.orderByAsc(SysMenu::getMenuSort);
|
|
||||||
List<SysMenu> totalMenus = this.sysMenuService.list(menuLambdaQueryWrapper);
|
|
||||||
|
|
||||||
// 组装所有的叶子节点菜单【初始化菜单】
|
// 组装所有的叶子节点菜单【初始化菜单】
|
||||||
List<RoleBindPermissionItem> totalResultMenus = PermissionAssignFactory.createPermissionMenus(totalMenus);
|
List<RoleBindPermissionItem> totalResultMenus = PermissionAssignFactory.createPermissionMenus(totalMenus);
|
||||||
|
|
|
@ -61,10 +61,7 @@ public class RoleBindTotalImpl implements RoleAssignOperateAction {
|
||||||
if (roleBindPermissionRequest.getChecked()) {
|
if (roleBindPermissionRequest.getChecked()) {
|
||||||
|
|
||||||
// 获取所有的菜单
|
// 获取所有的菜单
|
||||||
LambdaQueryWrapper<SysMenu> menuLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
List<SysMenu> totalMenus = this.sysMenuService.getTotalMenus();
|
||||||
menuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuName, SysMenu::getMenuParentId, SysMenu::getAppId);
|
|
||||||
menuLambdaQueryWrapper.orderByAsc(SysMenu::getMenuSort);
|
|
||||||
List<SysMenu> totalMenus = this.sysMenuService.list(menuLambdaQueryWrapper);
|
|
||||||
|
|
||||||
// 绑定角色的所有菜单
|
// 绑定角色的所有菜单
|
||||||
List<SysRoleMenu> sysRoleMenuList = new ArrayList<>();
|
List<SysRoleMenu> sysRoleMenuList = new ArrayList<>();
|
||||||
|
|
Loading…
Reference in New Issue