diff options
author | Dominic Rogetzer <e1627756@student.tuwien.ac.at> | 2018-05-23 23:42:28 +0200 |
---|---|---|
committer | Tharre <tharre3@gmail.com> | 2018-05-24 03:33:07 +0200 |
commit | 68d85ab02777e30d74637291de7a2e9d8e861306 (patch) | |
tree | aaaf42831e5d01136b11bd2d2a8a079749617d77 /src/main/java/at/ac/tuwien/sepm | |
parent | aa170291e9da8b943828d3ec4e71b914d55319ba (diff) | |
download | sepm-groupproject-68d85ab02777e30d74637291de7a2e9d8e861306.tar.gz sepm-groupproject-68d85ab02777e30d74637291de7a2e9d8e861306.tar.xz sepm-groupproject-68d85ab02777e30d74637291de7a2e9d8e861306.zip |
Fix vehicle-dao [#25963]
1) set registrations in vehicleFromRS
2) side-fix: change 'version' to 'id' in update method as they were previously swapped. Same fix was done today in add method, but not in update
Diffstat (limited to 'src/main/java/at/ac/tuwien/sepm')
-rw-r--r-- | src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/VehicleDatabaseDao.java | 14 |
1 files changed, 9 insertions, 5 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 808e7e7..89a3aca 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 @@ -20,9 +20,12 @@ import org.springframework.stereotype.Repository; public class VehicleDatabaseDao implements VehicleDAO { private final JDBCConnectionManager jdbcConnectionManager; + private RegistrationDatabaseDAO registrationDatabaseDao; - public VehicleDatabaseDao(JDBCConnectionManager j) { + public VehicleDatabaseDao( + JDBCConnectionManager j, RegistrationDatabaseDAO registrationDatabaseDao) { jdbcConnectionManager = j; + this.registrationDatabaseDao = registrationDatabaseDao; } public long add(Vehicle vehicle) throws PersistenceException { @@ -86,7 +89,7 @@ public class VehicleDatabaseDao implements VehicleDAO { @Override public void update(Vehicle vehicle) throws ElementNotFoundException, PersistenceException { - String query = "SELECT id FROM vehicle WHERE version=?"; + String query = "SELECT * FROM vehicle WHERE id=?"; long vehicleID = -1; long vehicleVersion = -1; @@ -100,7 +103,7 @@ public class VehicleDatabaseDao implements VehicleDAO { p.executeQuery(); try (ResultSet rs = p.getResultSet()) { while (rs.next()) { - vehicleID = rs.getLong(1); + vehicleID = rs.getLong("id"); } } } @@ -203,14 +206,15 @@ public class VehicleDatabaseDao implements VehicleDAO { @Override public void remove(long id) throws ElementNotFoundException, PersistenceException {} - private Vehicle vehicleFromRS(ResultSet rs) throws SQLException { + private Vehicle vehicleFromRS(ResultSet rs) throws SQLException, PersistenceException { return Vehicle.builder() - .id(rs.getLong("id")) + .id(rs.getLong("Vehicle.id")) .name(rs.getString("name")) .constructionType(ConstructionType.values()[rs.getInt("constructionType")]) .type(VehicleType.valueOf(rs.getString("type"))) .status(Status.values()[rs.getInt("status")]) .hasNef(rs.getBoolean("hasNef")) + .registrations(registrationDatabaseDao.list(rs.getLong("id"))) .build(); } } |