【7.6.0】【sys】【permission】封装通用方法

pull/55/MERGE
fengshuonan 2023-06-15 09:26:27 +08:00
parent 94544961b5
commit d0b5a768e8
4 changed files with 22 additions and 10 deletions

View File

@ -77,4 +77,12 @@ public interface SysMenuService extends IService<SysMenu> {
*/
Long getMenuAppId(Long menuId);
/**
*
*
* @author fengshuonan
* @since 2023/6/15 9:24
*/
List<SysMenu> getTotalMenus();
}

View File

@ -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
public List<AppGroupDetail> getAppMenuGroupDetail(SysMenuRequest sysMenuRequest) {
@ -106,7 +114,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
// 2. 获取应用对应的所有菜单
LambdaQueryWrapper<SysMenu> wrapper = this.createWrapper(sysMenuRequest);
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);
if (ObjectUtil.isEmpty(sysMenuList)) {
return appList;
@ -118,7 +127,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
if (ObjectUtil.isNotEmpty(menuParentIds)) {
LambdaQueryWrapper<SysMenu> queryWrapper = new LambdaQueryWrapper<>();
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);
List<SysMenu> parentMenus = this.list(queryWrapper);
sysMenuList.addAll(parentMenus);

View File

@ -74,10 +74,7 @@ public class PermissionAssignServiceImpl implements PermissionAssignService {
public RoleBindPermissionResponse createSelectTreeStructure() {
// 获取所有的菜单
LambdaQueryWrapper<SysMenu> menuLambdaQueryWrapper = new LambdaQueryWrapper<>();
menuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuName, SysMenu::getMenuParentId, SysMenu::getAppId);
menuLambdaQueryWrapper.orderByAsc(SysMenu::getMenuSort);
List<SysMenu> totalMenus = this.sysMenuService.list(menuLambdaQueryWrapper);
List<SysMenu> totalMenus = this.sysMenuService.getTotalMenus();
// 组装所有的叶子节点菜单【初始化菜单】
List<RoleBindPermissionItem> totalResultMenus = PermissionAssignFactory.createPermissionMenus(totalMenus);

View File

@ -61,10 +61,7 @@ public class RoleBindTotalImpl implements RoleAssignOperateAction {
if (roleBindPermissionRequest.getChecked()) {
// 获取所有的菜单
LambdaQueryWrapper<SysMenu> menuLambdaQueryWrapper = new LambdaQueryWrapper<>();
menuLambdaQueryWrapper.select(SysMenu::getMenuId, SysMenu::getMenuName, SysMenu::getMenuParentId, SysMenu::getAppId);
menuLambdaQueryWrapper.orderByAsc(SysMenu::getMenuSort);
List<SysMenu> totalMenus = this.sysMenuService.list(menuLambdaQueryWrapper);
List<SysMenu> totalMenus = this.sysMenuService.getTotalMenus();
// 绑定角色的所有菜单
List<SysRoleMenu> sysRoleMenuList = new ArrayList<>();