|
@@ -609,7 +609,9 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
|
|
|
//查询授权申请已通过的功能菜单
|
|
|
List<AppFunAuthResult> authResults = funAuthResultService.getAppFunAuthResults(contentList.get(0).getUserId());
|
|
|
- Set<String> existFunIds = authResults.stream().map(AppFunAuthResult::getFunId).collect(Collectors.toSet());
|
|
|
+ Set<String> existFunIds = Optional.ofNullable(authResults).orElse(new ArrayList<>())
|
|
|
+ .stream()
|
|
|
+ .map(AppFunAuthResult::getFunId).collect(Collectors.toSet());
|
|
|
|
|
|
Map<String, List<AppFunAuthResourceDTO>> map = collect
|
|
|
.stream()
|
|
@@ -631,13 +633,38 @@ public class AuthApplyBusiness implements IAuthApplyBusiness {
|
|
|
} else {
|
|
|
detailDTO.setDelResourceInfos(new ArrayList<>());
|
|
|
}
|
|
|
- List<AppFunAuthResourceDTO> existList = authResults.stream().map(e -> {
|
|
|
- AppFunAuthResourceDTO resourceDTO = new AppFunAuthResourceDTO();
|
|
|
- resourceDTO.setAppId(e.getAppId());
|
|
|
- resourceDTO.setFunId(e.getFunId());
|
|
|
- return resourceDTO;
|
|
|
- }).collect(Collectors.toList());
|
|
|
- detailDTO.setExistResourceInfos(existList);
|
|
|
+
|
|
|
+ if(CollectionUtils.isNotEmpty(existFunIds)) {
|
|
|
+ List<String> funIds = new ArrayList<>(existFunIds);
|
|
|
+ List<AppFunInfoDTO> funInfos = appFunInfoService.getByIds(funIds);
|
|
|
+ Map<String, AppFunInfoDTO> funInfoDTOMap = funInfos.stream()
|
|
|
+ .collect(Collectors.toMap(AppFunInfoDTO::getId, e -> e));
|
|
|
+ List<String> appIds = funInfos.stream().map(AppFunInfoDTO::getAppId).collect(Collectors.toList());
|
|
|
+ List<ApplyInfo> appInfos = applyInfoFacade.getAppById(appIds);
|
|
|
+ Map<String, ApplyInfo> appInfoMap = appInfos.stream().collect(Collectors.toMap(ApplyInfo::getId, e -> e));
|
|
|
+ List<AppFunAuthResourceDTO> existList = Optional.ofNullable(authResults).orElse(new ArrayList<>())
|
|
|
+ .stream()
|
|
|
+ .map(e -> {
|
|
|
+ String funId = e.getFunId();
|
|
|
+ AppFunInfoDTO funInfoDTO = funInfoDTOMap.get(funId);
|
|
|
+ String appId = e.getAppId();
|
|
|
+ ApplyInfo applyInfo = appInfoMap.get(appId);
|
|
|
+ if(null == applyInfo) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ if(null == funInfoDTO) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ AppFunAuthResourceDTO resourceDTO = new AppFunAuthResourceDTO();
|
|
|
+ resourceDTO.setAppId(appId);
|
|
|
+ resourceDTO.setFunId(funId);
|
|
|
+ resourceDTO.setFunName(funInfoDTO.getName());
|
|
|
+ resourceDTO.setAppName(applyInfo.getApplyName());
|
|
|
+ return resourceDTO;
|
|
|
+ }).filter(Objects::nonNull).collect(Collectors.toList());
|
|
|
+ detailDTO.setExistResourceInfos(existList);
|
|
|
+ }
|
|
|
+
|
|
|
return detailDTO;
|
|
|
}
|
|
|
|