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 c4ba94f6..4963750d 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 @@ -1747,14 +1747,9 @@ public class QmsIssueTicketControllerService { .anyMatch(p -> currentUserId.equals(p.getLeaderUserId())); if (isLeader) { - // 领导:isReview=true + // 领导:仅有审核权限,无编辑权限 vo.setIsReview(true); - // isEdit:领导未审批(leaderApprovalResult为null)且处理人已提交(approvalStatus不为null)时有编辑权限 - // 处理人再次提交后(leaderApprovalResult被重置为null),领导重新获得编辑权限 - boolean leaderCanEdit = allProcesses.stream() - .filter(p -> currentUserId.equals(p.getLeaderUserId())) - .anyMatch(p -> p.getLeaderApprovalResult() == null && p.getApprovalStatus() != null); - vo.setIsEdit(leaderCanEdit); + vo.setIsEdit(false); } else { // 处理人/审批人 boolean hasUnapproved = allProcesses.stream() @@ -2089,22 +2084,18 @@ public class QmsIssueTicketControllerService { .anyMatch(p -> currentUserId.equals(p.getHandlerUserId())); vo.setIsEdit(isHandler); + // isReview:领导始终有审核权限 + vo.setIsReview(isLeader); + + // isDispatch Short status = ticket.getStatus(); if (currentUserId.equals(ticket.getCreateUserId())) { - // 创建人:isReview=false,isDispatch仅在待流转状态 - vo.setIsReview(false); + // 创建人:isDispatch仅在待流转状态 vo.setIsDispatch(status != null && status == 0); } else if (currentUserId.equals(ticket.getApprovalUserId())) { - // 工单表审批人:isReview=false,isDispatch在处理中到已完成之间 - vo.setIsReview(false); + // 工单表审批人:isDispatch在处理中状态 vo.setIsDispatch(status != null && status == 1); - } else if (isLeader) { - // 上级领导:isReview=true,isDispatch=false - vo.setIsReview(true); - vo.setIsDispatch(false); } else { - // 处理人/审批人(工单处理表):全false - vo.setIsReview(false); vo.setIsDispatch(false); }