From ac909029d6df3cf499e9332b7dd1c735b3d25728 Mon Sep 17 00:00:00 2001 From: pjb <123456> Date: 星期一, 07 七月 2025 10:44:49 +0800 Subject: [PATCH] 平库组托失败 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java | 106 +++++++++++++++++++++++++++++++++++----------------- 1 files changed, 71 insertions(+), 35 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java index 4d47603..e4004df 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java @@ -92,6 +92,11 @@ @Override @Transactional(rollbackFor = Exception.class) public boolean batchMergeOrders(BatchMergeOrdersParam ordersParam) { + Loc locServiceOne = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, ordersParam.getMergeNo()), false); + if (!Objects.isNull(locServiceOne)) { + throw new CoolException("鎵樼洏宸插叆搴擄紝涓嶈兘鍐嶇粍鎵橈紒锛�"); + } + Order order = orderService.getOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderNo, ordersParam.getOrderNo())); if (Objects.isNull(order)) { throw new CoolException("璁㈠崟涓嶅瓨鍦紒锛�"); @@ -106,7 +111,9 @@ .setMatnr(orderdetl.getMatnr()) .setDetlId(orderdetl.getDetlId()) .setIoStatus(0) - .setOrderNo(orderdetl.getOrderNo()).setOrderId(orderdetl.getOrderId()).setStatus(1); + .setOrderNo(orderdetl.getOrderNo()) + .setOrderId(orderdetl.getOrderId()) + .setStatus(1); waitPakins.add(waitPakin); }); @@ -115,8 +122,9 @@ waitPakinService.comb(pakin); }); + // UTC鍏ュ簱鍗曟嵁(闈炲钩搴撳叆搴撳崟鎹�) - if (order.getOrderType() != OrderType.PK_IN_ORDER.id) { + if (!ordersParam.getInType().equals(OrderType.PK_IN_ORDER.id)) { /*** 椤圭洰涓嬪彂娴佺▼ * 1. PDA缁勬嫋閫氱煡妗�* 2. 鐢熸垚浠诲姟妗�* 3. 閫氳繃瀹氭椂浠诲姟涓嬪彂鑷矱SS** */ //鐢熸垚浠诲姟妗� GeneratePakInParam generatePakInParam = new GeneratePakInParam(); @@ -202,56 +210,59 @@ WaitPakinLog pakinLog = new WaitPakinLog(); BeanUtils.copyProperties(waitPakin, pakinLog); pakinLog.setIoStatus(1); + pakinLog.setId(null); if (!waitPakinLogService.saveOrUpdate(pakinLog)) { throw new CoolException("缁勬嫋鍘嗗彶妗f洿鏂板け璐�"); } }); - if (!waitPakinService.removeBatchByIds(waitPakins)) { - throw new CoolException("缁勬嫋妗e垹闄ゅけ璐ワ紒锛�"); - } + //閫氳繃缁勬嫋璁㈠崟ID鑾峰彇璁㈠崟锛屽苟鍒犻櫎鍘熷崟鎹紝鍔犲叆鍗曟嵁鍘嗗彶妗� Set<Long> list = waitPakins.stream().map(WaitPakin::getOrderId).collect(Collectors.toSet()); List<Order> orders = orderService.list(new LambdaQueryWrapper<Order>().in(Order::getId, list)); //璁㈠崟鍏ュ巻鍙叉。 orders.forEach(order -> { - if (order.getOrderType() != OrderType.PK_IN_ORDER.id) { - throw new CoolException("褰撳墠璁㈠崟绫诲瀷:" + order.getOrderType() + ",涓嶅彲鍋氬钩搴撲笂鏋舵搷浣滐紒锛�"); - } +// if (order.getOrderType() != OrderType.PK_IN_ORDER.id) { +// throw new CoolException("褰撳墠璁㈠崟绫诲瀷:" + order.getOrderType() + ",涓嶅彲鍋氬钩搴撲笂鏋舵搷浣滐紒锛�"); +// } //淇敼璁㈠崟鐘舵�佷负宸插畬鎴� order.setOrderSettle(OrderSettleType.COMPLETE.val()); OrderLog orderLog = new OrderLog(); BeanUtils.copyProperties(order, orderLog); + orderLog.setId(null); if (!orderLogService.save(orderLog)) { throw new CoolException("鍘嗗彶鍗曟嵁鏇存柊澶辫触锛侊紒"); } }); - //鍒犻櫎璁㈠崟鏁版嵁 - if (!orderService.removeBatchByIds(orders)) { - throw new CoolException("璁㈠崟鍒犻櫎澶辫触锛侊紒"); +// //鍒犻櫎璁㈠崟鏁版嵁 +// if (!orderService.removeBatchByIds(orders)) { +// throw new CoolException("璁㈠崟鍒犻櫎澶辫触锛侊紒"); +// } + +// List<OrderDetl> detls = orderDetlMapper.selectList(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list)); +// List<OrderDetlLog> detlLogs = new ArrayList<>(); +// detls.forEach(delt ->{ +// OrderDetlLog detlLog = new OrderDetlLog(); +// BeanUtils.copyProperties(delt, detlLog); +// detlLog.setQty(delt.getWorkQty()); +// detlLog.setWorkQty(0.0); +// detlLog.setId(null); +// detlLogs.add(detlLog); +// }); + +// //璁㈠崟鏄庣粏杞巻鍙叉。 +// if (!orderDetlLogService.saveBatch(detlLogs)) { +// throw new CoolException("璁㈠崟鏄庣粏杞巻鍙插け璐ワ紒锛�"); +// } +// +// //鍒犻櫎璁㈠崟鏄庣粏鏁版嵁 +// if (!orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list))) { +// throw new CoolException("璁㈠崟鏄庣粏鍒犻櫎澶辫触锛侊紒"); +// } + if (!waitPakinService.removeBatchByIds(waitPakins)) { + throw new CoolException("缁勬嫋妗e垹闄ゅけ璐ワ紒锛�"); } - - List<OrderDetl> detls = orderDetlMapper.selectList(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list)); - List<OrderDetlLog> detlLogs = new ArrayList<>(); - detls.forEach(delt ->{ - OrderDetlLog detlLog = new OrderDetlLog(); - BeanUtils.copyProperties(delt, detlLog); - detlLog.setQty(delt.getWorkQty()); - detlLog.setWorkQty(0.0); - detlLogs.add(detlLog); - }); - - //璁㈠崟鏄庣粏杞巻鍙叉。 - if (!orderDetlLogService.saveBatch(detlLogs)) { - throw new CoolException("璁㈠崟鏄庣粏杞巻鍙插け璐ワ紒锛�"); - } - - //鍒犻櫎璁㈠崟鏄庣粏鏁版嵁 - if (!orderDetlService.remove(new LambdaQueryWrapper<OrderDetl>().in(OrderDetl::getOrderId, list))) { - throw new CoolException("璁㈠崟鏄庣粏鍒犻櫎澶辫触锛侊紒"); - } - return true; } @@ -391,7 +402,10 @@ if (Objects.isNull(order)) { throw new CoolException("缁戝畾璁㈠崟涓嶅瓨鍦紒锛�"); } - siteNo.setOrderNo(order.getOrderNo()).setOrderId(order.getId()).setSiteStatus(CacheSiteStatusType.R.id).setBarcode(param.get("barcode").toString()); + siteNo.setOrderNo(order.getOrderNo()) + .setOrderId(order.getId()) + .setSiteStatus(CacheSiteStatusType.R.id) + .setBarcode(param.get("barcode").toString()); if (cacheSiteMapper.updateById(siteNo) < 1) { throw new CoolException("璁㈠崟鎾浣嶇粦瀹氬け璐ワ紒锛�" ); } @@ -407,7 +421,7 @@ if (StringUtil.isNullOrEmpty(siteNo.getOrderNo())) { throw new CoolException("褰撳墠鎾绔欑偣鏈粦瀹氳鍗曪紒锛�"); } - siteNo.setOrderId(null).setOrderNo(null).setSiteNo("0"); + siteNo.setOrderId(null).setOrderNo(null).setBarcode(null).setSiteNo("0"); if (cacheSiteMapper.updateById(siteNo) < 1) { throw new CoolException("璁㈠崟涓庢挱绉嶄綅瑙g粦澶辫触锛侊紒" ); } @@ -482,7 +496,7 @@ throw new CoolException("璁㈠崟鏄庣粏涓嶅瓨鍦紒锛�"); } } else { //閮ㄥ垎鎷h揣 - byId.setQty(order.getWorkQty() + byId.getQty()); + byId.setQty(Math.round((order.getWorkQty() + byId.getQty()) * 1000) / 1000.0); byId.setWorkQty(0.0); if (!orderDetlService.updateById(byId)) { throw new CoolException("閮ㄥ垎鎷f枡鏄庣粏鏇存柊澶辫触锛侊紒"); @@ -551,4 +565,26 @@ return R.ok("鍙戣揣瀹屾垚锛侊紒"); } + /** + * @author Ryan + * @date 2025/6/28 + * @description: 鑾峰彇骞冲簱鎺ㄨ崘搴撲綅 + * @version 1.0 + */ + @Override + public R getRecommendLocs() { + return locService.getRecommengLocs(); + } + + /** + * @author Ryan + * @date 2025/6/28 + * @description: 鏌ヨ鐗╂枡淇℃伅 + * @version 1.0 + */ + @Override + public R getMatsByCode(String matnr) { + return R.ok().add(matService.list(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matnr))); + } + } -- Gitblit v1.9.1