From 6e6d36fa070456acaeff4cb5cc38c621530ed9fd Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Tue, 31 Mar 2026 13:50:58 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=85=8D=E6=A3=80=E7=89=A9=E6=96=99?= =?UTF-8?q?=E7=A9=BA=E6=8C=87=E9=92=88=E9=94=99=E8=AF=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nflg/wms/admin/controller/NormalPGIController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java index 89577a86..0be6268a 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java @@ -514,7 +514,8 @@ public class NormalPGIController extends BaseController { //同步箱码信息到物料码中 List parents = qrCodeMasters .stream() - .filter(qrCode -> qrCode.getPackagingType() == 1) +// .filter(qrCode -> qrCode.getPackagingType() == 1) + .filter(qrCode -> qrCode.getPackagingType() != null && qrCode.getPackagingType() == 1) .toList(); List children = qrCodeMasterService.lambdaQuery() .in(WmsQrCodeMaster::getParentBarcodeId, parents @@ -523,6 +524,7 @@ public class NormalPGIController extends BaseController { .toList() ) .list(); + parents.forEach(p -> { children.stream() .filter(c -> c.getParentBarcodeId().equals(p.getId())) From 38a9d0471feb8a2870e93f7b6225c721bdeab250 Mon Sep 17 00:00:00 2001 From: yf001217 <834502597@qq.com> Date: Tue, 31 Mar 2026 14:22:23 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E9=87=87=E8=B4=AD=E7=89=A9=E6=96=99?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E7=A1=AE=E8=AE=A4=E7=A9=BA=E6=8C=87=E9=92=88?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/controller/NormalPGIController.java | 81 ++++++++++++++++--- 1 file changed, 68 insertions(+), 13 deletions(-) diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java index 0be6268a..51ec9c2d 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/NormalPGIController.java @@ -10,6 +10,7 @@ import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.crypto.digest.DigestUtil; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.nflg.wms.admin.pojo.dto.*; import com.nflg.wms.admin.repository.OutMaterialScanRecordRespository; import com.nflg.wms.admin.repository.SrmMaterialReceiptNoScanCodesRepository; @@ -125,6 +126,7 @@ public class NormalPGIController extends BaseController { /** * 送货单列表 + * * @param request * @return */ @@ -136,6 +138,7 @@ public class NormalPGIController extends BaseController { /** * 送货单详情 + * * @param orderId 订单ID * @return */ @@ -152,6 +155,7 @@ public class NormalPGIController extends BaseController { /** * 获取扫码的详情信息 + * * @param orderItemId 订单项ID * @return */ @@ -166,6 +170,7 @@ public class NormalPGIController extends BaseController { /** * 扫描送货单号获取送货单详情(PDA) + * * @param orderNo 送货单号 * @return */ @@ -179,6 +184,7 @@ public class NormalPGIController extends BaseController { /** * 收货确认(PDA使用) + * * @param request * @return */ @@ -315,6 +321,7 @@ public class NormalPGIController extends BaseController { /** * 普通物料的上架任务(PDA) + * * @param orederNo 送货单号或是任务单号 * @return */ @@ -342,6 +349,7 @@ public class NormalPGIController extends BaseController { /** * 采购物料入库确认(PDA) + * * @param request * @return */ @@ -470,12 +478,34 @@ public class NormalPGIController extends BaseController { .setSERNR(code.getSerialNumbers())); scanCodes.add(code); - WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster() +// WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster() +// .setBarcodeCode(code.getCodeId()) +// .setBarcodeType((short) 1) +// .setProcessStage(BarCodeProcessStage.InBound.getState()) +// .setLastScanBy(UserUtil.getUserId()) +// .setLastScanByname(UserUtil.getUserName()) +// .setLastScanTime(LocalDateTime.now()); + + WmsQrCodeMaster wmsQrCodeMaster = new WmsQrCodeMaster(); + WmsQrCodeMaster existCode = qrCodeMasterService.lambdaQuery() + .eq(WmsQrCodeMaster::getBarcodeCode, code.getCodeId()) + .one(); + if (existCode != null) { + wmsQrCodeMaster = existCode; + } else { + wmsQrCodeMaster.setId(IdWorker.getId()); + } + wmsQrCodeMaster .setBarcodeCode(code.getCodeId()) + .setBarcodeType((short) 1) + .setMaterialCode(item.getItemCode()) + .setMaterialDescription(item.getItemName()) .setProcessStage(BarCodeProcessStage.InBound.getState()) + .setReceiptItemId(item.getId()) .setLastScanBy(UserUtil.getUserId()) .setLastScanByname(UserUtil.getUserName()) .setLastScanTime(LocalDateTime.now()); + qrCodeMasters.add(wmsQrCodeMaster); if (CollectionUtil.isNotEmpty(qo.getItems())) { InCostCenterBackSubmitItemQRQO qrqo = qo.getItems() @@ -517,13 +547,26 @@ public class NormalPGIController extends BaseController { // .filter(qrCode -> qrCode.getPackagingType() == 1) .filter(qrCode -> qrCode.getPackagingType() != null && qrCode.getPackagingType() == 1) .toList(); - List children = qrCodeMasterService.lambdaQuery() - .in(WmsQrCodeMaster::getParentBarcodeId, parents - .stream() - .map(WmsQrCodeMaster::getId) - .toList() - ) - .list(); +// List children = qrCodeMasterService.lambdaQuery() +// .in(WmsQrCodeMaster::getParentBarcodeId, parents +// .stream() +// .map(WmsQrCodeMaster::getId) +// .toList() +// ) +// .list(); + + List children; + if (CollectionUtil.isNotEmpty(parents)) { + children = qrCodeMasterService.lambdaQuery() + .in(WmsQrCodeMaster::getParentBarcodeId, + parents.stream() + .map(WmsQrCodeMaster::getId) + .toList() + ) + .list(); + } else { + children = new ArrayList<>(); + } parents.forEach(p -> { children.stream() @@ -540,7 +583,8 @@ public class NormalPGIController extends BaseController { }); }); qrCodeMasters.addAll(children); - qrCodeMasterService.updateBarCode(qrCodeMasters); +// qrCodeMasterService.updateBarCode(qrCodeMasters); + qrCodeMasterService.saveOrUpdateBatch(qrCodeMasters); } normalPGIControllerService.takeDeliveryConfirm(receiptItems, storageLocationDTOS, inventories, zwm3A17DTOS, request.getTaskId(), scanCodes); return ApiResult.success(); @@ -565,6 +609,7 @@ public class NormalPGIController extends BaseController { /** * 收货直接入库的(未启用储位管理) + * * @return */ private void setPoReceiveByIn(SrmMaterialReceiptQO item, @@ -814,6 +859,7 @@ public class NormalPGIController extends BaseController { /** * 一键收货查询 + * * @param request * @return */ @@ -867,7 +913,7 @@ public class NormalPGIController extends BaseController { order.getSupplierNum(), item.getItemCode(), item.getPoLineNumber()); VUtil.trueThrowBusinessError(Objects.isNull(materialInfoInOrder)).throwMessage("当前物料信息【" + item.getItemCode() + "】,订单号【" + item.getPoNum() + "】,供应商【" + order.getSupplierName() + "】在SAP中搜索不到有效信息"); - String batchNumber =NoUtil.getBatchNo(order.getSupplierNum()); + String batchNumber = NoUtil.getBatchNo(order.getSupplierNum()); /* (materialInfoInOrder.getLbprt().equals("2") || materialInfoInOrder.getLbprt().equals("4")) ? NoUtil.getBatchNo(order.getSupplierNum()) : ""; @@ -990,6 +1036,7 @@ public class NormalPGIController extends BaseController { /** * 一键收货(无码) + * * @param request * @return */ @@ -1101,6 +1148,7 @@ public class NormalPGIController extends BaseController { /** * 采购物料上架确认(无码) + * * @param request * @return */ @@ -1333,7 +1381,7 @@ public class NormalPGIController extends BaseController { items.forEach(item -> { RLock lock = redissonClient.getLock(StrUtil.format("lock:inventory:{}:{}:{}", item.getDwerk(), item.getLgort2(), item.getMatnr())); try { - Long itemId=IdUtil.getSnowflakeNextId(); + Long itemId = IdUtil.getSnowflakeNextId(); // 等待5秒获取锁,10秒后自动释放 if (lock.tryLock(5, 10, TimeUnit.SECONDS)) { WmsOutProduceItem data = Convert.convert(WmsOutProduceItem.class, item); @@ -1345,13 +1393,13 @@ public class NormalPGIController extends BaseController { } else { throw new NflgException(STATE.BusinessError, "获取锁失败"); } - WmsOutProduceTicketItem ticketItem=new WmsOutProduceTicketItem() + WmsOutProduceTicketItem ticketItem = new WmsOutProduceTicketItem() .setId(IdUtil.getSnowflakeNextId()) .setTicketId(ticket.getId()) .setProduceItemId(itemId) .setNum(item.getSqsl()); ticketItems.add(ticketItem); - item.getQrCodes().forEach(qr->{ + item.getQrCodes().forEach(qr -> { WmsQrCodeMaster qrCodeMaster = qrCodeMasters.stream() .filter(qit -> qit.getBarcodeCode().equals(qr.getCodeId())) .findFirst() @@ -1401,6 +1449,7 @@ public class NormalPGIController extends BaseController { /** * 通过打包码获取到打包码的信息 + * * @param request * @return */ @@ -1419,6 +1468,7 @@ public class NormalPGIController extends BaseController { /** * 获取打包码对应的送货单信息 + * * @param request * @return */ @@ -1431,6 +1481,7 @@ public class NormalPGIController extends BaseController { /** * 根据送货单单号和大码的ID获取到具体的物料信息 + * * @param request * @return */ @@ -1443,6 +1494,7 @@ public class NormalPGIController extends BaseController { /** * 根据送货单单号和大码的ID获取到具体的物料信息 + * * @param request id= 大码的ID * @return */ @@ -1464,6 +1516,7 @@ public class NormalPGIController extends BaseController { /** * 通过打包码获取到物料信息 + * * @param request * @return */ @@ -1482,6 +1535,7 @@ public class NormalPGIController extends BaseController { /** * 确认收货(无需扫码) + * * @param request * @return */ @@ -1684,6 +1738,7 @@ public class NormalPGIController extends BaseController { /** * 确认收货(需扫码) + * * @param request * @return */