From 196b774c644c64bfded5509aa178d3f9d6e3126e Mon Sep 17 00:00:00 2001 From: liuhanqing Date: Thu, 14 Aug 2025 11:47:17 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BC=82=E5=B8=B8=E5=87=BA=E5=BA=93=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/pda/service/PdaServiceImp.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java index 5737875..a014242 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java @@ -547,6 +547,7 @@ public class PdaServiceImp implements PdaService { if (CollUtil.isEmpty(mydoJobList)) { return AjaxResult.warn(MessageUtils.message("warn.message")); } + List pickInfoList = trayCodeMakeSure.getMydoJobDetailList(); MydoJob mydoJob = mydoJobList.get(0); @@ -560,10 +561,20 @@ public class PdaServiceImp implements PdaService { String stockOutId = ""; for (MydoJobDetail mydoJobDetail : mydoJobDetails) { + //修改拣选数量 + Optional first = pickInfoList.stream().filter(x -> x.getJobDetailId().equals(mydoJobDetail.getJobDetailId())).findFirst(); + if (first.isPresent()) { + mydoJobDetail.setPickQuantity(first.get().getPickQuantity()); + mydoJobDetailService.updateMydoJobDetail(mydoJobDetail); + } + //修改单据实际分配数量 BigDecimal pickQuantity = Convert.toBigDecimal(mydoJobDetail.getPickQuantity()); + BigDecimal outQuantity = Convert.toBigDecimal(mydoJobDetail.getOutQuantity()); + BigDecimal subQuantity = outQuantity.subtract(pickQuantity); + //修改分配数量为 当前分配数量-缺失数量 OutStockoutDetail outStockoutDetail = outStockoutDetailService.selectOutStockoutDetailByStockoutDetailId(mydoJobDetail.getInOrOutDId()); - outStockoutDetail.setAllotQuantity(pickQuantity); + outStockoutDetail.setAllotQuantity(outStockoutDetail.getAllotQuantity().subtract(subQuantity)); stockOutId = outStockoutDetail.getStockoutId(); outStockoutDetailService.updateOutStockoutDetail(outStockoutDetail);