fix(firstleg): publish only actually loaded items
This commit is contained in:
+16
-2
@@ -138,11 +138,25 @@ class LoadingCompletedOutboxServiceTest {
|
||||
}
|
||||
|
||||
@Test void snapshotOnlyPublishesFinalizedLoadedInbounds() throws Exception {
|
||||
String sql = String.join(" ", LoadingCompletedEventMapper.class.getMethod("rows", long.class)
|
||||
String rowsSql = String.join(" ", LoadingCompletedEventMapper.class.getMethod("rows", long.class)
|
||||
.getAnnotation(Select.class).value()).replaceAll("\\s+", " ");
|
||||
String palletsSql = String.join(" ", LoadingCompletedEventMapper.class.getMethod("palletRows", long.class)
|
||||
.getAnnotation(Select.class).value()).replaceAll("\\s+", " ");
|
||||
|
||||
assertThat(sql).contains("p.plan_status = 'COMPLETED'")
|
||||
assertThat(rowsSql).contains("p.plan_status = 'COMPLETED'")
|
||||
.contains("o.process_status = 'LOADED'");
|
||||
for (String sql : List.of(rowsSql, palletsSql)) {
|
||||
assertThat(sql)
|
||||
.contains("actual_pick.loading_plan_item_id = i.id")
|
||||
.contains("actual_pick.item_status IN ('PICKED','PARTIAL')")
|
||||
.contains("actual_pick.picked_package_count > 0")
|
||||
.contains("actual_pick.picked_package_count = i.package_count")
|
||||
.contains("actual_task.id = actual_pick.pick_task_id")
|
||||
.contains("actual_task.loading_plan_id =")
|
||||
.doesNotContain("'SKIPPED'")
|
||||
.doesNotContain("'PENDING'")
|
||||
.doesNotContain("'PICKING'");
|
||||
}
|
||||
}
|
||||
|
||||
@Test void publishesDropshipPalletSkuAndCartonSnapshots() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user