diff --git a/backend/src/main/java/com/designhub/service/TaskItemService.java b/backend/src/main/java/com/designhub/service/TaskItemService.java index 31944ac..72c5c06 100644 --- a/backend/src/main/java/com/designhub/service/TaskItemService.java +++ b/backend/src/main/java/com/designhub/service/TaskItemService.java @@ -305,11 +305,7 @@ public class TaskItemService { .orderByAsc(com.designhub.entity.TaskUnlockStatus::getDeptId) .orderByAsc(com.designhub.entity.TaskUnlockStatus::getId); List unlockStatuses = taskUnlockService.getUnlockStatusMapper().selectList(wrapper); - if (unlockStatuses == null || unlockStatuses.isEmpty()) { - return null; - } - - if (viewerDeptId != null) { + if (unlockStatuses != null && !unlockStatuses.isEmpty() && viewerDeptId != null) { Long matchedDeptId = null; int bestDistance = Integer.MAX_VALUE; for (com.designhub.entity.TaskUnlockStatus unlockStatus : unlockStatuses) { @@ -350,7 +346,7 @@ public class TaskItemService { return allowedDeptIds.get(0); } - return unlockStatuses.get(0).getDeptId(); + return unlockStatuses == null || unlockStatuses.isEmpty() ? null : unlockStatuses.get(0).getDeptId(); } private List resolveAllowedQueueDeptIds(TaskItem item) {