diff --git a/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/graphs/GraphJSONCreator.java b/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/graphs/GraphJSONCreator.java index 897fed9c8..efd7a4e23 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/graphs/GraphJSONCreator.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/graphs/GraphJSONCreator.java @@ -362,7 +362,7 @@ public class GraphJSONCreator { long now = System.currentTimeMillis(); long monthAgo = now - TimeUnit.DAYS.toMillis(30L); String[] pieColors = theme.getPieColors(ThemeVal.GRAPH_WORLD_PIE); - Map playtimePerServer = dbSystem.getDatabase().query(SessionQueries.playtimePerServer(now, monthAgo)); + Map playtimePerServer = dbSystem.getDatabase().query(SessionQueries.playtimePerServer(monthAgo, now)); return Maps.builder(String.class, Object.class) .put("server_pie_colors", pieColors) diff --git a/Plan/common/src/main/java/com/djrapitops/plan/identification/Server.java b/Plan/common/src/main/java/com/djrapitops/plan/identification/Server.java index f656fbb26..4ff440b55 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/identification/Server.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/identification/Server.java @@ -60,10 +60,14 @@ public class Server implements Comparable { return name; } - public String getIdentifiableName() { + public static String getIdentifiableName(String name, int id) { return !"Plan".equalsIgnoreCase(name) ? name : "Server " + id; } + public String getIdentifiableName() { + return getIdentifiableName(name, id); + } + public void setName(String name) { this.name = name; } diff --git a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/objects/SessionQueries.java b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/objects/SessionQueries.java index eea629544..1bd7fa62d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/objects/SessionQueries.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/storage/database/queries/objects/SessionQueries.java @@ -23,6 +23,7 @@ import com.djrapitops.plan.gathering.domain.GMTimes; import com.djrapitops.plan.gathering.domain.PlayerKill; import com.djrapitops.plan.gathering.domain.Session; import com.djrapitops.plan.gathering.domain.WorldTimes; +import com.djrapitops.plan.identification.Server; import com.djrapitops.plan.storage.database.queries.Query; import com.djrapitops.plan.storage.database.queries.QueryAllStatement; import com.djrapitops.plan.storage.database.queries.QueryStatement; @@ -743,6 +744,7 @@ public class SessionQueries { public static Query> playtimePerServer(long after, long before) { String sql = SELECT + "SUM(" + SessionsTable.SESSION_END + '-' + SessionsTable.SESSION_START + ") as playtime," + + ServerTable.TABLE_NAME + '.' + ServerTable.SERVER_ID + ',' + ServerTable.NAME + FROM + SessionsTable.TABLE_NAME + INNER_JOIN + ServerTable.TABLE_NAME + " s on s." + ServerTable.SERVER_UUID + '=' + SessionsTable.TABLE_NAME + '.' + SessionsTable.SERVER_UUID + @@ -760,7 +762,11 @@ public class SessionQueries { public Map processResults(ResultSet set) throws SQLException { Map playtimePerServer = new HashMap<>(); while (set.next()) { - playtimePerServer.put(set.getString(ServerTable.NAME), set.getLong("playtime")); + String name = Server.getIdentifiableName( + set.getString(ServerTable.NAME), + set.getInt(ServerTable.SERVER_ID) + ); + playtimePerServer.put(name, set.getLong("playtime")); } return playtimePerServer; }