From 0d831f835708bab1351fa26c7e8aea0a9bf8911e Mon Sep 17 00:00:00 2001 From: kimi <kimi42345@gmail.com> Date: 星期三, 01 四月 2020 11:38:30 +0800 Subject: [PATCH] add usergroup 一半 --- src/main/java/com/highdatas/mdm/controller/SysMenuController.java | 31 ++++++++++++++++++++----------- 1 files changed, 20 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/highdatas/mdm/controller/SysMenuController.java b/src/main/java/com/highdatas/mdm/controller/SysMenuController.java index f941fd2..feb4ed0 100644 --- a/src/main/java/com/highdatas/mdm/controller/SysMenuController.java +++ b/src/main/java/com/highdatas/mdm/controller/SysMenuController.java @@ -72,21 +72,30 @@ flows = flows.stream().filter(flow -> flowsService.isNextAudit(flow, userId)).collect(Collectors.toList()); HashSet<String> tableNameSet = new HashSet<>(); - List<String> maintainIds = flows.stream().map(Flows::getBusinessId).collect(Collectors.toList()); - if (maintainIds.size() == 0) { + List<String> maintainIds = flows.stream().filter(flow -> flow.getBusinessType().equals(ActivitiBusinessType.maintain)).map(Flows::getBusinessId).collect(Collectors.toList()); + List<String> maintainFieldIds = flows.stream().filter(flow -> flow.getBusinessType().equals(ActivitiBusinessType.field)).map(Flows::getBusinessId).collect(Collectors.toList()); + + if (maintainIds.isEmpty() && maintainFieldIds.isEmpty()) { return Result.success(null); } - maintainIds = maintainIds.stream().filter(s -> masterAuthorService.checkMaintainAuthor(userId,s)).collect(Collectors.toList()); - if (maintainIds.isEmpty()) { - return Result.success(null); + for (String maintainFieldId : maintainFieldIds) { + MaintainField maintainField = maintainFieldService.selectById(maintainFieldId); + if (maintainField == null) { + continue; + } + String tableName = maintainField.getTableName(); + if (StringUtils.isEmpty(tableName)) { + continue; + } + tableNameSet.add(tableName); } - List<Maintain> maintains = maintainService.selectBatchIds(maintainIds); + maintainIds = maintainIds.stream().filter(s -> masterAuthorService.checkMaintainAuthor(userId,s)).collect(Collectors.toList()); + if (!maintainIds.isEmpty()) { + List<Maintain> maintains = maintainService.selectBatchIds(maintainIds); - List<String> tableNameList = maintains.stream().map(Maintain::getTableName).collect(Collectors.toList()); - tableNameSet.addAll(tableNameList); - // - List<MaintainField> maintainFields = maintainFieldService.selectBatchIds(maintainIds); - tableNameSet.addAll(maintainFields.stream().map(MaintainField::getTableName).collect(Collectors.toList())); + List<String> tableNameList = maintains.stream().map(Maintain::getTableName).collect(Collectors.toList()); + tableNameSet.addAll(tableNameList); + } if (tableNameSet.size() == 0) { return Result.success(null); } -- Gitblit v1.8.0