| | |
| | | //获取库存中订单库位 |
| | | Set<Long> longSet = stockItems.stream().map(StockItem::getStockId).collect(Collectors.toSet()); |
| | | |
| | | Stock stocks = stockService.getOne(new LambdaQueryWrapper<Stock>() |
| | | .in(Stock::getId, longSet) |
| | | .eq(Stock::getType, OrderType.ORDER_IN.type) |
| | | .eq(Stock::getSourceCode, order.getCode())); |
| | | Stock stocks = null; |
| | | if (!longSet.isEmpty()) { |
| | | stocks = stockService.getOne(new LambdaQueryWrapper<Stock>() |
| | | .in(Stock::getId, longSet) |
| | | .eq(Stock::getType, OrderType.ORDER_IN.type) |
| | | .eq(Stock::getSourceCode, order.getCode())); |
| | | } |
| | | if (!Objects.isNull(stocks)) { |
| | | param.setZone(stocks.getLocCode()); |
| | | } |
| | |
| | | .setItemCode(orderItem.getMatnrCode()) |
| | | .setEditUser(nickName) |
| | | .setEditDate(order.getUpdateTime()) |
| | | .setZone(stocks.getLocCode()) |
| | | .setGoodsNO(fields.get("crushNo")) |
| | | .setZone(stocks != null ? stocks.getLocCode() : null) |
| | | // .setGoodsNO(fields.get("crushNo")) // 票号暂不使用 |
| | | .setMemoDtl(order.getMemo()); |
| | | |
| | | if (order.getWkType().equals(OrderWorkType.ORDER_WORK_TYPE_DONE_IN.type)) { |
| | |
| | | //过滤拣货入库明细,避免上报 |
| | | List<Stock> stockList = stocks.stream().filter(stock -> stock.getType().equals(OrderType.ORDER_OUT.type) && !Objects.isNull(stock.getSourceCode())).collect(Collectors.toList()); |
| | | List<Long> list = stockList.stream().map(Stock::getId).collect(Collectors.toList()); |
| | | if (list.isEmpty()) { |
| | | return; |
| | | } |
| | | List<StockItem> stockItems1 = stockItemService.list(new LambdaQueryWrapper<StockItem>().in(StockItem::getStockId, list)); |
| | | String finalNickName = nickName; |
| | | stockItems1.forEach(stockItem -> { |
| | |
| | | .setItemCode(stockItem.getMatnrCode()) |
| | | .setEditUser(finalNickName) |
| | | .setEditDate(order.getUpdateTime()) |
| | | .setGoodsNO(fields.get("crushNo")) |
| | | // .setGoodsNO(fields.get("crushNo")) // 票号暂不使用 |
| | | .setMemoDtl(order.getMemo()); |
| | | if (order.getWkType().equals(OrderWorkType.ORDER_WORK_TYPE_DONE_IN.type)) { |
| | | //采购入库单 |
| | |
| | | .eq(StockItem::getFieldsIndex, orderItem.getFieldsIndex())); |
| | | //获取库存中订单库位 |
| | | List<Long> longSet = stockItems.stream().map(StockItem::getStockId).collect(Collectors.toList()); |
| | | //获取库存库位信息 |
| | | Stock stocks = stockService.getOne(new LambdaQueryWrapper<Stock>() |
| | | .in(Stock::getId, longSet) |
| | | .eq(Stock::getType, OrderType.ORDER_IN.type) |
| | | .eq(Stock::getSourceCode, order.getCode())); |
| | | //获取库存库位信息(避免 longSet 为空时生成 stock_id IN () 导致 SQL 异常) |
| | | Stock stocks = null; |
| | | if (!longSet.isEmpty()) { |
| | | stocks = stockService.getOne(new LambdaQueryWrapper<Stock>() |
| | | .in(Stock::getId, longSet) |
| | | .eq(Stock::getType, OrderType.ORDER_IN.type) |
| | | .eq(Stock::getSourceCode, order.getCode())); |
| | | } |
| | | if (!Objects.isNull(stocks)) { |
| | | param.setZone(stocks.getLocCode()); |
| | | } |
| | |
| | | .setItemCode(orderItem.getMatnrCode()) |
| | | .setEditUser(nickName) |
| | | .setEditDate(order.getUpdateTime()) |
| | | .setGoodsNO(fields.get("crushNo")) |
| | | // .setGoodsNO(fields.get("crushNo")) // 票号暂不使用 |
| | | .setMemoDtl(order.getMemo()); |
| | | |
| | | if (order.getWkType().equals(OrderWorkType.ORDER_WORK_TYPE_DONE_IN.type)) { |