From d00af2b323c349d7bbc7f83cd08d28736abe7f92 Mon Sep 17 00:00:00 2001 From: NuttyShrimp Date: Sun, 13 Apr 2025 23:21:25 +0200 Subject: [PATCH] refactor(detections): only store detections for which a baton is defined --- src/main/java/telraam/database/daos/DetectionDAO.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/telraam/database/daos/DetectionDAO.java b/src/main/java/telraam/database/daos/DetectionDAO.java index 4e45e3c..982b92c 100644 --- a/src/main/java/telraam/database/daos/DetectionDAO.java +++ b/src/main/java/telraam/database/daos/DetectionDAO.java @@ -34,8 +34,10 @@ INSERT INTO detection (station_id, baton_id, timestamp, rssi, battery, remote_id int insertAll(@BindBean List detection); @SqlBatch(""" - INSERT INTO detection (station_id, baton_id, timestamp, rssi, battery, remote_id, uptime_ms, timestamp_ingestion) \ - VALUES (:stationId, (SELECT id FROM baton WHERE mac = :batonMac), :timestamp, :rssi, :battery, :remoteId, :uptimeMs, :timestampIngestion) + INSERT INTO detection (station_id, baton_id, timestamp, rssi, battery, remote_id, uptime_ms, timestamp_ingestion) + SELECT :stationId, b.id, :timestamp, :rssi, :battery, :remoteId, :uptimeMs, :timestampIngestion + FROM baton b + WHERE b.mac = :batonMac """) @GetGeneratedKeys({"id", "baton_id"}) @RegisterBeanMapper(Detection.class)