update bane time first try
This commit is contained in:
@@ -86,7 +86,7 @@ public class dbBaneHandler extends dbHandlerBase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean SET_BANE_TIME_NEW(int hour, int cityUUID) {
|
public boolean SET_BANE_TIME_NEW(int hour, int cityUUID) {
|
||||||
hour += 12;
|
hour += 12; // Adjust hour
|
||||||
try (Connection connection = DbManager.getConnection();
|
try (Connection connection = DbManager.getConnection();
|
||||||
PreparedStatement getStatement = connection.prepareStatement("SELECT `placementDate`, `liveDate` FROM `dyn_banes` WHERE `cityUUID`=?");
|
PreparedStatement getStatement = connection.prepareStatement("SELECT `placementDate`, `liveDate` FROM `dyn_banes` WHERE `cityUUID`=?");
|
||||||
PreparedStatement updateStatement = connection.prepareStatement("UPDATE `dyn_banes` SET `liveDate`=?, `time_set`=? WHERE `cityUUID`=?")) {
|
PreparedStatement updateStatement = connection.prepareStatement("UPDATE `dyn_banes` SET `liveDate`=?, `time_set`=? WHERE `cityUUID`=?")) {
|
||||||
@@ -98,17 +98,20 @@ public class dbBaneHandler extends dbHandlerBase {
|
|||||||
DateTime placementDate = new DateTime(rs.getTimestamp("placementDate").getTime());
|
DateTime placementDate = new DateTime(rs.getTimestamp("placementDate").getTime());
|
||||||
Timestamp liveDateTimestamp = rs.getTimestamp("liveDate");
|
Timestamp liveDateTimestamp = rs.getTimestamp("liveDate");
|
||||||
|
|
||||||
|
// Explicitly check if liveDate is null
|
||||||
DateTime toSet;
|
DateTime toSet;
|
||||||
|
if (liveDateTimestamp == null) {
|
||||||
if (liveDateTimestamp != null) {
|
// If liveDate is null, default to placementDate
|
||||||
// liveDate is set, adjust its time
|
toSet = placementDate;
|
||||||
DateTime liveDate = new DateTime(liveDateTimestamp.getTime());
|
|
||||||
toSet = liveDate.withHourOfDay(hour).withMinuteOfHour(0).withSecondOfMinute(0).withMillisOfSecond(0);
|
|
||||||
} else {
|
} else {
|
||||||
// liveDate is not set, use placementDate with updated time
|
// If liveDate is not null, use it
|
||||||
toSet = placementDate.withHourOfDay(hour).withMinuteOfHour(0).withSecondOfMinute(0).withMillisOfSecond(0);
|
DateTime liveDate = new DateTime(liveDateTimestamp.getTime());
|
||||||
|
toSet = liveDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Adjust the time
|
||||||
|
toSet = toSet.withHourOfDay(hour).withMinuteOfHour(0).withSecondOfMinute(0).withMillisOfSecond(0);
|
||||||
|
|
||||||
// Update liveDate and time_set flag
|
// Update liveDate and time_set flag
|
||||||
updateStatement.setTimestamp(1, new java.sql.Timestamp(toSet.getMillis()));
|
updateStatement.setTimestamp(1, new java.sql.Timestamp(toSet.getMillis()));
|
||||||
updateStatement.setInt(2, 1); // time_set flag
|
updateStatement.setInt(2, 1); // time_set flag
|
||||||
@@ -125,7 +128,6 @@ public class dbBaneHandler extends dbHandlerBase {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public boolean SET_BANE_DAY_NEW(int dayOffset, int cityUUID) {
|
public boolean SET_BANE_DAY_NEW(int dayOffset, int cityUUID) {
|
||||||
try (Connection connection = DbManager.getConnection();
|
try (Connection connection = DbManager.getConnection();
|
||||||
PreparedStatement getStatement = connection.prepareStatement("SELECT `placementDate`, `liveDate` FROM `dyn_banes` WHERE `cityUUID`=?");
|
PreparedStatement getStatement = connection.prepareStatement("SELECT `placementDate`, `liveDate` FROM `dyn_banes` WHERE `cityUUID`=?");
|
||||||
@@ -136,7 +138,17 @@ public class dbBaneHandler extends dbHandlerBase {
|
|||||||
try (ResultSet rs = getStatement.executeQuery()) {
|
try (ResultSet rs = getStatement.executeQuery()) {
|
||||||
if (rs.next()) {
|
if (rs.next()) {
|
||||||
DateTime placementDate = new DateTime(rs.getTimestamp("placementDate").getTime());
|
DateTime placementDate = new DateTime(rs.getTimestamp("placementDate").getTime());
|
||||||
DateTime liveDate = new DateTime(rs.getTimestamp("liveDate").getTime());
|
Timestamp liveDateTimestamp = rs.getTimestamp("liveDate");
|
||||||
|
|
||||||
|
// Explicitly check if liveDate is null
|
||||||
|
DateTime liveDate;
|
||||||
|
if (liveDateTimestamp == null) {
|
||||||
|
// If liveDate is null, default to placementDate
|
||||||
|
liveDate = placementDate;
|
||||||
|
} else {
|
||||||
|
// If liveDate is not null, use it
|
||||||
|
liveDate = new DateTime(liveDateTimestamp.getTime());
|
||||||
|
}
|
||||||
|
|
||||||
// Calculate the new liveDate while preserving the time component
|
// Calculate the new liveDate while preserving the time component
|
||||||
DateTime updatedDate = placementDate.plusDays(dayOffset)
|
DateTime updatedDate = placementDate.plusDays(dayOffset)
|
||||||
@@ -163,6 +175,7 @@ public class dbBaneHandler extends dbHandlerBase {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public boolean SET_BANE_CAP_NEW(int count, int cityUUID) {
|
public boolean SET_BANE_CAP_NEW(int count, int cityUUID) {
|
||||||
|
|
||||||
try (Connection connection = DbManager.getConnection();
|
try (Connection connection = DbManager.getConnection();
|
||||||
|
|||||||
Reference in New Issue
Block a user