From c14ca4d3b1f430c94bd1ead1c5b8194a93b3814a Mon Sep 17 00:00:00 2001 From: agoer <alexander.goerlitz@student.reutlingen-university.de> Date: Fri, 21 Jun 2024 21:55:09 +0200 Subject: [PATCH] Created the method removeStaff --- opp/core/src/main/java/Repository.java | 2 ++ opp/core/src/main/java/TeamMemberImpl.java | 11 +++------- .../src/main/java/JDBCRepository.java | 20 +++++++++++++++++++ opp/jdbc-repo-impl/src/test/java/Tests.java | 17 +++++++++++++++- 4 files changed, 41 insertions(+), 9 deletions(-) diff --git a/opp/core/src/main/java/Repository.java b/opp/core/src/main/java/Repository.java index 43f6432..92d4df3 100644 --- a/opp/core/src/main/java/Repository.java +++ b/opp/core/src/main/java/Repository.java @@ -96,5 +96,7 @@ public interface Repository { void saveTeamMember(TeamMember TeamMember) throws Exception; + TeamMember removeTeamMember(Id<OperationTeam> operationTeamId, Id<OPStaff> opStaffId) throws Exception; + List<OPStaff> getOperationTeamOPStaffImpl(Id<OperationTeam> operationTeamId); } diff --git a/opp/core/src/main/java/TeamMemberImpl.java b/opp/core/src/main/java/TeamMemberImpl.java index 418bc31..a79d1e8 100644 --- a/opp/core/src/main/java/TeamMemberImpl.java +++ b/opp/core/src/main/java/TeamMemberImpl.java @@ -31,13 +31,8 @@ public class TeamMemberImpl implements TeamMemberService{ return teammember; } - private TeamMember removeStaffimpl(TeamMember.RemoveStaff rs) { - TeamMember teammember = - new TeamMember( - rs.operationTeamId(), - rs.opStaffId(), - Instant.now() - ); - return teammember; + private TeamMember removeStaffimpl(TeamMember.RemoveStaff rs) throws Exception { + return repo.removeTeamMember(rs.operationTeamId(), rs.opStaffId()); + } } diff --git a/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java b/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java index 890f49f..47135cf 100644 --- a/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java +++ b/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java @@ -659,6 +659,26 @@ class JDBCRepository implements Repository } } + public TeamMember removeTeamMember(Id<OperationTeam> operationTeamId, Id<OPStaff> opStaffId) throws Exception{ + + try( + var stmt = conn.createStatement() + ){ + //TODO + /*var sql = + findOPStaff(opStaff.id()).isPresent() ? + updateOPStaffSQL(opStaff) : + insertOPStaffSQL(opStaff);*/ + var sql = "DELETE FROM opStaffsInOperationTeams WHERE operationTeamId = '"+ operationTeamId.value() +"' AND opStaffId = '"+opStaffId.value()+"';"; + + stmt.executeUpdate(sql); + + }catch(SQLException e){ + throw new RuntimeException(e); + } + return null; + } + @Override public List<OPStaff> getOperationTeamOPStaffImpl(Id<OperationTeam> operationTeamId){ diff --git a/opp/jdbc-repo-impl/src/test/java/Tests.java b/opp/jdbc-repo-impl/src/test/java/Tests.java index 4d7e5d0..b196c1b 100644 --- a/opp/jdbc-repo-impl/src/test/java/Tests.java +++ b/opp/jdbc-repo-impl/src/test/java/Tests.java @@ -333,7 +333,7 @@ public final class Tests OperationTeam deleteOperationTeam = operationTeamService.process(deleteCommand); } - @Test + //@Test public void testInsertTeamMember1() throws Exception{ try { @@ -343,6 +343,21 @@ public final class Tests } } + @Test + public void testRemoveTeamMember() throws Exception{ + + var opStaffId = new Id<OPStaff>("4444"); + var operationTeamId = new Id<OperationTeam>("31"); + + TeamMember.RemoveStaff deleteCommand = new TeamMember.RemoveStaff( + operationTeamId, + opStaffId + ); + + TeamMember deleteTeamMember = teamMemberService.process(deleteCommand); + + } + //@Test public void testGetOperationTeam() throws Exception{ -- GitLab