summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java
index 7e0f494..808e7e7 100644
--- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java
+++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java
@@ -33,6 +33,7 @@ public class VehicleDatabaseDao implements VehicleDAO {
String status = "ABGEMELDET";
String name = "";
int id = -1;
+ int version = -1;
try {
Connection connection = jdbcConnectionManager.getConnection();
connection.setAutoCommit(false);
@@ -46,30 +47,35 @@ public class VehicleDatabaseDao implements VehicleDAO {
p1.setString(4, vehicle.type().name());
p1.executeUpdate();
-
try (ResultSet keyResultSet = p1.getGeneratedKeys()) {
if (keyResultSet.next()) {
+ version = keyResultSet.getInt(1);
+ }
+ }
+ }
+ try (PreparedStatement p2 =
+ connection.prepareStatement(query2, Statement.RETURN_GENERATED_KEYS)) {
+
+ p2.setInt(1, version);
+ p2.setString(2, status);
+ p2.executeUpdate();
+ try (ResultSet keyResultSet = p2.getGeneratedKeys()) {
+
+ if (keyResultSet.next()) {
id = keyResultSet.getInt(1);
}
}
name = vehicle.type().name() + "-" + id;
}
-
query1 = "UPDATE VehicleVersion SET name=? WHERE id=?";
try (PreparedStatement p3 = connection.prepareStatement(query1)) {
p3.setString(1, name);
- p3.setInt(2, id);
+ p3.setInt(2, version);
p3.executeUpdate();
}
- try (PreparedStatement p2 = connection.prepareStatement(query2)) {
-
- p2.setInt(1, id);
- p2.setString(2, status);
- p2.executeUpdate();
- }
connection.commit();
connection.setAutoCommit(true);
} catch (SQLException e) {
@@ -125,7 +131,7 @@ public class VehicleDatabaseDao implements VehicleDAO {
throw new ElementNotFoundException("Vehicle don“t found");
}
}
- name = vehicle.type().name() + "-" + vehicleVersion;
+ name = vehicle.type().name() + "-" + vehicleID;
query = "UPDATE VehicleVersion SET name=? WHERE id=?";
try (PreparedStatement p = connection.prepareStatement(query)) {