From dc2cb78b261cb68c475c2c497638081f5387a3b8 Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 24 Jan 2026 11:29:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E5=AD=90=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E7=BB=84=E5=AE=A1=E6=A0=B8=E6=97=B6=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E8=AF=86=E5=88=AB=E9=A2=84=E5=85=88=E6=8C=87=E5=AE=9A=E7=9A=84?= =?UTF-8?q?=E6=8E=A5=E6=94=B6=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 问题:在明细完善阶段预先指定了设计师的子任务,审核通过后没有自动指派给该设计师, 而是变成 pending 状态等待抢单,导致设计师没有收到钉钉个人通知。 修复:在 approveTaskItemGroup 方法中,优先检查子任务是否已预先指定了接收人, 如果有且审核人没有重新指定其他人,则自动使用预先指定的接收人。 --- .../java/com/designhub/service/TaskItemService.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/com/designhub/service/TaskItemService.java b/backend/src/main/java/com/designhub/service/TaskItemService.java index 302fd48..7d4588a 100644 --- a/backend/src/main/java/com/designhub/service/TaskItemService.java +++ b/backend/src/main/java/com/designhub/service/TaskItemService.java @@ -932,7 +932,18 @@ public class TaskItemService { throw new BusinessException(ResultCode.PARAM_ERROR, "该组没有待审核的子任务"); } - // 4. 如果指定了接收人,验证接收人并直接分配 + // 4. 🔥 优先检查子任务是否已预先指定了接收人(在明细完善阶段指定的) + // 如果子任务已有接收人且审核人没有重新指定,则使用预先指定的接收人 + if (assignedReceiverId == null) { + // 检查第一个子任务是否已有预先指定的接收人 + TaskItem firstItem = groupItems.get(0); + if (firstItem.getReceiverId() != null) { + assignedReceiverId = firstItem.getReceiverId(); + log.info("子任务组已预先指定接收人: receiverId={}, 自动使用", assignedReceiverId); + } + } + + // 5. 如果指定了接收人(包括预先指定的),验证接收人并直接分配 if (assignedReceiverId != null) { com.designhub.entity.User receiver = userService.getUserById(assignedReceiverId); if (receiver == null) {