Files
permission-manager/src/main/java/me/monster/ranks/database/managers/players.java
2025-10-24 18:58:14 +02:00

89 lines
3.2 KiB
Java

package me.monster.ranks.database.managers;
import me.monster.ranks.database.dbManager;
import me.monster.ranks.database.models.userInfo;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
public class players extends dbManager {
public static userInfo findPlayerGroupByUUID(String uuid) throws SQLException {
PreparedStatement statement = getConnection().prepareStatement("SELECT * FROM player_info WHERE uuid = ?");
statement.setString(1, uuid);
ResultSet resultSet = statement.executeQuery();
userInfo databaseModel;
if(resultSet.next()){
databaseModel = new userInfo(resultSet.getString("uuid"), resultSet.getString("playerRank"), resultSet.getInt("temp"), resultSet.getDate("date"));
statement.close();
return databaseModel;
}
statement.close();
return null;
}
public static List<userInfo> findPlayerGroups(String uuid) throws SQLException {
PreparedStatement statement = getConnection().prepareStatement("SELECT * FROM player_info WHERE uuid = ?");
statement.setString(1, uuid);
ResultSet resultSet = statement.executeQuery();
List<userInfo> databaseModel = new ArrayList<>(); // Use ArrayList to hold all results
while (resultSet.next()) {
userInfo user = new userInfo(resultSet.getString("uuid"), resultSet.getString("playerRank"), resultSet.getInt("temp"), resultSet.getTimestamp("date"));
databaseModel.add(user);
}
statement.close();
return databaseModel.isEmpty() ? null : databaseModel; // Return null if the list is empty
}
public static void createPlayer(userInfo databaseModel) throws SQLException {
PreparedStatement statement = getConnection()
.prepareStatement("INSERT INTO player_info (uuid, playerRank, temp, date) VALUES (?, ?, ?, ?)");
statement.setString(1, databaseModel.getPlayerUUID());
statement.setString(2, "default");
statement.setInt(3, 0);
statement.setDate(4, null);
statement.executeUpdate();
statement.close();
}
public static void updatePlayerGroups(userInfo databaseModel) throws SQLException {
PreparedStatement statement = getConnection().prepareStatement("UPDATE player_info SET playerRank = ?, temp = ?, date = ? WHERE uuid = ?");
statement.setString(1, databaseModel.getPlayerRank());
statement.setInt(2, databaseModel.getPlayerRankTemp());
statement.setDate(3, (Date) databaseModel.getDate());
statement.setString(4, databaseModel.getPlayerUUID());
statement.executeUpdate();
statement.close();
}
public static void deletePlayerGroups(userInfo databaseModel) throws SQLException {
PreparedStatement statement = getConnection().prepareStatement("DELETE FROM player_info WHERE uuid = ? AND playerRank = ?");
statement.setString(1, databaseModel.getPlayerUUID());
statement.setString(2, databaseModel.getPlayerRank());
statement.executeUpdate();
statement.close();
}
}