diff options
Diffstat (limited to 'src/org/traccar/database/DataManager.java')
-rw-r--r-- | src/org/traccar/database/DataManager.java | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/org/traccar/database/DataManager.java b/src/org/traccar/database/DataManager.java index 278109229..8337762f7 100644 --- a/src/org/traccar/database/DataManager.java +++ b/src/org/traccar/database/DataManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 - 2016 Anton Tananaev (anton@traccar.org) + * Copyright 2012 - 2017 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,6 +51,7 @@ import org.traccar.model.Position; import org.traccar.model.Server; import org.traccar.model.Statistics; import org.traccar.model.User; +import org.traccar.model.UserPermission; import org.traccar.model.DeviceGeofence; import org.traccar.model.GeofencePermission; @@ -527,4 +528,23 @@ public class DataManager { .setLong("calendarId", calendarId) .executeUpdate(); } + + public Collection<UserPermission> getUserPermissions() throws SQLException { + return QueryBuilder.create(dataSource, getQuery("database.selectUserPermissions")) + .executeQuery(UserPermission.class); + } + + public void linkUser(long userId, long managedUserId) throws SQLException { + QueryBuilder.create(dataSource, getQuery("database.linkUser")) + .setLong("userId", userId) + .setLong("managedUserId", managedUserId) + .executeUpdate(); + } + + public void unlinkUser(long userId, long managedUserId) throws SQLException { + QueryBuilder.create(dataSource, getQuery("database.unlinkUser")) + .setLong("userId", userId) + .setLong("managedUserId", managedUserId) + .executeUpdate(); + } } |