diff --git a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java index 54bce0d8..5a22e0c4 100644 --- a/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java +++ b/win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java @@ -976,6 +976,25 @@ public class JobUtils { if (balanceDOListJob == null || balanceDOListJob.size() == 0) { throw new UtilException("物品代码:" + itemCode + " 没有找到推荐的库存"); } + // 发料类型为按单件时 返回 库存余额数量 为需求数量 + // 发料包装类型——按 包装 返回 当前库存余额数量 + if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("PACKAGE")) { + } + // 发料包装类型——按 容器 + if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("CONTAINER")) { + } + // 发料包装类型——按 单件 返回 库存余额数量 为需求数量 + if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("SINGLE")) { + BigDecimal residueQty = qty; + for(int i = 0; i< balanceDOListJob.size(); i++) { + // 最后一条数据 存储qty为需求qty所剩数量 + if ( i == (balanceDOListJob.size()-1)) { + balanceDOListJob.get(i).setQty(residueQty); + } + // qty 减掉库存余额qty数量 求最后所剩 + residueQty = residueQty.subtract(balanceDOListJob.get(i).getQty()); + } + } // 合并 相同【物品】和【批次】和【库位】的 数量求和 List balanceDOListRs = new ArrayList<>(); Map map = new HashMap<>();