From 22d2fd31370b50a00592c67638b49722215c0118 Mon Sep 17 00:00:00 2001 From: SOWON LEE <66356241+Leesowon@users.noreply.github.com> Date: Wed, 25 Feb 2026 17:54:15 +0900 Subject: [PATCH] =?UTF-8?q?[#70]=20fix:=20=EA=B8=B0=EC=82=AC=20=EC=A4=91?= =?UTF-8?q?=EB=B3=B5=20=EB=B0=B0=EC=B0=A8=20=EB=8F=99=EC=8B=9C=EC=84=B1=20?= =?UTF-8?q?=EB=AC=B8=EC=A0=9C=20=ED=95=B4=EA=B2=B0=20=EB=B0=8F=20DB=20?= =?UTF-8?q?=EB=AC=B4=EA=B2=B0=EC=84=B1=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20260215_fix_duplicate_assigned_dispatches.sql | 2 +- db-migrations/20260215_pre_migration_check.sql | 15 ++++++++------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/db-migrations/20260215_fix_duplicate_assigned_dispatches.sql b/db-migrations/20260215_fix_duplicate_assigned_dispatches.sql index a4c1b96..21d2d1d 100644 --- a/db-migrations/20260215_fix_duplicate_assigned_dispatches.sql +++ b/db-migrations/20260215_fix_duplicate_assigned_dispatches.sql @@ -123,7 +123,7 @@ BEGIN AND d.status = 'ASSIGNED' AND d.active = true WHERE t.dispatch_status = 'DISPATCH' - AND d.dispatch_id IS NULL; + AND d.id IS NULL; IF inconsistent_count > 0 THEN RAISE NOTICE 'Found % transporters with inconsistent dispatch_status', inconsistent_count; diff --git a/db-migrations/20260215_pre_migration_check.sql b/db-migrations/20260215_pre_migration_check.sql index 8448f15..07aa69c 100644 --- a/db-migrations/20260215_pre_migration_check.sql +++ b/db-migrations/20260215_pre_migration_check.sql @@ -17,8 +17,8 @@ SELECT t.name as transporter_name, t.phone, t.dispatch_status, - COUNT(d.dispatch_id) as assigned_count, - STRING_AGG(d.dispatch_id::text, ', ' ORDER BY d.assigned_at DESC) as dispatch_ids, + COUNT(d.id) as assigned_count, + STRING_AGG(d.id::text, ', ' ORDER BY d.assigned_at DESC) as dispatch_ids, STRING_AGG(d.assigned_at::text, ', ' ORDER BY d.assigned_at DESC) as assigned_times, STRING_AGG(d.charge::text, ', ' ORDER BY d.assigned_at DESC) as charges FROM dispatch d @@ -27,8 +27,8 @@ WHERE d.status = 'ASSIGNED' AND d.active = true AND d.transporter_id IS NOT NULL GROUP BY t.transporter_id, t.name, t.phone, t.dispatch_status -HAVING COUNT(d.dispatch_id) > 1 -ORDER BY COUNT(d.dispatch_id) DESC, t.transporter_id; +HAVING COUNT(d.id) > 1 +ORDER BY COUNT(d.id) DESC, t.transporter_id; -- ================================================================ -- Check 2: 중복 배차 통계 @@ -64,8 +64,9 @@ SELECT '1. Has ASSIGNED dispatch but status is EMPTY' as inconsistency_type, t.transporter_id, t.name, + t.dispatch_status, - COUNT(d.dispatch_id) as assigned_dispatch_count + COUNT(d.id) as assigned_dispatch_count FROM transporters t JOIN dispatch d ON t.transporter_id = d.transporter_id WHERE d.status = 'ASSIGNED' @@ -87,7 +88,7 @@ LEFT JOIN dispatch d ON t.transporter_id = d.transporter_id AND d.status = 'ASSIGNED' AND d.active = true WHERE t.dispatch_status = 'DISPATCH' - AND d.dispatch_id IS NULL; + AND d.id IS NULL; -- ================================================================ -- Check 4: 중복 배차 상세 정보 (샘플 5건) @@ -96,7 +97,7 @@ SELECT '=== Sample Duplicate Dispatches (Top 5) ===' as check_title; SELECT - d.dispatch_id, + d.id, d.transporter_id, t.name as transporter_name, d.status,