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 9d4733de..f2b28cf9 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 @@ -2056,11 +2056,15 @@ public class QmsIssueTicketControllerService { .eq(QmsIssueTicketProcess::getIssueTicketId, id) .list(); } else { - // 非创建者:仅返回自己作为处理人的记录 - processes = issueTicketProcessService.lambdaQuery() + // 非创建者:返回自己作为处理人/审批人/直属领导相关的处理记录 + List allProcesses = issueTicketProcessService.lambdaQuery() .eq(QmsIssueTicketProcess::getIssueTicketId, id) - .eq(QmsIssueTicketProcess::getHandlerUserId, currentUserId) .list(); + processes = allProcesses.stream() + .filter(p -> currentUserId.equals(p.getHandlerUserId()) + || currentUserId.equals(p.getApprovalUserId()) + || isCurrentUserLeaderOfProcess(p, currentUserId)) + .collect(Collectors.toList()); } // 构建返回VO - 工单基本信息