From 3199b8731c213bfe9384474b944058f519ce0ba8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Sat, 13 Jun 2026 19:06:49 +0800 Subject: [PATCH] =?UTF-8?q?fix(order):=20=E4=BF=AE=E5=A4=8DCOA=E6=8A=A5?= =?UTF-8?q?=E5=91=8A=E9=AA=8C=E8=AF=81=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将coaReportPass方法改为coaReportFailed,调整验证条件 - 在QmsCoaReviewServiceImpl中修改COA报告检查逻辑 - 当供应商或物料不存在时,视为没有COA报告并放行 - 修复删除状态判断条件,确保正确检查未删除的报告 - 更新控制器中的COA报告验证调用方式 --- .../controller/NormalOrderController.java | 6 +-- .../nflg/wms/admin/service/QmsService.java | 44 +++++++++---------- .../service/impl/QmsCoaReviewServiceImpl.java | 22 ++++++++-- 3 files changed, 42 insertions(+), 30 deletions(-) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java index 3e8c3aea..aa36df17 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalOrderController.java @@ -226,7 +226,7 @@ public class NormalOrderController extends BaseController { // VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(orders)).throwMessage("没有需要打印的数据"); List qrCodeMasters = qrCodeMasterService.getByExtendIds(ids); qrCodeMasters.forEach(qrCodeMaster->{ - VUtil.trueThrowBusinessError(!qmsService.coaReportPass(qrCodeMaster.getSupplierCode(),qrCodeMaster.getMaterialCode(),qrCodeMaster.getPoNumber())) + VUtil.trueThrowBusinessError(qmsService.coaReportFailed(qrCodeMaster.getSupplierCode(), qrCodeMaster.getMaterialCode(), qrCodeMaster.getPoNumber())) .throwMessage("请先提交物料" + qrCodeMaster.getMaterialCode() + "(采购单" + qrCodeMaster.getPoNumber() + ")的COA报告并完成审核"); }); exportPdfPerPage(qrCodeMasters, response); @@ -251,7 +251,7 @@ public class NormalOrderController extends BaseController { // exportPdfInAll(convert(orders), response); List qrCodeMasters = qrCodeMasterService.getByExtendIds(ids); qrCodeMasters.forEach(qrCodeMaster->{ - VUtil.trueThrowBusinessError(!qmsService.coaReportPass(qrCodeMaster.getSupplierCode(),qrCodeMaster.getMaterialCode(),qrCodeMaster.getPoNumber())) + VUtil.trueThrowBusinessError(qmsService.coaReportFailed(qrCodeMaster.getSupplierCode(), qrCodeMaster.getMaterialCode(), qrCodeMaster.getPoNumber())) .throwMessage("请先提交物料" + qrCodeMaster.getMaterialCode() + "(采购单" + qrCodeMaster.getPoNumber() + ")的COA报告并完成审核"); }); exportPdfInAll(qrCodeMasters, response); @@ -404,7 +404,7 @@ public class NormalOrderController extends BaseController { // VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(orders)).throwMessage("没有需要打印的数据"); List qrCodeMasters = qrCodeMasterService.getByExtendIds(ids); qrCodeMasters.forEach(qrCodeMaster->{ - VUtil.trueThrowBusinessError(!qmsService.coaReportPass(qrCodeMaster.getSupplierCode(),qrCodeMaster.getMaterialCode(),qrCodeMaster.getPoNumber())) + VUtil.trueThrowBusinessError(qmsService.coaReportFailed(qrCodeMaster.getSupplierCode(), qrCodeMaster.getMaterialCode(), qrCodeMaster.getPoNumber())) .throwMessage("请先提交物料" + qrCodeMaster.getMaterialCode() + "(采购单" + qrCodeMaster.getPoNumber() + ")的COA报告并完成审核"); }); return exportItemImageZip(convertToPrintDTO(qrCodeMasters)); diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java index 0f452779..f68f90c0 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/service/QmsService.java @@ -129,29 +129,27 @@ public class QmsService { /** * 检查COA报告 */ - public boolean coaReportPass(String supplierCode, String materialNo, String purchaseNo) { - //TODO - return true; -// log.info("检测是否已提交COA报告,供应商:{},物料编号:{},采购单号:{}", supplierCode, materialNo, purchaseNo); -// -// HttpHeaders headers = new HttpHeaders(); -// headers.setContentType(MediaType.APPLICATION_JSON); -// HttpEntity requestEntity = new HttpEntity<>(new QmsCoaReportCheckQO(supplierCode, materialNo, purchaseNo), headers); -// -// ResponseEntity> response = restTemplate.exchange( -// qmsHost + checkReportUrl, -// HttpMethod.POST, -// requestEntity, -// new ParameterizedTypeReference>() { -// } -// ); -// -// log.info("检测是否已提交COA报告结果:{},{}", -// response.getStatusCode().value(), JSONUtil.toJsonStr(response.getBody())); -// VUtil.trueThrowBusinessError( -// Objects.isNull(response.getBody()) || response.getBody().getCode() != 200 -// ).throwMessage("检测是否已提交COA报告失败:" + response.getBody().getMessage()); -// return !Objects.equals(response.getBody().getResult(), false); + public boolean coaReportFailed(String supplierCode, String materialNo, String purchaseNo) { + log.info("检测是否已提交COA报告,供应商:{},物料编号:{},采购单号:{}", supplierCode, materialNo, purchaseNo); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + HttpEntity requestEntity = new HttpEntity<>(new QmsCoaReportCheckQO(supplierCode, materialNo, purchaseNo), headers); + + ResponseEntity> response = restTemplate.exchange( + qmsHost + checkReportUrl, + HttpMethod.POST, + requestEntity, + new ParameterizedTypeReference>() { + } + ); + + log.info("检测是否已提交COA报告结果:{},{}", + response.getStatusCode().value(), JSONUtil.toJsonStr(response.getBody())); + VUtil.trueThrowBusinessError( + Objects.isNull(response.getBody()) || response.getBody().getCode() != 200 + ).throwMessage("检测是否已提交COA报告失败:" + response.getBody().getMessage()); + return Objects.equals(response.getBody().getResult(), false); } public List getMaterialInspectionCycle() { diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java index c68a198e..c2583d87 100644 --- a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsCoaReviewServiceImpl.java @@ -600,7 +600,8 @@ public class QmsCoaReviewServiceImpl extends ServiceImpl