Merge pull request #11 from P0nk/fix-ranking-task

Fix ranking task
This commit is contained in:
Ponk
2021-04-06 22:06:56 +02:00
committed by GitHub

View File

@@ -48,7 +48,7 @@ public class RankingLoginTask implements Runnable {
} }
private void updateRanking(int job, int world) throws SQLException { private void updateRanking(int job, int world) throws SQLException {
String sqlCharSelect = "SELECT c.id, " + (job != -1 ? "c.jobRank, c.jobRankMove" : "c.rank, c.rankMove") + ", a.lastlogin AS lastlogin, a.loggedin FROM characters AS c LEFT JOIN accounts AS a ON c.accountid = a.id WHERE c.gm < 2 AND c.world = ? "; String sqlCharSelect = "SELECT c.id, " + (job != -1 ? "c.jobRank, c.jobRankMove" : "c.`rank`, c.rankMove") + ", a.lastlogin AS lastlogin, a.loggedin FROM characters AS c LEFT JOIN accounts AS a ON c.accountid = a.id WHERE c.gm < 2 AND c.world = ? ";
if (job != -1) { if (job != -1) {
sqlCharSelect += "AND c.job DIV 100 = ? "; sqlCharSelect += "AND c.job DIV 100 = ? ";
} }
@@ -62,13 +62,15 @@ public class RankingLoginTask implements Runnable {
} }
try (ResultSet rs = charSelect.executeQuery(); try (ResultSet rs = charSelect.executeQuery();
PreparedStatement ps = con.prepareStatement("UPDATE characters SET " + (job != -1 ? "jobRank = ?, jobRankMove = ? " : "rank = ?, rankMove = ? ") + "WHERE id = ?")) { PreparedStatement ps = con.prepareStatement("UPDATE characters SET " + (job != -1 ? "jobRank = ?, jobRankMove = ? " : "`rank` = ?, rankMove = ? ") + "WHERE id = ?")) {
int rank = 0; int rank = 0;
while (rs.next()) { while (rs.next()) {
int rankMove = 0; int rankMove = 0;
rank++; rank++;
if (rs.getLong("lastlogin") < lastUpdate || rs.getInt("loggedin") > 0) {
final long lastlogin = rs.getTimestamp("lastlogin").getTime();
if (lastlogin < lastUpdate || rs.getInt("loggedin") > 0) {
rankMove = rs.getInt((job != -1 ? "jobRankMove" : "rankMove")); rankMove = rs.getInt((job != -1 ? "jobRankMove" : "rankMove"));
} }
rankMove += rs.getInt((job != -1 ? "jobRank" : "rank")) - rank; rankMove += rs.getInt((job != -1 ? "jobRank" : "rank")) - rank;