From a15ad9309f383153d4f5a95a044fb19e882fff55 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期五, 18 七月 2025 15:19:52 +0800 Subject: [PATCH] 平库组库功能优化 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java index 72ca1a7..d727f71 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java @@ -36,7 +36,7 @@ @Override @Transactional(rollbackFor = Exception.class) - public boolean comb(WaitPakin waitPakin) { + public boolean comb(WaitPakin waitPakin, Long inType) { //缁勬墭瑙勫垯鏍¢獙 waitPakinRuleService.rule(waitPakin); @@ -59,11 +59,17 @@ throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦�"); } - //鍙敤鏁伴噺 + if (inType.equals(OrderType.PK_IN_ORDER.id)) { + Double sCount = Math.round((orderDetl.getAnfme() - orderDetl.getWaitQty()) * 1000) / 1000.0; + if (waitPakin.getAnfme().compareTo(sCount) > 0) { + throw new CoolException("缁勬墭鏁伴噺瓒呰繃鍓╀綑鍙敤鏁伴噺"); + } + } else { // Double count = orderDetl.getAnfme() - orderDetl.getQty() - orderDetl.getWorkQty() - orderDetl.getWaitQty(); - Double count = Math.round((orderDetl.getAnfme() - orderDetl.getWorkQty() - orderDetl.getQty()) * 1000) / 1000.0; - if (waitPakin.getAnfme().compareTo(count) > 0) { - throw new CoolException("缁勬墭鏁伴噺瓒呰繃鍓╀綑鍙敤鏁伴噺"); + Double count = Math.round((orderDetl.getAnfme() - orderDetl.getWorkQty() - orderDetl.getQty()) * 1000) / 1000.0; + if (waitPakin.getAnfme().compareTo(count) > 0) { + throw new CoolException("缁勬墭鏁伴噺瓒呰繃鍓╀綑鍙敤鏁伴噺"); + } } //鏌ヨ鏄惁瀛樺湪鐩稿悓鏄庣粏鍜屾墭鐩樼爜鐨勭粍鎵橀�氱煡妗� @@ -78,8 +84,9 @@ throw new CoolException("娣诲姞澶辫触"); } }else { + Double total = waitPakin1.getAnfme() + waitPakin.getAnfme(); //瀛樺湪缁勬墭閫氱煡妗o紝鏇存柊 - waitPakin1.setAnfme(waitPakin1.getAnfme() + waitPakin.getAnfme()); + waitPakin1.setAnfme(total); waitPakin1.setUpdateTime(new Date()); if (!this.updateById(waitPakin1)) { throw new CoolException("娣诲姞澶辫触"); @@ -93,7 +100,7 @@ } //濡傛灉鏄钩搴撳叆搴撳崟锛屼慨鏀硅鍗曟槑缁嗘墽琛屾暟閲� - if (order.getOrderType() == OrderType.PK_IN_ORDER.id) { + if (inType.equals(OrderType.PK_IN_ORDER.id)) { orderDetl.setWorkQty(waitPakin.getAnfme()); orderDetlService.updateById(orderDetl); } -- Gitblit v1.9.1