shc 7 месяцев назад
Родитель
Сommit
3a7de3e5f2

+ 12 - 7
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/WmSupervisionManager.java

@@ -1251,6 +1251,9 @@ public class WmSupervisionManager {
             isService = false;
             List<Integer> visibleRoleIds = getVisibleRoleIds(roles);
 
+            list = list.stream().filter(ts -> visibleRoleIds.contains(ts.getRoleId())).collect(Collectors.toList());
+
+            List<Integer> supTaskIds;
             if (review) {
                 // 获取当前积分包已经监督过的任务ID
                 Set<Long> tsId = taskSupervisionAdviceService.list(Wrappers.<WmTaskSupervisionAdvice>lambdaQuery()
@@ -1262,8 +1265,7 @@ public class WmSupervisionManager {
                     return page;
                 }
                 // Set<Integer> supTaskIds = list.stream().filter(ts -> tsId.contains(ts.getSupervisionId())).mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
-                Set<Integer> supTaskIds = list.stream().filter(ts -> tsId.contains(ts.getSupervisionId()) && visibleRoleIds.contains(ts.getRoleId())).mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
-                taskPage = taskService.page(new Page<>(query.getCurrent(), query.getSize()), Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, supTaskIds));
+                supTaskIds = list.stream().filter(ts -> tsId.contains(ts.getSupervisionId()) && visibleRoleIds.contains(ts.getRoleId())).mapToInt(WmTaskSupervision::getTaskId).boxed().distinct().sorted().collect(Collectors.toList());
             } else {
                 Map<UpmsState.TaskSupervisionState, Set<Integer>> collect1 = list.stream()
                         .collect(Collectors.groupingBy(WmTaskSupervision::getSupervisionState, Collectors.mapping(WmTaskSupervision::getTaskId, Collectors.toSet())));
@@ -1276,7 +1278,6 @@ public class WmSupervisionManager {
                 // Set<Integer> rejected = collect1.get(UpmsState.TaskSupervisionState.REJECTED);
 
                 // 负责人
-                List<Integer> supTaskIds;
                 if (CollUtil.containsAny(roles, List.of(57, 58, 59, 60))) {
 
                     // Set<Integer> temp = CollUtil.unionDistinct(ckt1, rejected);
@@ -1300,15 +1301,19 @@ public class WmSupervisionManager {
                     throw new BizException("无监督权限");
                 }
 
-                List<Integer> collect = supTaskIds.stream().filter(visibleRoleIds::contains).collect(Collectors.toList());
-
-                if (CollUtil.isEmpty(collect)) {
+                if (CollUtil.isEmpty(supTaskIds)) {
                     return page;
                 }
 
-                taskPage = taskService.page(new Page<>(query.getCurrent(), query.getSize()), Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, collect));
+                // taskPage = taskService.page(new Page<>(query.getCurrent(), query.getSize()), Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, supTaskIds));
             }
 
+            if (CollUtil.isEmpty(supTaskIds)) {
+                return page;
+            }
+
+            taskPage = taskService.page(new Page<>(query.getCurrent(), query.getSize()), Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, supTaskIds));
+
         }