diff --git a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/authentication/service/AuthenticationApiServiceImpl.java b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/authentication/service/AuthenticationApiServiceImpl.java index 09d8a552d..4c1dee60d 100644 --- a/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/authentication/service/AuthenticationApiServiceImpl.java +++ b/server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/authentication/service/AuthenticationApiServiceImpl.java @@ -245,7 +245,7 @@ public Mono onUserRegister(User user, boolean isSuperAdmin) { return organizationService.createDefault(user, isSuperAdmin).then(); } - protected Mono onUserLogin(String orgId, User user, String source, String groupId) { + protected Mono onUserLogin(String orgId, User user, String source, String groupIdToJoin) { Mono orgMono; if(commonConfig.getWorkspace().getMode() == WorkspaceMode.ENTERPRISE) { orgMono = organizationService.getOrganizationInEnterpriseMode().map(HasIdAndAuditing::getId); @@ -255,12 +255,12 @@ protected Mono onUserLogin(String orgId, User user, String source, String } orgMono = Mono.just(orgId); } - Mono groupMember = groupMemberService.getGroupMember(groupId, user.getId()).switchIfEmpty(Mono.defer(() -> { + Mono groupMember = groupIdToJoin == null ? Mono.empty() : groupMemberService.getGroupMember(groupIdToJoin, user.getId()).switchIfEmpty(Mono.defer(() -> { GroupMember groupMember1 = GroupMember.builder() - .groupId(groupId) + .groupId(groupIdToJoin) .userId(user.getId()) .build(); - return groupMemberService.addMember(orgId, groupId, user.getId(), MemberRole.MEMBER).thenReturn(groupMember1); + return groupMemberService.addMember(orgId, groupIdToJoin, user.getId(), MemberRole.MEMBER).thenReturn(groupMember1); })); return orgMono.flatMap(orgId2 -> orgApiService.tryAddUserToOrgAndSwitchOrg(orgId2, user.getId())).then(groupMember).then(); }