From 24f9701bdac5dff26582d8cf5d80d0b32ca85aec Mon Sep 17 00:00:00 2001 From: funny <834502597@qq.com> Date: Wed, 13 May 2026 14:38:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E8=AF=A6=E6=83=85=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/QmsIssueTicketControllerService.java | 12 ++++++++++++ .../QmsIssueTicketProcessControllerService.java | 9 +++++++++ 2 files changed, 21 insertions(+) diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketControllerService.java index 4963750d..eab11196 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketControllerService.java @@ -169,6 +169,11 @@ public class QmsIssueTicketControllerService { String currentUserName = UserUtil.getUserName(); LocalDateTime now = LocalDateTime.now(); + // 校验不能分配给自己 + if (request.getHandlerUserIds().contains(currentUserId)) { + throw new NflgException(STATE.BusinessError, "不能将工单分配给自己"); + } + // 1. 校验工单存在 QmsIssueTicket ticket = issueTicketService.getById(request.getId()); VUtil.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在"); @@ -869,6 +874,13 @@ public class QmsIssueTicketControllerService { String userName = UserUtil.getUserName(); LocalDateTime now = LocalDateTime.now(); + // 校验不能分配给自己 + boolean containsSelf = request.getHandlers().stream() + .anyMatch(h -> userId.equals(h.getHandlerUserId())); + if (containsSelf) { + throw new NflgException(STATE.BusinessError, "不能将工单分配给自己"); + } + // 查询任务记录 QmsPdiTaskRecord taskRecord = pdiTaskRecordService.getById(request.getTaskRecordId()); if (Objects.isNull(taskRecord)) { diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessControllerService.java index a887a7f8..35ddb80a 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessControllerService.java @@ -54,6 +54,15 @@ public class QmsIssueTicketProcessControllerService { * 新增工单处理(同步,供 Controller 直接调用) */ public void add(QmsIssueTicketProcessAddQO request) { + Long currentUserId = UserUtil.getUserId(); + + // 校验不能分配给自己 + boolean containsSelf = request.getHandlers().stream() + .anyMatch(h -> currentUserId.equals(h.getHandlerUserId())); + if (containsSelf) { + throw new NflgException(STATE.BusinessError, "不能将工单分配给自己"); + } + // 校验工单是否存在 QmsIssueTicket ticket = issueTicketService.getById(request.getIssueTicketId()); if (ticket == null) {