From 645f7863e71950728193dd2e5b5edd8df65633a3 Mon Sep 17 00:00:00 2001 From: Joerg Date: Sun, 18 Jan 2026 07:49:39 +0100 Subject: [PATCH] fix: add missing timeOn field to LoTW duplicate detection Critical bug: LoTW sync was missing timeOn in the duplicate detection query, causing multiple QSOs with the same callsign/date/band/mode but different times to be treated as duplicates. Example: If you worked DL1ABC on 2025-01-15 at 10:00, 12:00, and 14:00 all on 80m CW, only the first QSO would be imported. Now matches DCL sync logic which correctly includes timeOn: - userId, callsign, qsoDate, timeOn, band, mode This ensures all unique QSOs are properly imported from LoTW. Co-Authored-By: Claude Sonnet 4.5 --- src/backend/services/lotw.service.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/services/lotw.service.js b/src/backend/services/lotw.service.js index 6da2f27..3318c1c 100644 --- a/src/backend/services/lotw.service.js +++ b/src/backend/services/lotw.service.js @@ -241,6 +241,7 @@ export async function syncQSOs(userId, lotwUsername, lotwPassword, sinceDate = n eq(qsos.userId, userId), eq(qsos.callsign, dbQSO.callsign), eq(qsos.qsoDate, dbQSO.qsoDate), + eq(qsos.timeOn, dbQSO.timeOn), eq(qsos.band, dbQSO.band), eq(qsos.mode, dbQSO.mode) )