| | |
| | | if (StringUtils.isNotBlank(locItem.getFieldsIndex())) { |
| | | orderItemWrapper.eq(WkOrderItem::getFieldsIndex, locItem.getFieldsIndex()); |
| | | } |
| | | WkOrderItem orderItem = outStockItemService.getOne(orderItemWrapper); |
| | | // 同一出库单下同一物料可能有多条明细(如多行合并),用 list 取仍有剩余数量的第一条,避免 getOne 返回多条抛 TooManyResultsException |
| | | List<WkOrderItem> orderItemCandidates = outStockItemService.list(orderItemWrapper); |
| | | WkOrderItem orderItem = orderItemCandidates.stream() |
| | | .filter(o -> o.getAnfme() != null && o.getWorkQty() != null && o.getAnfme().compareTo(o.getWorkQty()) > 0) |
| | | .findFirst() |
| | | .orElse(null); |
| | | |
| | | // 如果找不到单据明细,且LocItem来自库存调整,则自动创建WkOrderItem |
| | | if (Objects.isNull(orderItem)) { |