Browse Source

根据批次策略/下架策略 返回 库存余额DO 接口修改

master
陈薪名 2 years ago
parent
commit
4fbecb66b7
  1. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

@ -835,7 +835,7 @@ public class JobUtils {
throw exception(BALANCE_QTY_NOT_EXISTS); throw exception(BALANCE_QTY_NOT_EXISTS);
} }
// 根据库存类型 过滤 查询的库位 // 根据库存类型 过滤 查询的库位
if (locationList != null && !locationList.isEmpty()) { if (locationList != null && locationList.size() > 0) {
queryWrapper.in("location_code", locationList); queryWrapper.in("location_code", locationList);
} }
// 根据下架策略 作为查询库存余额条件 // 根据下架策略 作为查询库存余额条件
@ -975,7 +975,18 @@ public class JobUtils {
if (balanceDOListJob == null || balanceDOListJob.size() == 0) { if (balanceDOListJob == null || balanceDOListJob.size() == 0) {
throw new UtilException("物品代码:" + itemCode + " 没有找到推荐的库存"); throw new UtilException("物品代码:" + itemCode + " 没有找到推荐的库存");
} }
return balanceDOListJob; // 合并 相同【物品】和【批次】和【库位】的 数量求和
List<BalanceDO> balanceDOListRs = new ArrayList<>();
Map<String,BalanceDO> map = new HashMap<>();
for(BalanceDO balanceDOItem:balanceDOListJob ) {
BalanceDO ba = map.get(balanceDOItem.getItemCode()+"|"+balanceDOItem.getBatch()+"|"+balanceDOItem.getLocationCode());
if (ba != null) balanceDOItem.setQty(balanceDOItem.getQty().add(ba.getQty()));
map.put(balanceDOItem.getItemCode()+"|"+balanceDOItem.getBatch()+"|"+balanceDOItem.getLocationCode(),balanceDOItem);
}
for (Map.Entry entry : map.entrySet()) {
balanceDOListRs.add((BalanceDO) entry.getValue());
}
return balanceDOListRs;
} }
/** /**

Loading…
Cancel
Save