From 7cafe589d3658e3dbca19b301917ebbbb7b585a5 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 17:33:09 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E5=B7=A1=E6=A3=80=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=AF=A6=E6=83=85=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QmsIssueTicketControllerService.java | 59 ++++++++++++++----- ...TicketProcessMeasureControllerService.java | 2 +- 2 files changed, 44 insertions(+), 17 deletions(-) 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 c174a11a..def6d114 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 @@ -3148,10 +3148,37 @@ public class QmsIssueTicketControllerService { .filter(p -> p.getApprovalStatus() == null || p.getApprovalStatus() != 1) .collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(validProcesses)) { + Long currentUserId = UserUtil.getUserId(); + Short status = ticket.getStatus(); + boolean isCreator = currentUserId.equals(ticket.getCreateUserId()); + boolean isCompletedStatus = status != null && status == 2; + boolean isClosedStatus = status != null && status == 3; + boolean isVisibleLeader = validProcesses.stream() + .anyMatch(p -> isCurrentUserLeaderOfProcess(p, currentUserId)); + boolean isVisibleHandler = validProcesses.stream() + .anyMatch(p -> currentUserId.equals(p.getHandlerUserId()) || currentUserId.equals(p.getApprovalUserId())); + + List visibleProcesses; + if (isClosedStatus || (isCompletedStatus && isCreator)) { + visibleProcesses = validProcesses; + } else if (isVisibleLeader) { + visibleProcesses = validProcesses.stream() + .filter(p -> isCurrentUserLeaderOfProcess(p, currentUserId)) + .collect(Collectors.toList()); + } else if (isVisibleHandler) { + visibleProcesses = validProcesses.stream() + .filter(p -> currentUserId.equals(p.getHandlerUserId()) || currentUserId.equals(p.getApprovalUserId())) + .collect(Collectors.toList()); + } else if (isCreator) { + visibleProcesses = validProcesses; + } else { + visibleProcesses = List.of(); + } + + if (CollectionUtil.isNotEmpty(visibleProcesses)) { // 组装处理人列表(按部门合并) Map> handlersByDept = new LinkedHashMap<>(); - for (QmsIssueTicketProcess process : validProcesses) { + for (QmsIssueTicketProcess process : visibleProcesses) { if (StrUtil.isBlank(process.getHandlerUserName())) { continue; } @@ -3180,7 +3207,7 @@ public class QmsIssueTicketControllerService { // 组装领导列表(仅处理人已提交、领导已审批时才展示) Map> leadersByDept = new LinkedHashMap<>(); - for (QmsIssueTicketProcess process : validProcesses) { + for (QmsIssueTicketProcess process : visibleProcesses) { // 领导审批状态为 null 表示处理人尚未提交,不展示 if (process.getLeaderApprovalResult() == null || StrUtil.isBlank(process.getLeaderUserName())) { continue; @@ -3216,10 +3243,17 @@ public class QmsIssueTicketControllerService { } vo.setLeaders(leaders); - // 填充根本原因(取第一条处理记录) - QmsIssueTicketProcess firstProcess = validProcesses.get(0); - if (StrUtil.isNotBlank(firstProcess.getRootCause())) { - vo.setRootCause(firstProcess.getRootCause()); + // 填充当前用户可见的根本原因 + List rootCauseProcesses = visibleProcesses.stream() + .filter(p -> StrUtil.isNotBlank(p.getRootCause())) + .collect(Collectors.toList()); + if (rootCauseProcesses.size() == 1) { + vo.setRootCause(rootCauseProcesses.get(0).getRootCause()); + } else if (rootCauseProcesses.size() > 1) { + String rootCause = rootCauseProcesses.stream() + .map(QmsIssueTicketProcess::getRootCause) + .collect(Collectors.joining("\n")); + vo.setRootCause(rootCause); } // 查询纠正措施 @@ -3229,7 +3263,7 @@ public class QmsIssueTicketControllerService { List temporaryMeasures = new ArrayList<>(); List permanentMeasures = new ArrayList<>(); - for (QmsIssueTicketProcess p : validProcesses) { + for (QmsIssueTicketProcess p : visibleProcesses) { List measures = issueTicketProcessMeasureService.lambdaQuery() .eq(QmsIssueTicketProcessMeasure::getIssueTicketProcessId, p.getId()) .list(); @@ -3267,13 +3301,8 @@ public class QmsIssueTicketControllerService { } // === 权限判断:isReview / isDispatch / isEdit === - Long currentUserId = UserUtil.getUserId(); // 获取该工单全部处理记录(权限判断用全部记录,不过滤) - List allProcesses = issueTicketProcessService.lambdaQuery() - .eq(QmsIssueTicketProcess::getIssueTicketId, id) - .list(); - - Short status = ticket.getStatus(); + List allProcesses = processes; // 判断当前用户是否为负责人(工单表的 approvalUserId) boolean isResponsiblePerson = currentUserId.equals(ticket.getApprovalUserId()); @@ -3305,9 +3334,7 @@ public class QmsIssueTicketControllerService { } // 负责人权限:工单状态为处理中时有审批和分配权限,有了审批状态后失去审批权限 - boolean isCreator = currentUserId.equals(ticket.getCreateUserId()); boolean isProcessingStatus = status != null && (status == 0 || status == 1); - boolean isCompletedStatus = status != null && status == 2; boolean responsibleCanReview = isResponsiblePerson && status != null diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessMeasureControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessMeasureControllerService.java index a78fff4f..acdfdb60 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessMeasureControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsIssueTicketProcessMeasureControllerService.java @@ -162,7 +162,7 @@ public class QmsIssueTicketProcessMeasureControllerService { // 处理人处理:保存根本原因、审批状态和措施 issueTicketProcessService.lambdaUpdate() .eq(QmsIssueTicketProcess::getId, processId) - .set(request.getRootCause() != null, QmsIssueTicketProcess::getRootCause, mergedRootCause) + .set(request.getRootCause() != null, QmsIssueTicketProcess::getRootCause, request.getRootCause()) .set(request.getApprovalStatus() != null, QmsIssueTicketProcess::getApprovalStatus, request.getApprovalStatus()) .set(request.getApprovalOpinion() != null, QmsIssueTicketProcess::getApprovalOpinion, request.getApprovalOpinion()) .set(QmsIssueTicketProcess::getApprovalUserId, currentUserId) From 94f9008e75a3f20269f659325d74e1551826d4fb Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 18:57:00 +0800 Subject: [PATCH 2/8] =?UTF-8?q?pdi=E6=9F=A5=E8=AF=A2=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../qms/admin/service/QmsPdiTaskRecordControllerService.java | 1 + .../nflg/wms/common/pojo/vo/QmsPdiTaskRecordDetailVO.java | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiTaskRecordControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiTaskRecordControllerService.java index 31c6b7c5..551fd4cb 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiTaskRecordControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiTaskRecordControllerService.java @@ -517,6 +517,7 @@ public class QmsPdiTaskRecordControllerService { vo.setOrderNo(record.getOrderNo()); vo.setDeviceNo(record.getDeviceNo()); vo.setFactoryNo(record.getFactoryNo()); + vo.setInspectionEnable(record.getInspectionEnable()); vo.setInspectionInspection(record.getInspectionInspection()); vo.setDetectionCompletionTime(record.getDetectionCompletionTime()); vo.setInspectionRuleId(record.getDetectionRulesId()); diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsPdiTaskRecordDetailVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsPdiTaskRecordDetailVO.java index 21f1e3d7..cb4480f7 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsPdiTaskRecordDetailVO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsPdiTaskRecordDetailVO.java @@ -158,6 +158,11 @@ public class QmsPdiTaskRecordDetailVO { */ private Integer inspectionType; + /** + * 质检状态:0为待检查,1为检验中,2为已完成,3为待流转 + */ + private Integer inspectionEnable; + /** * 检测结果:true=合格,false=不合格 */ From a21b9245f53f6d81b935266813de7b8a4cca5de6 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 19:53:34 +0800 Subject: [PATCH 3/8] =?UTF-8?q?pdi=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/QmsPdiInspectionResultsControllerService.java | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java index 59eec245..abaa7cb5 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java @@ -229,11 +229,8 @@ public class QmsPdiInspectionResultsControllerService { .eq(QmsPdiInspectionResults::getInspectionItemResults, false) .list(); - // 5. 校验:如果所有检测项都合格,总体判定不能为不合格 + // 5. 装车前整体检测结果不参与普通检测项判定 boolean hasDefect = !failedItems.isEmpty(); - if (!hasDefect && !request.getOverallResult()) { - throw new NflgException(STATE.BusinessError, "所有检测项均为合格,总体判定不能为不合格"); - } // 6. 将整体判定结果存入 task_record boolean overallResult = request.getOverallResult() != null && request.getOverallResult(); From 1125b4d9b75c864c2d542d04e4786425e3322460 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 20:03:12 +0800 Subject: [PATCH 4/8] =?UTF-8?q?pdi=E6=8F=90=E4=BA=A4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QmsPdiInspectionResultsControllerService.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java index abaa7cb5..f5ae6a72 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java @@ -202,10 +202,18 @@ public class QmsPdiInspectionResultsControllerService { .update(); }); - // 2. 检查 type=0/1/3 是否都有结果 + List deliveryItemIds = deliveryItemService.lambdaQuery() + .eq(QmsPdiDetectionRulesDeliveryItem::getDetectionRulesId, taskRecord.getDetectionRulesId()) + .list() + .stream() + .map(QmsPdiDetectionRulesDeliveryItem::getId) + .collect(Collectors.toList()); + + // 2. 检查 type=0/1/3 是否都有结果,装车前检查项不参与检测项结果校验 long unfilledResults = inspectionResultsService.lambdaQuery() .eq(QmsPdiInspectionResults::getTaskId, request.getTaskId()) - .ne(QmsPdiInspectionResults::getInspectionItemType, 2) + .in(QmsPdiInspectionResults::getInspectionItemType, Arrays.asList(0, 1, 3)) + .notIn(!deliveryItemIds.isEmpty(), QmsPdiInspectionResults::getInspectionItemId, deliveryItemIds) .isNull(QmsPdiInspectionResults::getInspectionItemResults) .count(); if (unfilledResults > 0) { @@ -225,7 +233,8 @@ public class QmsPdiInspectionResultsControllerService { // 4. 查询不合格检测项(type=0/1/3,装车前不计入) List failedItems = inspectionResultsService.lambdaQuery() .eq(QmsPdiInspectionResults::getTaskId, request.getTaskId()) - .ne(QmsPdiInspectionResults::getInspectionItemType, 2) + .in(QmsPdiInspectionResults::getInspectionItemType, Arrays.asList(0, 1, 3)) + .notIn(!deliveryItemIds.isEmpty(), QmsPdiInspectionResults::getInspectionItemId, deliveryItemIds) .eq(QmsPdiInspectionResults::getInspectionItemResults, false) .list(); From cfbb1f3e33d8526a14f5d50eef66c86480d8c23a Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 20:56:58 +0800 Subject: [PATCH 5/8] =?UTF-8?q?pdi=E6=8F=90=E5=9B=9E=E8=B0=83=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/QmsIssueTicketControllerService.java | 3 ++- .../QmsPdiInspectionResultsControllerService.java | 11 ++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) 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 def6d114..9d4733de 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 @@ -3405,7 +3405,8 @@ public class QmsIssueTicketControllerService { if (ticket.getSourceType() != null && ticket.getSourceType() == 1 && ticket.getSourceId() != null) { QmsPdiTaskRecord originalTask = createPdiRepairTask(ticket.getSourceId(), now); if (originalTask != null) { - callbackPdiInspectionTask(originalTask, true); + // 业务确认暂时关闭PDI回调WMS +// callbackPdiInspectionTask(originalTask, true); } } diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java index f5ae6a72..bf11d816 100644 --- a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/service/QmsPdiInspectionResultsControllerService.java @@ -202,12 +202,16 @@ public class QmsPdiInspectionResultsControllerService { .update(); }); - List deliveryItemIds = deliveryItemService.lambdaQuery() + Set deliveryItemIds = deliveryItemService.lambdaQuery() .eq(QmsPdiDetectionRulesDeliveryItem::getDetectionRulesId, taskRecord.getDetectionRulesId()) .list() .stream() .map(QmsPdiDetectionRulesDeliveryItem::getId) - .collect(Collectors.toList()); + .collect(Collectors.toSet()); + request.getLoadingItems().stream() + .map(item -> item.getId()) + .filter(Objects::nonNull) + .forEach(deliveryItemIds::add); // 2. 检查 type=0/1/3 是否都有结果,装车前检查项不参与检测项结果校验 long unfilledResults = inspectionResultsService.lambdaQuery() @@ -268,7 +272,8 @@ public class QmsPdiInspectionResultsControllerService { .setDetectionCompletionTime(now) .setOverdue(overdueValue) .setInspectionEnable(hasDefect ? 3 : 2); - wmsPdiInspectionTaskCallbackService.callBack(taskRecord, overallResult); + // 业务确认暂时关闭PDI回调WMS +// wmsPdiInspectionTaskCallbackService.callBack(taskRecord, overallResult); // 8. 返回不合格项(转换为VO,图片改为List格式) return buildInspectionResultVOList(failedItems); From 925032226654a7db747ded16a516afc70dc681b6 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 21:14:10 +0800 Subject: [PATCH 6/8] =?UTF-8?q?pdi=E6=9F=A5=E8=AF=A2=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/service/QmsIssueTicketControllerService.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) 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 - 工单基本信息 From 3b3f37703b239c58c55a65844d70569b31353c95 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 21:30:19 +0800 Subject: [PATCH 7/8] =?UTF-8?q?pdi=E5=B7=A5=E5=8D=95=E5=85=B3=E9=97=AD?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QmsIssueTicketControllerService.java | 18 ------------------ 1 file changed, 18 deletions(-) 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 f2b28cf9..4c5dda25 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 @@ -70,9 +70,6 @@ public class QmsIssueTicketControllerService { @Resource private IQmsPdiInspectionResultsService pdiInspectionResultsService; - @Resource - private IQmsPdiInspectionResultsLoadingImageService pdiInspectionResultsLoadingImageService; - @Resource private IQmsPdiDetectionRulesStatusItemService pdiStatusItemService; @@ -3564,21 +3561,6 @@ public class QmsIssueTicketControllerService { pdiInspectionResultsService.saveBatch(newResults); } - // 4. 复制装车前图片 - List oldImages = pdiInspectionResultsLoadingImageService.lambdaQuery() - .eq(QmsPdiInspectionResultsLoadingImage::getTaskId, originalTaskId) - .list(); - - if (!oldImages.isEmpty()) { - List newImages = new ArrayList<>(); - for (QmsPdiInspectionResultsLoadingImage old : oldImages) { - QmsPdiInspectionResultsLoadingImage newImage = new QmsPdiInspectionResultsLoadingImage() - .setTaskId(newTask.getId()) - .setLoadingImage(old.getLoadingImage()); - newImages.add(newImage); - } - pdiInspectionResultsLoadingImageService.saveBatch(newImages); - } return originalTask; } } From 583851e10ed953a48453fd7758212b024bb8ff6a Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Mon, 15 Jun 2026 21:34:47 +0800 Subject: [PATCH 8/8] =?UTF-8?q?pdi=E5=B7=A5=E5=8D=95=E5=BE=85=E5=8A=9E/?= =?UTF-8?q?=E5=B7=B2=E5=8A=9E=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QmsIssueTicketControllerService.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) 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 4c5dda25..a160612b 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 @@ -3396,11 +3396,15 @@ public class QmsIssueTicketControllerService { .set(QmsIssueTicket::getUpdateTime, now) .update(); - issueTicketToDoService.lambdaUpdate() - .eq(QmsIssueTicketToDo::getTicketId, ticket.getId()) - .eq(QmsIssueTicketToDo::getHasProcessed, false) - .set(QmsIssueTicketToDo::getHasProcessed, true) - .update(); + if (Objects.equals(ticket.getSourceType(), (short) 1)) { + issueTicketToDoService.processed(ticket.getId()); + } else { + issueTicketToDoService.lambdaUpdate() + .eq(QmsIssueTicketToDo::getTicketId, ticket.getId()) + .eq(QmsIssueTicketToDo::getHasProcessed, false) + .set(QmsIssueTicketToDo::getHasProcessed, true) + .update(); + } // PDI工单关闭时:创建新任务单,复制内容,不合格项改为合格 if (ticket.getSourceType() != null && ticket.getSourceType() == 1 && ticket.getSourceId() != null) { @@ -3448,6 +3452,10 @@ public class QmsIssueTicketControllerService { .set(QmsIssueTicket::getUpdateTime, now) .update(); + if (Objects.equals(ticket.getSourceType(), (short) 1)) { + issueTicketToDoService.processed(ticket.getId()); + } + // 推送待办给被驳回的处理人 for (Long userId : rejectUserIds) { QmsIssueTicketToDo todoItem = new QmsIssueTicketToDo()