diff options
author | Dominic Rogetzer <e1627756@student.tuwien.ac.at> | 2018-05-05 15:58:28 +0200 |
---|---|---|
committer | Dominic Rogetzer <e01627756@student.tuwien.ac.at> | 2018-05-05 15:58:28 +0200 |
commit | c3521f4415d5b2f722a25731d5f77be82767e118 (patch) | |
tree | 703db2e69165533c713e45581eba580f81edf657 /src | |
parent | 378533de5be00afe20ece529c57c65d3cfc7df88 (diff) | |
download | sepm-groupproject-c3521f4415d5b2f722a25731d5f77be82767e118.tar.gz sepm-groupproject-c3521f4415d5b2f722a25731d5f77be82767e118.tar.xz sepm-groupproject-c3521f4415d5b2f722a25731d5f77be82767e118.zip |
Fix EmployeeDatabaseDao.add: additionally insert employee (not only
employeeVersion) and return correct id
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeeDatabaseDao.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeeDatabaseDao.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeeDatabaseDao.java index fc9a549..900fd0e 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeeDatabaseDao.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/EmployeeDatabaseDao.java @@ -55,9 +55,17 @@ public class EmployeeDatabaseDao implements EmployeeDAO { insertEmployeeVersion.setBoolean(4, employee.isDriver()); insertEmployeeVersion.setBoolean(5, employee.isPilot()); insertEmployeeVersion.executeUpdate(); - ResultSet rs = insertEmployeeVersion.getGeneratedKeys(); - if (rs.next()) { - return rs.getLong(1); + ResultSet resultSetEmployeeVersion = insertEmployeeVersion.getGeneratedKeys(); + if (resultSetEmployeeVersion.next()) { + long versionId = resultSetEmployeeVersion.getLong(1); + + insertEmployee.setLong(1, versionId); + insertEmployee.executeUpdate(); + + ResultSet resultSetEmployee = insertEmployee.getGeneratedKeys(); + if (resultSetEmployee.next()) { + return resultSetEmployee.getLong(1); + } } throw new PersistenceException("Employee was not created"); |