diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java index cfc4485b..3a8f2d54 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java @@ -294,16 +294,22 @@ public class EvalProjectExecutor implements EvalProjectApi { * @return */ public Map getProjectRole(List projectIds) { - List evalProjectMemberDOS = evalProjectMemberMapper.selectList(new LambdaQueryWrapper() - .eq(EvalProjectMemberDO::getProjectId, projectIds) - .eq(EvalProjectMemberDO::getPersonnelId, AuthUserContextAdapter.getCurrentUserId())); + List evalProjectMemberDOS = new ArrayList<>(); + for (Long projectId : projectIds) { + List evalProjectMembers = evalProjectMemberMapper.selectList(new LambdaQueryWrapper() + .eq(EvalProjectMemberDO::getProjectId, projectId) + .eq(EvalProjectMemberDO::getPersonnelId, AuthUserContextAdapter.getCurrentUserId())); + if (!CollectionUtils.isEmpty(evalProjectMembers)) { + evalProjectMemberDOS.addAll(evalProjectMembers); + } + } if (CollectionUtils.isEmpty(evalProjectMemberDOS)) { return null; } for (EvalProjectMemberDO evalProjectMemberDO : evalProjectMemberDOS) { evalProjectMemberDO.setRole(ProjectRoleEnum.fromVals(evalProjectMemberDO.getRole())); } - return evalProjectMemberDOS.stream().collect(Collectors.toMap(EvalProjectMemberDO::getId, EvalProjectMemberDO::getRole)); + return evalProjectMemberDOS.stream().collect(Collectors.toMap(EvalProjectMemberDO::getProjectId, EvalProjectMemberDO::getRole)); } @Override