diff --git a/src/main/java/me/akito123321/valoStrats/rest/controller/GroupRestAPI.java b/src/main/java/me/akito123321/valoStrats/rest/controller/GroupRestAPI.java index 8808d38..6dcf7ba 100644 --- a/src/main/java/me/akito123321/valoStrats/rest/controller/GroupRestAPI.java +++ b/src/main/java/me/akito123321/valoStrats/rest/controller/GroupRestAPI.java @@ -71,6 +71,7 @@ public class GroupRestAPI { public ResponseEntity createGroup(@RequestBody GroupRequest request) { StratsUser user = getUser(); Group group = new Group(request.name(), user); + group.getMembers().add(user); groupService.saveGroup(group); return ResponseEntity.ok(group); } diff --git a/src/main/java/me/akito123321/valoStrats/schemas/StratsUser.java b/src/main/java/me/akito123321/valoStrats/schemas/StratsUser.java index 9f7891a..9f70807 100644 --- a/src/main/java/me/akito123321/valoStrats/schemas/StratsUser.java +++ b/src/main/java/me/akito123321/valoStrats/schemas/StratsUser.java @@ -3,6 +3,7 @@ package me.akito123321.valoStrats.schemas; import java.util.Collection; import java.util.HashSet; import java.util.List; +import java.util.Objects; import java.util.Set; import org.springframework.security.core.GrantedAuthority; @@ -37,8 +38,7 @@ public class StratsUser implements UserDetails { private String googleUserId; private String displayName; - @ManyToMany(mappedBy = "members") - @ElementCollection(fetch = FetchType.EAGER) + @ManyToMany(mappedBy = "members", fetch = FetchType.EAGER) @JsonIgnore private List groups; @@ -110,5 +110,22 @@ public class StratsUser implements UserDetails { public List getGroups() { return groups; } + + @Override + public int hashCode() { + return Objects.hash(getUsername()); + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + StratsUser other = (StratsUser) obj; + return Objects.equals(getUsername(), other.getUsername()); + } }