diff --git a/opp/core/src/main/java/Repository.java b/opp/core/src/main/java/Repository.java
index 92d4df3d6a9e71da15f05cc7f8f86394f8357be6..6b2355c497cc9a6637c61506dd79155c16228b6b 100644
--- a/opp/core/src/main/java/Repository.java
+++ b/opp/core/src/main/java/Repository.java
@@ -94,7 +94,7 @@ public interface Repository {
 
     Id<TeamMember> teamMemberId();
 
-    void saveTeamMember(TeamMember TeamMember) throws Exception;
+    TeamMember saveTeamMember(TeamMember TeamMember) throws Exception;
 
     TeamMember removeTeamMember(Id<OperationTeam> operationTeamId, Id<OPStaff> opStaffId) throws Exception;
 
diff --git a/opp/core/src/main/java/TeamMemberImpl.java b/opp/core/src/main/java/TeamMemberImpl.java
index a79d1e811544812bda30eb4acda89af61a74b701..9ed491110f5a410b4553b409523e862202ec5cbf 100644
--- a/opp/core/src/main/java/TeamMemberImpl.java
+++ b/opp/core/src/main/java/TeamMemberImpl.java
@@ -21,16 +21,18 @@ public class TeamMemberImpl implements TeamMemberService{
         return repo.getOperationTeamOPStaffImpl(operationTeamId);
     }
 
-    private TeamMember assignStaffimpl(TeamMember.AssignStaff as) {
+    private TeamMember assignStaffimpl(TeamMember.AssignStaff as) throws Exception {
         TeamMember teammember =
                 new TeamMember(
                         as.operationTeamId(),
                         as.opStaffId(),
                         Instant.now()
                 );
-        return teammember;
+        return repo.saveTeamMember(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 141f09df44bf424e5f4c7ee982c7a9b8135f0f2c..a54de5c0b2097d1240da29a3ce09203a23fe507d 100644
--- a/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java
+++ b/opp/jdbc-repo-impl/src/main/java/JDBCRepository.java
@@ -640,7 +640,7 @@ class JDBCRepository implements Repository
       return new Id<TeamMember>(randomUUID().toString()); //TODO findOperation(id).isEmpty() ? id : operationId();
   }
 
-  public void saveTeamMember(TeamMember TeamMember) throws Exception{
+  public TeamMember saveTeamMember(TeamMember TeamMember) throws Exception{
 
     try(
             var stmt = conn.createStatement()
@@ -657,6 +657,7 @@ class JDBCRepository implements Repository
     }catch(SQLException e){
       throw new RuntimeException(e);
     }
+    return TeamMember;
   }
 
   public TeamMember removeTeamMember(Id<OperationTeam> operationTeamId, Id<OPStaff> opStaffId) throws Exception{
diff --git a/opp/jdbc-repo-impl/src/test/java/Tests.java b/opp/jdbc-repo-impl/src/test/java/Tests.java
index 2b7a14d2071a678417e6424106d5b8670186a0dc..591744285499c5d9d89cd38e8885c7723187ec28 100644
--- a/opp/jdbc-repo-impl/src/test/java/Tests.java
+++ b/opp/jdbc-repo-impl/src/test/java/Tests.java
@@ -333,14 +333,21 @@ public final class Tests
     OperationTeam deleteOperationTeam = operationTeamService.process(deleteCommand);
   }
 
-  //@Test
+  @Test
   public void testInsertTeamMember1() throws Exception{
 
-    try {
+    TeamMember.AssignStaff assignCommand = new TeamMember.AssignStaff(
+            new Id<OperationTeam>("31"),
+            new Id<OPStaff>("4444")
+    );
+
+    TeamMember assignStaff = teamMemberService.process(assignCommand);
+
+    /*try {
       repo.saveTeamMember(testTeamMember);
     } catch (Exception e){
       e.printStackTrace();
-    }
+    }*/
   }
 
   //@Test