| | |
| | | } |
| | | } else if (task.getTaskType() >= TaskType.TASK_TYPE_OUT.type && task.getTaskType() <= TaskType.TASK_TYPE_EMPITY_OUT.type) { |
| | | |
| | | /**判断单据是否完成**/ |
| | | Set<Long> longSet = taskItems.stream().map(TaskItem::getSourceId).collect(Collectors.toSet()); |
| | | List<WaveOrderRela> waveOrderRelas = waveOrderRelaService.list(new LambdaQueryWrapper<WaveOrderRela>() |
| | | .in(WaveOrderRela::getWaveId, longSet)); |
| | | if (Cools.isEmpty(waveOrderRelas)) { |
| | | throw new CoolException("波次对应关联单未找到"); |
| | | } |
| | | Set<Long> orderIds = waveOrderRelas.stream().map(WaveOrderRela::getOrderId).collect(Collectors.toSet()); |
| | | List<WkOrder> wkOrders = asnOrderService.listByIds(orderIds); |
| | | if (wkOrders.isEmpty()) { |
| | | throw new CoolException("单据不存在!!"); |
| | | } |
| | | wkOrders.forEach(order -> { |
| | | //检查单据是否完成 |
| | | if (order.getAnfme().compareTo(order.getQty()) == 0) { |
| | | order.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_DONE.val); |
| | | if (!asnOrderService.updateById(order)) { |
| | | throw new CoolException("出库单更新状态失败"); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | //出库单上报RCS修改库位状态 |
| | | try { |
| | | reportStationStatus(task); |
| | |
| | | } |
| | | } |
| | | |
| | | /**判断单据是否完成**/ |
| | | Set<Long> longSet = taskItems.stream().map(TaskItem::getSourceId).collect(Collectors.toSet()); |
| | | List<WaveOrderRela> waveOrderRelas = waveOrderRelaService.list(new LambdaQueryWrapper<WaveOrderRela>() |
| | | .in(WaveOrderRela::getWaveId, longSet)); |
| | | if (Cools.isEmpty(waveOrderRelas)) { |
| | | throw new CoolException("波次对应关联单未找到"); |
| | | } |
| | | Set<Long> orderIds = waveOrderRelas.stream().map(WaveOrderRela::getOrderId).collect(Collectors.toSet()); |
| | | List<WkOrder> wkOrders = asnOrderService.listByIds(orderIds); |
| | | if (wkOrders.isEmpty()) { |
| | | throw new CoolException("单据不存在!!"); |
| | | } |
| | | wkOrders.forEach(order -> { |
| | | //检查单据是否完成 |
| | | if (order.getAnfme().compareTo(order.getQty()) == 0) { |
| | | if (order.getType().equals(OrderType.ORDER_IN)) { |
| | | order.setExceStatus(AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val); |
| | | } else { |
| | | order.setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_DONE.val); |
| | | } |
| | | if (!asnOrderService.updateById(order)) { |
| | | throw new CoolException("出库单更新状态失败"); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | List<TaskItemLog> itemLogs = new ArrayList<>(); |
| | | for (TaskItem item : taskItems) { |
| | | TaskItemLog itemLog = new TaskItemLog(); |