|
@@ -85,7 +85,6 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
|
|
|
menuDtoList = this.baseMapper.listByUserId(sysUser.getId(), Objects.isNull(sysUser.getSchoolId()) ? (Long) ServletUtil.getRequestSchoolByNotVaild() : sysUser.getSchoolId());
|
|
|
}
|
|
|
LinkedMultiValueMap<Long, MenuDto> linkedMultiValueMap = new LinkedMultiValueMap<>();
|
|
|
-// LinkedMultiValueMap<PrivilegeEnum, MenuDto> privilegeEnumMenuDtoLinkedMultiValueMap = new LinkedMultiValueMap<>();
|
|
|
List<MenuPrivilegeDto> menuPrivilegeDtoList = new ArrayList<>();
|
|
|
Gson gson = new Gson();
|
|
|
for (MenuDto m : menuDtoList) {
|
|
@@ -101,7 +100,35 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-// Set<Long> keySet = linkedMultiValueMap.keySet();
|
|
|
+ for (MenuPrivilegeDto m : menuPrivilegeDtoList) {
|
|
|
+ List<MenuDto> menuDtos = linkedMultiValueMap.get(m.getId());
|
|
|
+ List<MenuDto> urls = null, buttons = null, links = null, lists = null, conditions = null;
|
|
|
+ if (Objects.nonNull(menuDtos)) {
|
|
|
+ for (MenuDto menuDto : menuDtos) {
|
|
|
+ if (menuDto.getType() == PrivilegeEnum.BUTTON) {
|
|
|
+ buttons = Objects.isNull(buttons) ? new ArrayList<>() : buttons;
|
|
|
+ buttons.add(gson.fromJson(gson.toJson(menuDto), MenuPrivilegeDto.class));
|
|
|
+ m.setButtons(buttons);
|
|
|
+ } else if (menuDto.getType() == PrivilegeEnum.LINK) {
|
|
|
+ links = Objects.isNull(links) ? new ArrayList<>() : links;
|
|
|
+ links.add(gson.fromJson(gson.toJson(menuDto), MenuPrivilegeDto.class));
|
|
|
+ m.setLinks(links);
|
|
|
+ } else if (menuDto.getType() == PrivilegeEnum.URL) {
|
|
|
+ urls = Objects.isNull(urls) ? new ArrayList<>() : urls;
|
|
|
+ urls.add(gson.fromJson(gson.toJson(menuDto), MenuPrivilegeDto.class));
|
|
|
+ m.setUrls(urls);
|
|
|
+ } else if (menuDto.getType() == PrivilegeEnum.LIST) {
|
|
|
+ lists = Objects.isNull(lists) ? new ArrayList<>() : lists;
|
|
|
+ lists.add(gson.fromJson(gson.toJson(menuDto), MenuPrivilegeDto.class));
|
|
|
+ m.setLists(lists);
|
|
|
+ } else if (menuDto.getType() == PrivilegeEnum.CONDITION) {
|
|
|
+ conditions = Objects.isNull(conditions) ? new ArrayList<>() : conditions;
|
|
|
+ conditions.add(gson.fromJson(gson.toJson(menuDto), MenuPrivilegeDto.class));
|
|
|
+ m.setConditions(conditions);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
MenuResult menuResult = new MenuResult(sysUser.getId(), authBean.getRoleList().stream().map(s -> s.getName()).collect(Collectors.toSet()));
|
|
|
menuResult.setPrivileges(menuPrivilegeDtoList);
|
|
|
return menuResult;
|