pda上架报错;
This commit is contained in:
+22
-10
@@ -337,15 +337,19 @@ public class StockShelfOrderApplicationService {
|
||||
List<ShelfMaterialDetailDO> shelfMaterialDetailDOList = stockReceiptOrderDO.getMaterialDetailList();
|
||||
shelfMaterialDetailDOList.forEach(shelfMaterialDetailDO -> {
|
||||
List<ShelfMaterialDetailDO> shelfMaterialDetailDOChildrenList1 = shelfMaterialDetailDO.getChildren();
|
||||
ShelfMaterialDetailDO shelfMaterialDetailDOChildren = shelfMaterialDetailDOChildrenList1.stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList()).get(0);
|
||||
shelfMaterialDetailDO.setMaterialDetailId(shelfMaterialDetailDOChildren.getMaterialDetailId());
|
||||
shelfMaterialDetailDO.setShelvesQuantity(shelfMaterialDetailDOChildren.getShelvesQuantity());
|
||||
shelfMaterialDetailDO.setWarehouseId(shelfMaterialDetailDOChildren.getWarehouseId());
|
||||
shelfMaterialDetailDO.setStorageSectionId(shelfMaterialDetailDOChildren.getStorageSectionId());
|
||||
shelfMaterialDetailDO.setStorageLocationId(shelfMaterialDetailDOChildren.getStorageLocationId());
|
||||
shelfMaterialDetailDO.setContainerId(shelfMaterialDetailDOChildren.getContainerId());
|
||||
shelfMaterialDetailDO.setLevel(shelfMaterialDetailDOChildren.getLevel());
|
||||
shelfMaterialDetailDO.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChildren.getMaterialDetailSerialNumberList());
|
||||
ShelfMaterialDetailDO shelfMaterialDetailDOChildren = null;
|
||||
List<ShelfMaterialDetailDO> shelfMaterialDetailDOChildrenList11 = shelfMaterialDetailDO.getChildren().stream().filter(p -> 1 == p.getLevel()).collect(Collectors.toList());
|
||||
if (shelfMaterialDetailDOChildrenList11 != null && !shelfMaterialDetailDOChildrenList11.isEmpty() && shelfMaterialDetailDOChildrenList11.size() != 0) shelfMaterialDetailDOChildren = shelfMaterialDetailDOChildrenList11.get(0);
|
||||
if (shelfMaterialDetailDOChildren != null) {
|
||||
shelfMaterialDetailDO.setMaterialDetailId(shelfMaterialDetailDOChildren.getMaterialDetailId());
|
||||
shelfMaterialDetailDO.setShelvesQuantity(shelfMaterialDetailDOChildren.getShelvesQuantity());
|
||||
shelfMaterialDetailDO.setWarehouseId(shelfMaterialDetailDOChildren.getWarehouseId());
|
||||
shelfMaterialDetailDO.setStorageSectionId(shelfMaterialDetailDOChildren.getStorageSectionId());
|
||||
shelfMaterialDetailDO.setStorageLocationId(shelfMaterialDetailDOChildren.getStorageLocationId());
|
||||
shelfMaterialDetailDO.setContainerId(shelfMaterialDetailDOChildren.getContainerId());
|
||||
shelfMaterialDetailDO.setLevel(shelfMaterialDetailDOChildren.getLevel());
|
||||
shelfMaterialDetailDO.setMaterialDetailSerialNumberList(shelfMaterialDetailDOChildren.getMaterialDetailSerialNumberList());
|
||||
}
|
||||
//只留二级
|
||||
List<ShelfMaterialDetailDO> shelfMaterialDetailDOChildrenList2 = shelfMaterialDetailDOChildrenList1.stream().filter(p -> 2 == p.getLevel()).collect(Collectors.toList());
|
||||
shelfMaterialDetailDO.setChildren(shelfMaterialDetailDOChildrenList2);
|
||||
@@ -469,7 +473,15 @@ public class StockShelfOrderApplicationService {
|
||||
if (shelfMaterialDetailPO == null){
|
||||
throw new ServiceException("物料明细不存在");
|
||||
}
|
||||
if (shelfMaterialDetailDO.getShelvesQuantity().compareTo(BigDecimal.ZERO) == 0){
|
||||
List<ShelfMaterialDetailDO> children = shelfMaterialDetailDO.getChildren();
|
||||
BigDecimal childrenShelvesQuantitySum = BigDecimal.ZERO;
|
||||
if (!CollectionUtils.isEmpty(children)) {
|
||||
childrenShelvesQuantitySum = children.stream()
|
||||
.map(ShelfMaterialDetailDO::getShelvesQuantity)
|
||||
.filter(Objects::nonNull)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
}
|
||||
if (shelfMaterialDetailDO.getShelvesQuantity().compareTo(BigDecimal.ZERO) == 0 && childrenShelvesQuantitySum.compareTo(BigDecimal.ZERO) == 0){
|
||||
//未进行上架直接跳过
|
||||
continue;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user