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 c5fe4188..d477ef82 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 @@ -380,22 +380,6 @@ public class QmsIssueTicketControllerService { .setUpdateTime(now); issueTicketService.save(entity); - - // 按处理人分组,异步新增工单处理记录并推送待办 - Map> handlerToResultsMap = request.getHandlers().stream() - .collect(Collectors.groupingBy( - QmsIssueTicketPdiAddQO.HandlerItem::getHandlerUserId, - Collectors.mapping(QmsIssueTicketPdiAddQO.HandlerItem::getTaskResultId, Collectors.toList()) - )); - - for (Map.Entry> entry : handlerToResultsMap.entrySet()) { - issueTicketProcessControllerService.addAsync( - entity.getId(), - entry.getKey(), - entry.getValue(), - ticketNo - ); - } } /** 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 175c151a..6e7e758a 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 @@ -214,22 +214,27 @@ public class QmsPdiInspectionResultsControllerService { throw new NflgException(STATE.BusinessError, "还有" + unfilledImages + "项装车前检测未上传图片,无法提交"); } - // 4. 将整体判定结果存入 task_record - boolean overallResult = request.getOverallResult() != null && request.getOverallResult(); - taskRecordService.lambdaUpdate() - .eq(QmsPdiTaskRecord::getId, taskRecord.getId()) - .set(QmsPdiTaskRecord::getInspectionInspection, overallResult) - .update(); - - // 5. 查询不合格检测项(type=0/1/3) + // 4. 查询不合格检测项(type=0/1/3,装车前不计入) List failedItems = inspectionResultsService.lambdaQuery() .eq(QmsPdiInspectionResults::getTaskId, request.getTaskId()) .ne(QmsPdiInspectionResults::getInspectionItemType, 2) .eq(QmsPdiInspectionResults::getInspectionItemResults, false) .list(); - // 6. 根据整体判定+检测项结果设置状态:有不合格则=3(待流转),全合格则=2(已完成) - boolean hasDefect = !overallResult || !failedItems.isEmpty(); + // 5. 校验:如果所有检测项都合格,总体判定不能为不合格 + boolean hasDefect = !failedItems.isEmpty(); + if (!hasDefect && !request.getOverallResult()) { + throw new NflgException(STATE.BusinessError, "所有检测项均为合格,总体判定不能为不合格"); + } + + // 6. 将整体判定结果存入 task_record + boolean overallResult = request.getOverallResult() != null && request.getOverallResult(); + taskRecordService.lambdaUpdate() + .eq(QmsPdiTaskRecord::getId, taskRecord.getId()) + .set(QmsPdiTaskRecord::getInspectionInspection, overallResult) + .update(); + + // 7. 根据总体判定+检测项结果设置状态:有不合格则=3(待流转),全合格则=2(已完成) // 校验 overdue 字段:无值时根据完成时间与要求完成时间比较设置,有值则保持原值 Boolean overdueValue = taskRecord.getOverdue(); @@ -245,7 +250,7 @@ public class QmsPdiInspectionResultsControllerService { .set(QmsPdiTaskRecord::getInspectionEnable, hasDefect ? 3 : 2) .update(); - // 7. 返回不合格项(转换为VO,图片改为List格式) + // 8. 返回不合格项(转换为VO,图片改为List格式) return buildInspectionResultVOList(failedItems); }