Explorar el Código

任务查看新增电签中

cr hace 1 mes
padre
commit
25034c8282

+ 40 - 36
blade-service/blade-business/src/main/java/org/springblade/business/controller/TaskController.java

@@ -1848,47 +1848,51 @@ public class TaskController extends BladeController {
             fixedsMap = new HashMap<>();
         }
         Map<String, List<TaskParallel>> finalTaskParallelGroupMap = taskParallelGroupMap;
-        List<Task> filteredList = allResultList.stream()
-                .filter(task -> {
-                    // 获取任务流程信息,判断是否是垂直签
-                    if (task.getFixedFlowId() != null && fixedsMap.containsKey(task.getFixedFlowId())) {
-                        // 预设流程
-                        List<FixedFlowLink> fixedFlowLinks = fixedsMap.get(task.getFixedFlowId());
-                        List<FixedFlowLink> linkList = fixedFlowLinks.stream().filter(link -> link.getFixedFlowLinkType() == null).collect(Collectors.toList());
-                        if (linkList.isEmpty()) {
-                            // 获取垂直流程
-                            List<FixedFlowLink> collect = fixedFlowLinks.stream().filter(link -> link.getFixedFlowLinkType() != null && link.getFixedFlowLinkType() == 1).collect(Collectors.toList());
-                            if (!collect.isEmpty()) {
-                                // 走垂直审批逻辑
-                                return handleTaskParallel(fixedFlowLinks, finalTaskParallelGroupMap.get(task.getProcessInstanceId()), SecureUtil.getUserId());
+        List<Task> filteredList=new ArrayList<>();
+        if(dto.getSelectedType()==1){
+            filteredList= allResultList.stream()
+                    .filter(task -> {
+                        // 获取任务流程信息,判断是否是垂直签
+                        if (task.getFixedFlowId() != null && fixedsMap.containsKey(task.getFixedFlowId())) {
+                            // 预设流程
+                            List<FixedFlowLink> fixedFlowLinks = fixedsMap.get(task.getFixedFlowId());
+                            List<FixedFlowLink> linkList = fixedFlowLinks.stream().filter(link -> link.getFixedFlowLinkType() == null).collect(Collectors.toList());
+                            if (linkList.isEmpty()) {
+                                // 获取垂直流程
+                                List<FixedFlowLink> collect = fixedFlowLinks.stream().filter(link -> link.getFixedFlowLinkType() != null && link.getFixedFlowLinkType() == 1).collect(Collectors.toList());
+                                if (!collect.isEmpty()) {
+                                    // 走垂直审批逻辑
+                                    return handleTaskParallel(fixedFlowLinks, finalTaskParallelGroupMap.get(task.getProcessInstanceId()), SecureUtil.getUserId());
+                                }
                             }
                         }
-                    }
-                    // 仅处理垂直签+待办页面的过滤逻辑
-                    if (((projectInfo != null && projectInfo.getApprovalType() == 1)) && dto.getSelectedType() == 1) {
-                        List<TaskParallel> parallelList = finalTaskParallelGroupMap.get(task.getProcessInstanceId());
-                        if (CollectionUtil.isEmpty(parallelList)) {
-                            return false;
-                        }
-                        boolean shouldDisplay = false;
-                        for (TaskParallel tp : parallelList) {
-                            // 当前用户是审批人:显示
-                            if (SecureUtil.getUserId().equals(Long.parseLong(tp.getTaskUser()))) {
-                                shouldDisplay = true;
-                                break;
+                        // 仅处理垂直签+待办页面的过滤逻辑
+                        if (((projectInfo != null && projectInfo.getApprovalType() == 1)) && dto.getSelectedType() == 1) {
+                            List<TaskParallel> parallelList = finalTaskParallelGroupMap.get(task.getProcessInstanceId());
+                            if (CollectionUtil.isEmpty(parallelList)) {
+                                return false;
                             }
-                            // 前序审批未完成:不显示
-                            if (tp.getStatus() != 2) {
-                                break;
+                            boolean shouldDisplay = false;
+                            for (TaskParallel tp : parallelList) {
+                                // 当前用户是审批人:显示
+                                if (SecureUtil.getUserId().equals(Long.parseLong(tp.getTaskUser()))) {
+                                    shouldDisplay = true;
+                                    break;
+                                }
+                                // 前序审批未完成:不显示
+                                if (tp.getStatus() != 2) {
+                                    break;
+                                }
                             }
+                            return shouldDisplay;
                         }
-                        return shouldDisplay;
-                    }
-                    // 其他场景:直接保留
-                    return true;
-                })
-                .collect(Collectors.toList());
-
+                        // 其他场景:直接保留
+                        return true;
+                    })
+                    .collect(Collectors.toList());
+        }else {
+            filteredList= allResultList;
+        }
         // 7. 基于过滤后的数据计算分页
         int current = dto.getCurrent();
         int size = dto.getSize();