From 2fd619bcf91c85411bbb4796fa63c2abacad9871 Mon Sep 17 00:00:00 2001
From: Anders Austlid <andemau@ntnu.no>
Date: Mon, 1 May 2023 14:21:46 +0200
Subject: [PATCH] Group creation now takes care of unmarking old primary group

---
 .../v233/SmartMat/controller/group/GroupController.java    | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/GroupController.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/GroupController.java
index f29dfed7..d14375f5 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/GroupController.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/controller/group/GroupController.java
@@ -96,6 +96,7 @@ public class GroupController {
 
         Group group = new Group();
         group.setGroupName(groupRequest.groupName());
+
         Group createdGroup = groupService.createGroup(group);
 
         User user = optionalUser.get();
@@ -105,6 +106,12 @@ public class GroupController {
                 .groupId(createdGroup.getGroupId())
                 .build();
 
+        Optional<UserGroupAsso> oldPrimaryOptional = groupService.findPrimaryUserGroupAssoForUser(user.getUsername());
+        if(oldPrimaryOptional.isPresent()){
+            oldPrimaryOptional.get().setPrimaryGroup(false);
+            groupService.updateUserGroupAsso(oldPrimaryOptional.get());
+        }
+
         createdGroup.addUser(UserGroupAsso.builder()
                 .id(userGroupId)
                 .primaryGroup(true)
-- 
GitLab