From d88cb4481e6f0625bcd95f952b11526efbdd1322 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期三, 18 十二月 2024 08:32:14 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 79 ++++++++++++++++++++++++++------------- 1 files changed, 52 insertions(+), 27 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 9a0bc7f..8557c0f 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -14,6 +14,7 @@ import com.zy.asrs.mapper.ManLocDetlMapper; import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; +import com.zy.asrs.utils.OrderInAndOutUtil; import com.zy.common.CodeRes; import com.zy.common.constant.MesConstant; import com.zy.common.entity.Parameter; @@ -85,16 +86,27 @@ if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) { throw new CoolException(BaseRes.PARAM); } + if(param.getCombMats().size()>1){ + throw new CoolException("璇锋彁鍙栦竴涓晢鍝侊紝鎴栬�呭埛鏂伴噸鏂扮粍鎵橈紒"); + } // 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁 if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>(). eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) { throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱"); } + if(param.getBarcode().length()!=8){ + throw new CoolException("鏉$爜闀垮害涓嶆槸8浣�===>>" + param.getBarcode()); + } + if (param.getCombMats().size()>1){ + throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode()); + } + int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); - if (countLoc > 0 || countWrk > 0) { - throw new CoolException("宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); + int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode())); + if (countLoc > 0 || countWrk > 0 || countwait > 0) { + throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode()); } Date now = new Date(); @@ -138,8 +150,9 @@ } // 鍏宠仈缁勬墭 } else { - Order order = orderService.selectByNo(param.getOrderNo()); - if (order.getSettle() > 2) { +// Order order = orderService.selectByNo(param.getOrderNo()); + Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, param.getOrderNo()); + if (Cools.isEmpty(order) || order.getSettle() > 2) { throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�"); } // 鐢熸垚鍏ュ簱閫氱煡妗� @@ -147,15 +160,16 @@ param.getCombMats().forEach(elem -> { // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙 - OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch()); +// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch()); + OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, 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("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); - } - +// if (!orderDetlService.increaseWorkQty(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) { +// throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); +// } + OrderInAndOutUtil.increaseWorkQty(Boolean.TRUE,order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme()); DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); if (DetlDto.has(detlDtos, detlDto)) { DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch()); @@ -186,7 +200,8 @@ throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�"); } } - orderService.updateSettle(order.getId(), 2L, userId); +// orderService.updateSettle(order.getId(), 2L, userId); + OrderInAndOutUtil.updateOrder(Boolean.TRUE,order.getId(), 2L, userId); } } @@ -427,28 +442,32 @@ openParam.setOrderType("鎵撳寘鍏ュ簱鍗�"); openParam.setOrderDetails(detlDtos); openService.pakinOrderCreate(openParam); - Order order = orderService.selectByNo(orderNo); +// Order order = orderService.selectByNo(orderNo); + Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, param.getOrderNo()); + if (null == order) { throw new CoolException("鐢熸垚鍗曟嵁澶辫触"); } - if (!orderService.updateSettle(order.getId(), 2L, userId)) { - throw new CoolException("淇敼鍗曟嵁鐘舵�佸け璐�"); - } +// if (!orderService.updateSettle(order.getId(), 2L, userId)) { +// throw new CoolException("淇敼鍗曟嵁鐘舵�佸け璐�"); +// } + OrderInAndOutUtil.updateOrder(Boolean.TRUE, order.getId(), 2L, userId); // 鐢熸垚鍏ュ簱閫氱煡妗� for (DetlDto detlDto : detlDtos) { // 淇敼浣滀笟鏁伴噺 ---------------------------------------- // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙 - OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), detlDto.getMatnr(), detlDto.getBatch()); +// OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), detlDto.getMatnr(), detlDto.getBatch()); + OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), detlDto.getMatnr(), detlDto.getBatch()); if (detlDto.getAnfme() > orderDetl.getEnableQty()) { throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�"); } // 淇敼璁㈠崟浣滀笟鏁伴噺 - if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) { - throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); - } - +// if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) { +// throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触"); +// } + OrderInAndOutUtil.increaseWorkQty(Boolean.TRUE,order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme()); // 淇濆瓨鍏ュ簱閫氱煡妗� Mat mat = matService.selectByMatnr(detlDto.getMatnr()); if (Cools.isEmpty(mat)) { @@ -490,12 +509,15 @@ BasDevp sta = basDevpService.checkSiteStatus(staNo); //鏍规嵁璁㈠崟鍙风敓鎴愬嚭搴撲换鍔″伐浣滄。 - Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", orderNo)); + Order order = OrderInAndOutUtil.selectByNo(Boolean.FALSE, orderNo); +// Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", orderNo)); if (order.getSettle() != 1 && order.getSettle() != 2){ throw new CoolException("璇ヨ鍗曞凡澶勭悊"); } - List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); +// List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", orderNo)); + List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(Boolean.FALSE, order.getId()); + Date now = new Date(); for(OrderDetl orderDetl : orderDetls){ //鏌ヨ鎵�鏈夊簱浣嶇姸鎬佷负F鐨勫簱浣嶄俊鎭� @@ -530,9 +552,10 @@ order.setSettle(2L); order.setUpdateBy(userId); order.setUpdateTime(now); - if(!orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){ - throw new CoolException("鏇存柊璁㈠崟鐘舵�佸け璐�"); - } +// if(!orderService.update(order, new EntityWrapper<Order>().eq("order_no", orderNo))){ +// throw new CoolException("鏇存柊璁㈠崟鐘舵�佸け璐�"); +// } + OrderInAndOutUtil.updateOrder(order.getPakinPakoutStatus$(),order.getId(),2L,userId); orderDetl.setWorkQty(orderDetl.getWorkQty() + curOutQty); orderDetl.setUpdateBy(userId); orderDetl.setUpdateTime(now); @@ -541,9 +564,11 @@ if(!Cools.isEmpty(orderDetl.getBatch())){ wrapper.eq("batch", orderDetl.getBatch()); } - if(!orderDetlService.update(orderDetl, wrapper)){ - throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); - } +// if(!orderDetlService.update(orderDetl, wrapper)){ +// throw new CoolException("鏇存柊璁㈠崟鏄庣粏澶辫触"); +// } + OrderInAndOutUtil.updateOrderDetl(order.getPakinPakoutStatus$(),order,orderDetl); + } } -- Gitblit v1.9.1