From 17080b28dc3fb0df12a5a4da76e10dd9203e5725 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期三, 08 十月 2025 11:07:48 +0800 Subject: [PATCH] 订单功能完善 --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 62 ++++++++++++++++--------------- 1 files changed, 32 insertions(+), 30 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index e4c1241..71e8bfb 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -29,10 +29,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Date; -import java.util.Iterator; -import java.util.List; +import java.util.*; /** * 绉诲姩绔湇鍔℃牳蹇冪被 @@ -223,23 +220,24 @@ SaasUtils.insertLog(0, locNo, waitPakin.getMatnr(), waitPakin.getAnfme(), userId,waitPakin.getBatch()); //鏄惁灞炰簬璁㈠崟鏁版嵁 -// if (!Cools.isEmpty(waitPakin.getOrderNo())){ -// Order order = orderService.selectByNo(waitPakin.getOrderNo(), hostId); -// if (Cools.isEmpty(order)){ -// continue; -// } -// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch(),hostId); -// if (Cools.isEmpty(orderDetl)){ -// continue; -// } -// // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺 -// if (!orderDetlService.increase(order.getId(), hostId, waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getAnfme())) { -// throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); -// } -// // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴� -// orderService.checkComplete(waitPakin.getOrderNo(), hostId); -// -// } + //鏄惁灞炰簬璁㈠崟鏁版嵁 + if (!Cools.isEmpty(waitPakin.getOrderNo())){ + Order order = orderService.selectByNo(waitPakin.getOrderNo()); + if (Cools.isEmpty(order)){ + throw new CoolException("骞冲簱涓婃灦鏌ヨ璁㈠崟澶辫触"); + } + OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), waitPakin.getMatnr(), waitPakin.getBatch()); + if (Cools.isEmpty(orderDetl)){ + throw new CoolException("骞冲簱涓婃灦鏌ヨ璁㈠崟鏄庣粏澶辫触"); + } + // 淇敼璁㈠崟鏄庣粏瀹屾垚鏁伴噺 + if (!orderDetlService.increase(order.getId(),waitPakin.getMatnr(), waitPakin.getBatch(), waitPakin.getAnfme())) { + throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); + } + // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴� + orderService.checkComplete(waitPakin.getOrderNo()); + + } // 鏇存柊鍏ュ簱宸ヤ綔妗� waitPakin.setLocNo(locNo); @@ -294,7 +292,7 @@ Date now = new Date(); // 鏃犲崟缁勬墭 - if (Cools.isEmpty(param.getOrderNo())) { + if (Cools.isEmpty(param.getCombMats().get(0).getOrderNo())) { // 鐢熸垚鍏ュ簱閫氱煡妗� List<DetlDto> detlDtos = new ArrayList<>(); @@ -332,22 +330,22 @@ } // 鍏宠仈缁勬墭 } else { - Order order = orderService.selectByNo(param.getOrderNo()); - if (Cools.isEmpty(order) || order.getSettle() > 2) { - throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�"); - } + // 鐢熸垚鍏ュ簱閫氱煡妗� List<DetlDto> detlDtos = new ArrayList<>(); param.getCombMats().forEach(elem -> { - + Order order = orderService.selectByNo(elem.getOrderNo()); + if (order.getSettle() > 2) { + throw new CoolException("鍗曟嵁缂栧彿宸插畬鎴愶細" + elem.getOrderNo()); + } // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙 OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch()); if (elem.getAnfme() > orderDetl.getEnableQty()) { throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�"); } - // 淇敼璁㈠崟浣滀笟鏁伴噺 + // 淇敼璁㈠崟鏄庣粏鏁伴噺 if (!orderDetlService.increaseWorkQty(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) { - throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); + throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); } DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); @@ -356,6 +354,7 @@ assert one != null; one.setAnfme(one.getAnfme() + detlDto.getAnfme()); } else { + detlDto.setOrderNo(order.getOrderNo()); detlDtos.add(detlDto); } }); @@ -364,6 +363,9 @@ if (Cools.isEmpty(mat)) { throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�"); } + + Order order = orderService.selectByNo(detlDto.getOrderNo()); + WaitPakin waitPakin = new WaitPakin(); waitPakin.sync(mat); waitPakin.setOrderNo(order.getOrderNo()); // 鍗曟嵁缂栧彿 @@ -379,8 +381,8 @@ if (!waitPakinService.insert(waitPakin)) { throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); } + orderService.updateSettle(order.getId(), 2L, userId); } - orderService.updateSettle(order.getId(), 2L, userId); } } -- Gitblit v1.9.1