aboutsummaryrefslogtreecommitdiff
path: root/src/org/traccar/database
diff options
context:
space:
mode:
authorAbyss777 <abyss@fox5.ru>2017-07-11 16:32:39 +0500
committerAbyss777 <abyss@fox5.ru>2017-07-11 16:32:39 +0500
commitaeb9dace63d4c9ae02af80824fe157fa43129595 (patch)
treea5ab84b414ec1ac5ee75259bc9f5d7ff8db72ad6 /src/org/traccar/database
parent85f7eae47ec4bf6b269305a05a696f9acce31fd5 (diff)
downloadtraccar-server-aeb9dace63d4c9ae02af80824fe157fa43129595.tar.gz
traccar-server-aeb9dace63d4c9ae02af80824fe157fa43129595.tar.bz2
traccar-server-aeb9dace63d4c9ae02af80824fe157fa43129595.zip
Implement Driver models, schema and database
Diffstat (limited to 'src/org/traccar/database')
-rw-r--r--src/org/traccar/database/DataManager.java84
1 files changed, 84 insertions, 0 deletions
diff --git a/src/org/traccar/database/DataManager.java b/src/org/traccar/database/DataManager.java
index dd65289e4..1c2a66bcf 100644
--- a/src/org/traccar/database/DataManager.java
+++ b/src/org/traccar/database/DataManager.java
@@ -44,11 +44,15 @@ import org.traccar.model.CalendarPermission;
import org.traccar.model.Attribute;
import org.traccar.model.Device;
import org.traccar.model.DeviceAttribute;
+import org.traccar.model.DeviceDriver;
import org.traccar.model.DevicePermission;
+import org.traccar.model.Driver;
+import org.traccar.model.DriverPermission;
import org.traccar.model.Event;
import org.traccar.model.Geofence;
import org.traccar.model.Group;
import org.traccar.model.GroupAttribute;
+import org.traccar.model.GroupDriver;
import org.traccar.model.GroupGeofence;
import org.traccar.model.GroupPermission;
import org.traccar.model.Notification;
@@ -638,4 +642,84 @@ public class DataManager {
.executeUpdate();
}
+ public Collection<Driver> getDrivers() throws SQLException {
+ return QueryBuilder.create(dataSource, getQuery("database.selectDrivers"))
+ .executeQuery(Driver.class);
+ }
+
+ public void addDriver(Driver driver) throws SQLException {
+ driver.setId(QueryBuilder.create(dataSource, getQuery("database.insertDriver"), true)
+ .setObject(driver)
+ .executeUpdate());
+ }
+
+ public void updateDriver(Driver driver) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.updateDriver"))
+ .setObject(driver)
+ .executeUpdate();
+ }
+
+ public void removeDriver(long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.deleteDriver"))
+ .setLong("id", driverId)
+ .executeUpdate();
+ }
+
+ public Collection<DriverPermission> getDriverPermissions() throws SQLException {
+ return QueryBuilder.create(dataSource, getQuery("database.selectDriverPermissions"))
+ .executeQuery(DriverPermission.class);
+ }
+
+ public void linkDriver(long userId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.linkDriver"))
+ .setLong("userId", userId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
+ public void unlinkDriver(long userId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.unlinkDriver"))
+ .setLong("userId", userId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
+ public Collection<GroupDriver> getGroupDrivers() throws SQLException {
+ return QueryBuilder.create(dataSource, getQuery("database.selectGroupDrivers"))
+ .executeQuery(GroupDriver.class);
+ }
+
+ public void linkGroupDriver(long groupId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.linkGroupDriver"))
+ .setLong("groupId", groupId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
+ public void unlinkGroupDriver(long groupId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.unlinkGroupDriver"))
+ .setLong("groupId", groupId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
+ public Collection<DeviceDriver> getDeviceDrivers() throws SQLException {
+ return QueryBuilder.create(dataSource, getQuery("database.selectDeviceDrivers"))
+ .executeQuery(DeviceDriver.class);
+ }
+
+ public void linkDeviceDriver(long deviceId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.linkDeviceDriver"))
+ .setLong("deviceId", deviceId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
+ public void unlinkDeviceDriver(long deviceId, long driverId) throws SQLException {
+ QueryBuilder.create(dataSource, getQuery("database.unlinkDeviceDriver"))
+ .setLong("deviceId", deviceId)
+ .setLong("driverId", driverId)
+ .executeUpdate();
+ }
+
}