diff --git a/backend/src/main/java/com/designhub/service/TaskService.java b/backend/src/main/java/com/designhub/service/TaskService.java index 33f305a..2a43e03 100644 --- a/backend/src/main/java/com/designhub/service/TaskService.java +++ b/backend/src/main/java/com/designhub/service/TaskService.java @@ -1348,7 +1348,16 @@ public class TaskService { if (StringUtils.hasText(status)) { wrapper.eq(Task::getStatus, status); } else { - wrapper.ne(Task::getStatus, "draft"); // 排除草稿 + // 排除纯草稿(但保留已进入审批流程的任务) + // 如果 approval_status 存在且不是 draft,说明任务已进入审批流程,即使 status 是 draft 也应该显示 + wrapper.and(w -> w + .ne(Task::getStatus, "draft") + .or(ow -> ow + .isNotNull(Task::getApprovalStatus) + .ne(Task::getApprovalStatus, "draft") + .ne(Task::getApprovalStatus, "") + ) + ); } // 任务类型筛选