Skip to content

Commit b80cbba

Browse files
committed
Fixe for duplicate key exception for CRM invitations
1 parent 9a7d4e8 commit b80cbba

2 files changed

Lines changed: 5 additions & 6 deletions

File tree

server/src/main/java/invite/crm/CRMController.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,8 @@ public ResponseEntity<Map<String, ConnectionStatusResponse>> connectionStatus(@R
286286
));
287287
return ResponseEntity.ok(responseMap);
288288
} else {
289-
Map<String, ConnectionStatusResponse> responseMap = invitationRepository.findByCrmOrganisationId(crmOrganisationId)
289+
Map<String, ConnectionStatusResponse> responseMap = invitationRepository
290+
.findByCrmOrganisationIdAndStatus(crmOrganisationId, Status.OPEN)
290291
.stream()
291292
.collect(Collectors.toMap(
292293
invitation -> invitation.getCrmContactId(),
@@ -306,7 +307,8 @@ public ResponseEntity<Map<String, ConnectionStatusResponse>> connectionStatus(@R
306307
Map.of(),
307308
crmStatusCode.getStatus(), crmStatusCode.getStatusCode()
308309
));
309-
}
310+
},
311+
(existing, replacement) -> replacement
310312
));
311313
return ResponseEntity.ok(responseMap);
312314
}

server/src/main/java/invite/repository/InvitationRepository.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
package invite.repository;
22

3-
import invite.model.Authority;
43
import invite.model.Invitation;
5-
import invite.model.Organisation;
64
import invite.model.Role;
75
import invite.model.Status;
8-
import invite.model.User;
96
import org.springframework.data.domain.Page;
107
import org.springframework.data.domain.Pageable;
118
import org.springframework.data.domain.Sort;
@@ -31,7 +28,7 @@ public interface InvitationRepository extends JpaRepository<Invitation, Long>, Q
3128

3229
List<Invitation> findByCrmContactIdAndCrmOrganisationIdAndStatus(String crmContactId, String crmOrganisationId, Status status);
3330

34-
List<Invitation> findByCrmOrganisationId(String crmOrganisationId);
31+
List<Invitation> findByCrmOrganisationIdAndStatus(String crmOrganisationId, Status status);
3532

3633
Optional<Invitation> findTopBySubInviteeOrderByCreatedAtDesc(String email);
3734

0 commit comments

Comments
 (0)