From 047fda05a26ce9a9786ec5f1dca0f82a95d30bed Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期三, 28 六月 2023 09:56:24 +0800 Subject: [PATCH] #pda订单下架重量空优化、订单出库批量出库优化 --- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 50 +++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 41 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index c6c9dd4..67a1fc6 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -37,6 +37,8 @@ private OrderDetlService orderDetlService; @Autowired private OrderService orderService; + @Autowired + private ManPakOutService manPakOutService; public ReturnT<String> start(WrkMast wrkMast) { // 4.鍏ュ簱瀹屾垚 @@ -180,6 +182,19 @@ } } } catch (Exception ignore){} + + //鏇存柊鎷h揣鍗曞畬鎴愭暟閲� + EntityWrapper<ManPakOut> manPakOutEntityWrapper = new EntityWrapper<>(); + manPakOutEntityWrapper.eq("doc_num",wrkDetl.getOrderNo()); + manPakOutEntityWrapper.eq("matnr",wrkDetl.getMatnr()); + ManPakOut manPakOut = manPakOutService.selectOne(manPakOutEntityWrapper); + if (manPakOut.getCount() + wrkDetl.getAnfme() >= manPakOut.getAnfme()){ + manPakOut.setStatus(1); + } + manPakOut.setCount(manPakOut.getCount() + wrkDetl.getAnfme()); + if (!manPakOutService.update(manPakOut,manPakOutEntityWrapper)){ + return FAIL.setMsg("鏇存柊鎷h揣鍗曞畬鎴愭暟閲忓け璐�"); + } } // 淇敼搴撲綅鐘舵�� Q ====>> F @@ -367,20 +382,37 @@ return FAIL.setMsg("鍏ㄦ澘鍑哄簱 ===>> 淇敼婧愬簱浣嶇姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]"); } } - EntityWrapper<OrderDetl> orderDetlEntityWrapper = new EntityWrapper<>(); - orderDetlEntityWrapper.eq("order_no",wrkDetls101.get(0).getOrderNo()); - orderDetlEntityWrapper.eq("matnr",wrkDetls101.get(0).getMatnr()); + if (!wrkDetls101.get(0).getOrderNo().isEmpty()){ + //鏇存柊璁㈠崟瀹屾垚鏁伴噺 + EntityWrapper<OrderDetl> orderDetlEntityWrapper = new EntityWrapper<>(); + orderDetlEntityWrapper.eq("order_no",wrkDetls101.get(0).getOrderNo()); + orderDetlEntityWrapper.eq("matnr",wrkDetls101.get(0).getMatnr()); - OrderDetl orderDetl = orderDetlService.selectOne(orderDetlEntityWrapper); + OrderDetl orderDetl = orderDetlService.selectOne(orderDetlEntityWrapper); - OrderDetl orderDetl1 = new OrderDetl(); - orderDetl1.setQty(orderDetl.getQty() + wrkDetls101.get(0).getAnfme()); - orderDetl1.setUpdateTime(now); - if (!orderDetlService.update(orderDetl1,orderDetlEntityWrapper)){ - return FAIL.setMsg("鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触"); + OrderDetl orderDetl1 = new OrderDetl(); + orderDetl1.setQty(orderDetl.getQty() + wrkDetls101.get(0).getAnfme()); + orderDetl1.setUpdateTime(now); + if (!orderDetlService.update(orderDetl1,orderDetlEntityWrapper)){ + return FAIL.setMsg("鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触"); + } + //鏇存柊鎷h揣鍗曞畬鎴愭暟閲� + EntityWrapper<ManPakOut> manPakOutEntityWrapper = new EntityWrapper<>(); + manPakOutEntityWrapper.eq("doc_num",wrkDetls101.get(0).getOrderNo()); + manPakOutEntityWrapper.eq("matnr",wrkDetls101.get(0).getMatnr()); + ManPakOut manPakOut = manPakOutService.selectOne(manPakOutEntityWrapper); + if (manPakOut.getCount() + wrkDetls101.get(0).getAnfme() >= manPakOut.getAnfme()){ + manPakOut.setStatus(1); + } + manPakOut.setCount(manPakOut.getCount() + wrkDetls101.get(0).getAnfme()); + + if (!manPakOutService.update(manPakOut,manPakOutEntityWrapper)){ + return FAIL.setMsg("鏇存柊鎷h揣鍗曞畬鎴愭暟閲忓け璐�"); + } } + Boolean finsihed = orderDetlService.checkAllDetlFinish(wrkDetls101.get(0).getOrderNo()); if (finsihed) { Boolean mastFinished = wrkMastService.checkFinishByOrder(wrkDetls101.get(0).getOrderNo()); -- Gitblit v1.9.1