aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDominic Rogetzer <e1627756@student.tuwien.ac.at>2018-05-05 15:58:28 +0200
committerDominic Rogetzer <e01627756@student.tuwien.ac.at>2018-05-05 15:58:28 +0200
commitc3521f4415d5b2f722a25731d5f77be82767e118 (patch)
tree703db2e69165533c713e45581eba580f81edf657 /src
parent378533de5be00afe20ece529c57c65d3cfc7df88 (diff)
downloadsepm-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.java14
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");