From 1683977e0bfd44dc8eecebbc89146c870629bff9 Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Fri, 11 Sep 2026 17:01:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../baiyue/firstleg/mapper/LoadingListQueryMapper.java | 8 ++++++-- .../repository/LoadingListQueryMapperContractTest.java | 6 ++++++ 2 files changed, 12 insertions(+), 2 deletions(-) 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}")