From 41fe4ca770875842f4d17531506c4bc74dc90501 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Fri, 10 Jun 2016 16:02:06 +0500 Subject: Geofences --- setup/unix/traccar.xml | 71 +++++++++++++++++++++++++++++++++++++++++++++-- setup/windows/traccar.xml | 71 +++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 136 insertions(+), 6 deletions(-) (limited to 'setup') diff --git a/setup/unix/traccar.xml b/setup/unix/traccar.xml index d8d4a1084..37ff31bbe 100644 --- a/setup/unix/traccar.xml +++ b/setup/unix/traccar.xml @@ -24,6 +24,8 @@ true + true + org.h2.Driver @@ -116,7 +118,7 @@ - UPDATE devices SET status = :status, lastUpdate = :lastUpdate, motion = :motion WHERE id = :id; + UPDATE devices SET status = :status, lastUpdate = :lastUpdate, motion = :motion, geofenceId = :geofenceId WHERE id = :id; @@ -177,14 +179,77 @@ - INSERT INTO events (type, serverTime, deviceId, positionId, attributes) - VALUES (:type, :serverTime, :deviceId, :positionId, :attributes); + INSERT INTO events (type, serverTime, deviceId, positionId, geofenceId, attributes) + VALUES (:type, :serverTime, :deviceId, :positionId, :geofenceId, :attributes); SELECT * FROM events WHERE deviceId = :deviceId AND type LIKE :type AND serverTime BETWEEN :from AND :to ORDER BY serverTime DESC; + + SELECT * FROM geofences + WHERE id = :id; + + + + SELECT * FROM geofences; + + + + INSERT INTO geofences (name, description, area, attributes) + VALUES (:name, :description, :area, :attributes); + + + + UPDATE geofences SET + name = :name, + description = :description, + area = :area, + attributes = :attributes + WHERE id = :id; + + + + DELETE FROM geofences WHERE id = :id; + + + + SELECT userId, geofenceId FROM user_geofence; + + + + INSERT INTO user_geofence (userId, geofenceId) VALUES (:userId, :geofenceId); + + + + DELETE FROM user_geofence WHERE userId = :userId AND geofenceId = :geofenceId; + + + + SELECT groupId, geofenceId FROM group_geofence; + + + + INSERT INTO group_geofence (groupId, geofenceId) VALUES (:groupId, :geofenceId); + + + + DELETE FROM group_geofence WHERE groupId = :groupId AND geofenceId = :geofenceId; + + + + SELECT userId, deviceId, geofenceId FROM user_device_geofence; + + + + INSERT INTO user_device_geofence (userId, deviceId, geofenceId) VALUES (:userId, :deviceId, :geofenceId); + + + + DELETE FROM user_device_geofence WHERE userId = :userId AND deviceId = :deviceId AND geofenceId = :geofenceId; + + 5001 diff --git a/setup/windows/traccar.xml b/setup/windows/traccar.xml index 71f56f4c7..5f86e53b0 100644 --- a/setup/windows/traccar.xml +++ b/setup/windows/traccar.xml @@ -24,6 +24,8 @@ true + true + org.h2.Driver @@ -116,7 +118,7 @@ - UPDATE devices SET status = :status, lastUpdate = :lastUpdate, motion = :motion WHERE id = :id; + UPDATE devices SET status = :status, lastUpdate = :lastUpdate, motion = :motion, geofenceId = :geofenceId WHERE id = :id; @@ -177,14 +179,77 @@ - INSERT INTO events (type, serverTime, deviceId, positionId, attributes) - VALUES (:type, :serverTime, :deviceId, :positionId, :attributes); + INSERT INTO events (type, serverTime, deviceId, positionId, geofenceId, attributes) + VALUES (:type, :serverTime, :deviceId, :positionId, :geofenceId, :attributes); SELECT * FROM events WHERE deviceId = :deviceId AND type LIKE :type AND serverTime BETWEEN :from AND :to ORDER BY serverTime DESC; + + SELECT * FROM geofences + WHERE id = :id; + + + + SELECT * FROM geofences; + + + + INSERT INTO geofences (name, description, area, attributes) + VALUES (:name, :description, :area, :attributes); + + + + UPDATE geofences SET + name = :name, + description = :description, + area = :area, + attributes = :attributes + WHERE id = :id; + + + + DELETE FROM geofences WHERE id = :id; + + + + SELECT userId, geofenceId FROM user_geofence; + + + + INSERT INTO user_geofence (userId, geofenceId) VALUES (:userId, :geofenceId); + + + + DELETE FROM user_geofence WHERE userId = :userId AND geofenceId = :geofenceId; + + + + SELECT groupId, geofenceId FROM group_geofence; + + + + INSERT INTO group_geofence (groupId, geofenceId) VALUES (:groupId, :geofenceId); + + + + DELETE FROM group_geofence WHERE groupId = :groupId AND geofenceId = :geofenceId; + + + + SELECT userId, deviceId, geofenceId FROM user_device_geofence; + + + + INSERT INTO user_device_geofence (userId, deviceId, geofenceId) VALUES (:userId, :deviceId, :geofenceId); + + + + DELETE FROM user_device_geofence WHERE userId = :userId AND deviceId = :deviceId AND geofenceId = :geofenceId; + + 5001 -- cgit v1.2.3