From 64cee51f24c29de7fa36d0c60216b977aff6b935 Mon Sep 17 00:00:00 2001 From: Koen Metsu Date: Thu, 7 Dec 2023 16:50:21 +0100 Subject: [PATCH] fix: or-2006 add extra duplicate check closer to persisting event --- .../RegistreerVerenigingUitKboCommandHandler.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/AssociationRegistry/Acties/RegistreerVerenigingUitKbo/RegistreerVerenigingUitKboCommandHandler.cs b/src/AssociationRegistry/Acties/RegistreerVerenigingUitKbo/RegistreerVerenigingUitKboCommandHandler.cs index f5761d227..13329f79c 100644 --- a/src/AssociationRegistry/Acties/RegistreerVerenigingUitKbo/RegistreerVerenigingUitKboCommandHandler.cs +++ b/src/AssociationRegistry/Acties/RegistreerVerenigingUitKbo/RegistreerVerenigingUitKboCommandHandler.cs @@ -35,7 +35,7 @@ public async Task Handle(CommandEnvelope CheckForDuplicate(KboNummer kboNummer) @@ -45,7 +45,7 @@ private async Task CheckForDuplicate(KboNummer kboNummer) return duplicateKbo is not null ? DuplicateKboFound.WithVcode(duplicateKbo.VCode!) : Result.Success(); } - private async Task RegistreerVereniging(VerenigingVolgensKbo verenigingVolgensKbo, CommandMetadata messageMetadata, CancellationToken cancellationToken) + private async Task RegistreerVereniging(VerenigingVolgensKbo verenigingVolgensKbo, CommandMetadata messageMetadata, CancellationToken cancellationToken) { var vCode = await _vCodeService.GetNext(); @@ -53,8 +53,12 @@ private async Task RegistreerVereniging(VerenigingVolgensKbo vere vCode, verenigingVolgensKbo); + var duplicateResult = await CheckForDuplicate(verenigingVolgensKbo.KboNummer); + + if (duplicateResult.IsFailure()) return duplicateResult; + var result = await _verenigingsRepository.Save(vereniging, messageMetadata, cancellationToken); - return CommandResult.Create(vCode, result); + return Result.Success(CommandResult.Create(vCode, result)); } }