From d221742beb8ef65ed097de19aa331cf8eaa3187a Mon Sep 17 00:00:00 2001 From: b123400 Date: Wed, 7 Aug 2024 12:37:09 +0900 Subject: [PATCH] Fix issue with adding the wrong order item during recovery #284 --- .../com/ywesee/java/yopenedi/Edifact/EdifactReader.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/java/converter/src/main/java/com/ywesee/java/yopenedi/Edifact/EdifactReader.java b/java/converter/src/main/java/com/ywesee/java/yopenedi/Edifact/EdifactReader.java index b3c90b5..e30c687 100644 --- a/java/converter/src/main/java/com/ywesee/java/yopenedi/Edifact/EdifactReader.java +++ b/java/converter/src/main/java/com/ywesee/java/yopenedi/Edifact/EdifactReader.java @@ -127,13 +127,17 @@ private Order tryWithBatchSize(String prefix, String suffix, List itemSt Order thisOrder = orders.get(0); if (order == null) { order = thisOrder; + // Remove last, as the last one will be added later + order.orderItems.remove(order.orderItems.size() - 1); } else { for (int j = 0; j < thisOrder.orderItems.size() - 1; j++) { - order.orderItems.add(thisOrder.orderItems.get(0)); + OrderItem oi = thisOrder.orderItems.get(j); + order.orderItems.add(oi); } } if (i + batchSize >= itemStrings.size()) { - order.orderItems.add(thisOrder.orderItems.get(thisOrder.orderItems.size() - 1)); + OrderItem oi = thisOrder.orderItems.get(thisOrder.orderItems.size() - 1); + order.orderItems.add(oi); } } } catch (Exception e) {