From 982961772170b2365511bf436a19ca6e0eef9ee9 Mon Sep 17 00:00:00 2001 From: Sylvain Kieffer Date: Fri, 4 Oct 2024 14:16:14 +0200 Subject: [PATCH 1/2] Annuler l'ancien parapheur lors d'un nouvel envoi en signature (ESUP-Signature) #204 --- .../esup_stage/service/signature/SignatureService.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java b/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java index aa716402..3e82c4eb 100644 --- a/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java +++ b/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java @@ -202,6 +202,16 @@ public int upload(IdsListDto idsListDto, boolean isAvenant) { avenant.setDocumentId(documentId); avenantJpaRepository.saveAndFlush(avenant); } else { + // Que fait-on si un précédent envoi a déjà été fait avant ? + String previousDocumentId = convention.getDocumentId(); + if (previousDocumentId != null) { + // Pour ESUP-Signature, on supprime l'ancien avant de renseigner le nouveau + if (appSignature == AppSignatureEnum.ESUPSIGNATURE) { + webClient.delete() + .uri(applicationBootstrap.getAppConfig().getEsupSignatureUri() + "/ws/signrequests/soft/" + previousDocumentId) + .retrieve(); + } + } convention.setDateEnvoiSignature(new Date()); convention.setDocumentId(documentId); conventionJpaRepository.saveAndFlush(convention); From cbdcfd34325f3986f0b61e891c98aa74af9c7202 Mon Sep 17 00:00:00 2001 From: kaisersly Date: Thu, 17 Oct 2024 09:48:43 +0200 Subject: [PATCH 2/2] Update SignatureService.java --- .../service/signature/SignatureService.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java b/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java index 3e82c4eb..0b1f9a57 100644 --- a/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java +++ b/src/main/java/org/esup_portail/esup_stage/service/signature/SignatureService.java @@ -197,21 +197,23 @@ public int upload(IdsListDto idsListDto, boolean isAvenant) { .bodyToMono(String.class) .block(); if (documentId != null) { + // Que fait-on si un précédent envoi a déjà été fait avant ? + String previousDocumentId = isAvenant ? avenant.getDocumentId() : convention.getDocumentId(); + if (previousDocumentId != null) { + // Pour ESUP-Signature, on supprime l'ancien avant de renseigner le nouveau + if (appSignature == AppSignatureEnum.ESUPSIGNATURE) { + webClient.delete() + .uri(applicationBootstrap.getAppConfig().getEsupSignatureUri() + "/signrequests/soft/" + previousDocumentId) + .retrieve() + .bodyToMono(String.class) + .block(); + } + } if (isAvenant) { avenant.setDateEnvoiSignature(new Date()); avenant.setDocumentId(documentId); avenantJpaRepository.saveAndFlush(avenant); } else { - // Que fait-on si un précédent envoi a déjà été fait avant ? - String previousDocumentId = convention.getDocumentId(); - if (previousDocumentId != null) { - // Pour ESUP-Signature, on supprime l'ancien avant de renseigner le nouveau - if (appSignature == AppSignatureEnum.ESUPSIGNATURE) { - webClient.delete() - .uri(applicationBootstrap.getAppConfig().getEsupSignatureUri() + "/ws/signrequests/soft/" + previousDocumentId) - .retrieve(); - } - } convention.setDateEnvoiSignature(new Date()); convention.setDocumentId(documentId); conventionJpaRepository.saveAndFlush(convention);