From a615aa3d449aaf60b08676a8f7c7fcb13aa96610 Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 23 Jan 2026 11:28:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=80=E7=BA=A7=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E9=83=A8=E9=97=A8=E4=BB=BB=E5=8A=A1=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=98=8E=E7=BB=86=E6=97=B6=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=9A=E5=85=81=E8=AE=B8=E5=B0=86?= =?UTF-8?q?=E9=9D=9E=E6=B5=81=E6=B0=B4=E7=BA=BF=E4=BB=BB=E5=8A=A1=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E4=B8=BA=E6=B5=81=E6=B0=B4=E7=BA=BF=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/designhub/service/TaskService.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/com/designhub/service/TaskService.java b/backend/src/main/java/com/designhub/service/TaskService.java index b85d6a3..52b17cc 100644 --- a/backend/src/main/java/com/designhub/service/TaskService.java +++ b/backend/src/main/java/com/designhub/service/TaskService.java @@ -1674,7 +1674,12 @@ public class TaskService { } // 验证任务是否是流水线任务 - if (existTask.getIsPipeline() == null || existTask.getIsPipeline() != 1) { + // 特殊情况:一级需求部门任务在待完善明细状态下,允许将非流水线任务转换为流水线任务 + boolean isPrimaryTaskPendingDetail = existTask.getIsPrimaryTask() != null + && existTask.getIsPrimaryTask() == 1 + && "pending_detail_completion".equals(existTask.getApprovalStatus()); + + if ((existTask.getIsPipeline() == null || existTask.getIsPipeline() != 1) && !isPrimaryTaskPendingDetail) { throw new BusinessException(ResultCode.PARAM_ERROR, "该任务不是流水线任务"); } @@ -1745,6 +1750,7 @@ public class TaskService { // 更新主任务信息 existTask.setTitle(dto.getTitle()); existTask.setPipelineMode(dto.getPipelineMode()); + existTask.setIsPipeline(1); // 确保设置为流水线任务 existTask.setScore(totalScoreDecimal); existTask.setEstimatedHours(BigDecimal.valueOf(totalHours)); existTask.setQuantity(totalQuantity);