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();