diff --git a/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingListQueryMapper.java b/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingListQueryMapper.java index 48d6f47cb..d1fd0820c 100644 --- a/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingListQueryMapper.java +++ b/firstleg/src/main/java/com/baiyue/firstleg/mapper/LoadingListQueryMapper.java @@ -23,7 +23,11 @@ public interface LoadingListQueryMapper { p.id AS plan_id, p.plan_no, p.container_booking_id, p.plan_status, p.remark, p.created_by, p.created_by_name, p.created_at, p.version, b.container_no, b.cabinet_no, b.warehouse_id, b.warehouse_name, - b.channel_code, b.outbound_confirmed_at, b.actual_empty_reported_at, + b.channel_code, + (SELECT MIN(outbound.confirmed_at) FROM fl_outbound_dispatch outbound + WHERE outbound.container_booking_id = p.container_booking_id AND outbound.confirmed_at IS NOT NULL + AND outbound.reversed_at IS NULL AND outbound.status = 'WAITING_FOR_LOADING') AS outbound_confirmed_at, + b.actual_empty_reported_at, b.vessel_name, b.voyage_no, b.container_type, (SELECT COUNT(*) FROM fl_preload_loading_plan_link preload_link WHERE preload_link.loading_plan_id = p.id) AS preload_link_count, @@ -52,7 +56,7 @@ public interface LoadingListQueryMapper { p.id, p.plan_no, p.container_booking_id, p.plan_status, p.remark, p.created_by, p.created_by_name, p.created_at, p.version, b.container_no, b.cabinet_no, b.warehouse_id, b.warehouse_name, - b.channel_code, b.outbound_confirmed_at, b.actual_empty_reported_at, + b.channel_code, b.actual_empty_reported_at, b.vessel_name, b.voyage_no, b.container_type """; diff --git a/firstleg/src/test/java/com/baiyue/firstleg/repository/LoadingListQueryMapperContractTest.java b/firstleg/src/test/java/com/baiyue/firstleg/repository/LoadingListQueryMapperContractTest.java index 659703cb6..063b025bb 100644 --- a/firstleg/src/test/java/com/baiyue/firstleg/repository/LoadingListQueryMapperContractTest.java +++ b/firstleg/src/test/java/com/baiyue/firstleg/repository/LoadingListQueryMapperContractTest.java @@ -34,6 +34,10 @@ class LoadingListQueryMapperContractTest { .contains("FROM fl_loading_plan p") .contains("JOIN fl_container_booking b") .contains("LEFT JOIN fl_loading_plan_item i") + .contains("FROM fl_outbound_dispatch outbound") + .contains("outbound.container_booking_id = p.container_booking_id") + .contains("AS outbound_confirmed_at") + .doesNotContain("b.outbound_confirmed_at") .doesNotContain("preload_pushed_at") .contains("p.plan_status IN ('EDITING', 'LOADING')") .doesNotContain("active_item.deleted = 0") @@ -47,6 +51,8 @@ class LoadingListQueryMapperContractTest { .doesNotContain("PRELOAD_PUSHED"); assertThat(confirmed) .contains("FROM fl_loading_plan p") + .contains("FROM fl_outbound_dispatch outbound") + .doesNotContain("b.outbound_confirmed_at") .contains("p.plan_status = 'COMPLETED'") .contains("customer_item.account_id = #{query.customerId}") .contains("b.warehouse_id = #{query.warehouseId}")