diff --git a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java index 917d28d4..6a6dbc1c 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/home/service/impl/LawsHomeQuickAccessServiceImpl.java @@ -170,10 +170,19 @@ public class LawsHomeQuickAccessServiceImpl extends ServiceImpl() .eq(LawsHomeQuickAccess::getUserId, sysUser.getId())); + + // 获取拥有权限的菜单列表 + List sysPermissionList = queryPermissionMenuList(""); + List menuIdList = sysPermissionList.stream().map(SysPermission::getId).collect(Collectors.toList()); // 保存新数据 List lawsHomeQuickAccessList = new ArrayList<>(); if (StringUtils.isNotBlank(permissionIdList)){ - for (String permissionId : permissionIdList.split(",")) { + String[] menuId = permissionIdList.split(","); + for (String permissionId : menuId) { + long count = menuIdList.stream().filter(v -> v.contains(permissionId)).count(); + if (count == 0){ + throw new JeroBootException("不能保存没有权限的菜单!"); + } LawsHomeQuickAccess lawsHomeQuickAccess = new LawsHomeQuickAccess(); lawsHomeQuickAccess.setUserId(sysUser.getId()); lawsHomeQuickAccess.setPermissionId(permissionId);