From 65e54b6d197856b889481098caecceaa04d26691 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期一, 28 四月 2025 11:09:01 +0800 Subject: [PATCH] 获取货物到达出库口大屏显示物料信息 --- src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 70 ++++++++++++++++++++++++++++++++-- 1 files changed, 65 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index eb6bf8a..dc18ea9 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -15,10 +15,7 @@ import com.zy.asrs.entity.result.StockVo; import com.zy.asrs.entity.result.ZphjcdgzVo; import com.zy.asrs.entity.result.ZphjcdwcVo; -import com.zy.asrs.mapper.LocDetlMapper; -import com.zy.asrs.mapper.MatMapper; -import com.zy.asrs.mapper.OrderMapper; -import com.zy.asrs.mapper.TagMapper; +import com.zy.asrs.mapper.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.MatUtils; import com.zy.common.constant.MesConstant; @@ -111,6 +108,9 @@ @Resource private OrderMapper orderMapper; + + @Resource + private BasCrnpMapper basCrnpMapper; @Override @Transactional @@ -1969,10 +1969,70 @@ @Override public R getUnfulfilledOrders() { // 鑾峰彇鏈畬鎴愯鍗曠粺璁′俊鎭� - List<OrderStatisticsDto> unfulfilledOrders = orderMapper.getUnfulfilledOrders(); + List<OrderStatisticsDto> unfulfilledOrders = orderMapper.getUnfulfilledOrders(""); return R.ok(unfulfilledOrders); } + @Override + public R getCrnLaneWayInfo() { + List<CrnLaneWayInfoDto> crnLaneWayInfo = basCrnpMapper.getCrnLaneWayInfo(); + return R.ok(crnLaneWayInfo); + } + + @Override + public R getOutLocInfoByBarcode(String barcode) { + + // 鏍规嵁鎵樼洏鐮佽幏鍙栦换鍔′富妗� + WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode)); + // 鏍规嵁浠诲姟涓绘。鑾峰彇宸ヤ綔妗f槑缁� + List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); + // 鎻愬彇鍖呰缁勫彿 + List<String> brandList = wrkDetls.stream().map(WrkDetl::getBrand).distinct().collect(Collectors.toList()); + OutLocInfoDto outLocInfoDto = new OutLocInfoDto(); + outLocInfoDto.setWrkNo(wrkMast.getWrkNo()); + List<OutLocInfoDto.Material> materialList = new ArrayList<>(); + for (String brand : brandList) { + // 涓�涓湪绠� + OutLocInfoDto.Material material = new OutLocInfoDto.Material(); + material.setPackageGroupNo(brand); // 鍖呰缁勫彿 + // 鎸夊寘瑁呯粍鍙疯繃婊� + List<WrkDetl> wrkDetls1 = wrkDetls.stream().filter(wrkDetl -> Objects.equals(wrkDetl.getBrand(), brand)).collect(Collectors.toList()); + // 鍗蜂俊鎭� + List<OutLocInfoDto.Material.MaterialDetail> materialDetailList = new ArrayList<>(); + for (WrkDetl wrkDetl : wrkDetls1) { + OutLocInfoDto.Material.MaterialDetail materialDetail = new OutLocInfoDto.Material.MaterialDetail(); + materialDetail.setRollNo(wrkDetl.getModel()); + materialDetail.setBoxNo(wrkDetl.getUnit()); + materialDetail.setSpecs(wrkDetl.getMatnr()); + material.setBoxPos(wrkDetl.getOrigin()); // 鎵樼洏涓婃湪绠变綅缃� + materialDetailList.add(materialDetail); + } + // 璁㈠崟淇℃伅 + WrkDetl wrkDetl = wrkDetls1.get(0); + if (wrkDetl != null && wrkDetl.getOrderNo() != null) { + Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no", wrkDetl.getOrderNo())); + if (order != null) { + material.setOrderNo(order.getOrderNo()); + material.setMemo(order.getMemo()); + material.setCustomerName(order.getCstmrName()); + List<OrderStatisticsDto> unfulfilledOrders = orderMapper.getUnfulfilledOrders(order.getOrderNo()); + if (unfulfilledOrders.size() == 1) { + OrderStatisticsDto orderStatisticsDto = unfulfilledOrders.get(0); + material.setSum(orderStatisticsDto.getSum()); + material.setToShipQuantity(orderStatisticsDto.getToShipQuantity()); + material.setWorkQuantity(orderStatisticsDto.getWorkQuantity()); + } + } + } + + material.setMaterialDetailList(materialDetailList); + materialList.add(material); + } + outLocInfoDto.setMaterialList(materialList); + + return R.ok(outLocInfoDto); + } + /** * 鍒涘缓妗佹灦鐞嗚揣鍑哄簱鐨勫伐浣滄。 */ -- Gitblit v1.9.1