From 268fbc322076c55f4c5ee02019a73dd3ac7c3131 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Tue, 18 Nov 2025 10:37:13 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=B8=80=E4=BA=9B=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ComponentOutboundController.java | 17 +++++++++-------- .../admin/controller/OutProduceController.java | 9 +++------ 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ComponentOutboundController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ComponentOutboundController.java index a4f25495..b555a9fa 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ComponentOutboundController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/ComponentOutboundController.java @@ -172,12 +172,12 @@ public class ComponentOutboundController extends BaseController { .eq(WmsComponentPackingItem::getPackingId, packing.getId()) .list(); VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(packingItems)).throwMessage("无法找到有效的装箱单详情"); - //判断是否存在了相同的交货单了 - WmsComponentOutbound outboundSelect = wmsComponentOutboundService.lambdaQuery() - .eq(WmsComponentOutbound::getVbelv, packing.getVbelv()) - .eq(WmsComponentOutbound::getIsReverse, false) - .one(); - VUtil.trueThrowBusinessError(Objects.nonNull(outboundSelect), () -> "交货单已出库,单号为【" + outboundSelect.getOutboundNo() + "】"); +// //判断是否存在了相同的交货单了 +// WmsComponentOutbound outboundSelect = wmsComponentOutboundService.lambdaQuery() +// .eq(WmsComponentOutbound::getVbelv, packing.getVbelv()) +// .eq(WmsComponentOutbound::getIsReverse, false) +// .one(); +// VUtil.trueThrowBusinessError(Objects.nonNull(outboundSelect), () -> "交货单已出库,单号为【" + outboundSelect.getOutboundNo() + "】"); //判断数量是否一致,且已经存在了相同的收货单了 // for (WmsComponentPackingItem item : packingItems) { // List items = request.getItems() @@ -240,7 +240,7 @@ public class ComponentOutboundController extends BaseController { ); }); VUtil.trueThrowBusinessError(outboundItem.getOutQty() - .compareTo(records.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) < 0) + .compareTo(records.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) != 0) .throwMessage("物料" + outboundItem.getIdnrk() + "的领取数量不等于装箱数量"); } else { VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(item.getScanCodes())) @@ -261,7 +261,8 @@ public class ComponentOutboundController extends BaseController { //判断扫码数量是否等于了出货数量 BigDecimal qty = scanCodesGroup.stream().map(ScanCodeQO::getCodeNum).reduce(BigDecimal.ZERO, BigDecimal::add); - VUtil.trueThrowBusinessError(outboundItem.getOutQty().equals(qty)).throwMessage("物料[" + outboundItem.getIdnrk() + "]的出库数量[" + qty + "]不等于装箱数量[" + outboundItem.getOutQty() + "]"); + VUtil.trueThrowBusinessError(outboundItem.getOutQty().compareTo(qty) != 0) + .throwMessage("物料[" + outboundItem.getIdnrk() + "]的出库数量[" + qty + "]不等于装箱数量[" + outboundItem.getOutQty() + "]"); buildZwm3a20DTO(zwm3a20DTO, scanCodesGroup, outboundItem); diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java index 0baaf971..d7218460 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/OutProduceController.java @@ -346,7 +346,6 @@ public class OutProduceController extends BaseController { ticketItems.add(ti); return ti; }); - BigDecimal num = Objects.equals(order.getType(), 0) ? item.getLockNum() : item.getSqsl().subtract(item.getNum()); if (qitem.isQiTao()) { VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(qitem.getBatchs())) .throwMessage("齐套物料需要提供批次信息"); @@ -377,8 +376,7 @@ public class OutProduceController extends BaseController { item.setNum(item.getNum().add(it.getNum())); pti.setNum(pti.getNum().add(it.getNum())); }); - VUtil.trueThrowBusinessError(num.subtract(records.stream().map(OutMaterialScanRecord::getNum).reduce(BigDecimal.ZERO, BigDecimal::add)) - .compareTo(BigDecimal.ZERO) < 0) + VUtil.trueThrowBusinessError(item.getNum().compareTo(item.getSqsl()) > 0) .throwMessage("物料" + item.getMatnr() + "的领取数量超出申请限制"); } else { VUtil.trueThrowBusinessError(CollectionUtil.isEmpty(qitem.getQrCodes())) @@ -392,7 +390,7 @@ public class OutProduceController extends BaseController { } item.setNum(item.getNum().add(qrCodeContent.getNum())); pti.setNum(pti.getNum().add(qrCodeContent.getNum())); - VUtil.trueThrowBusinessError(num.compareTo(pti.getNum()) < 0) + VUtil.trueThrowBusinessError(item.getNum().compareTo(item.getSqsl()) > 0) .throwMessage("物料" + materialNo + "的领取数量超出申请限制"); records.add(new OutMaterialScanRecord() .setSource(1) @@ -483,8 +481,7 @@ public class OutProduceController extends BaseController { * 搜索出库单 */ @PostMapping("searchTicket") - public ApiResult> searchTicket(@Valid @RequestBody OutProduceTicketSearchQO - request) { + public ApiResult> searchTicket(@Valid @RequestBody OutProduceTicketSearchQO request) { return ApiResult.success(outProduceTicketService.search(request)); }