Browse Source

根据批次策略/下架策略 返回 库存余额DO 接口修改 按单件 返回最后一条库存余额qty为需求所剩数量

master
陈薪名 2 years ago
parent
commit
7209a1531f
  1. 19
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

19
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<BalanceDO> balanceDOListRs = new ArrayList<>();
Map<String,BalanceDO> map = new HashMap<>();

Loading…
Cancel
Save