diff --git a/app/src/main/resources/config/core-config.properties b/app/src/main/resources/config/core-config.properties index 5d9375b92..13911ca3e 100644 --- a/app/src/main/resources/config/core-config.properties +++ b/app/src/main/resources/config/core-config.properties @@ -4,7 +4,7 @@ mscore.logoPath = ${PAGOPA_LOGO_URL:resources/logo.png} mscore.infoCamereEnable = ${INFOCAMERE_ENABLE:false} mscore.sender-mail = ${MAIL_SENDER_ADDRESS:test@test.it} mscore.destination-mails = ${DESTINATION_MAILS:} - +mscore.enableSendDelegationMail=${SEND_DELEGATION_PEC:false} mscore.sendEmailToInstitution = ${ONBOARDING_SEND_EMAIL_TO_INSTITUTION:false} mscore.institutionAlternativeEmail = ${ONBOARDING_INSTITUTION_ALTERNATIVE_EMAIL} mscore.onboarding-expiring-date = ${ONBOARDING_EXPIRING_DATE:60} diff --git a/connector-api/src/main/java/it/pagopa/selfcare/mscore/config/CoreConfig.java b/connector-api/src/main/java/it/pagopa/selfcare/mscore/config/CoreConfig.java index 10266e9a2..ef1e2ad8b 100644 --- a/connector-api/src/main/java/it/pagopa/selfcare/mscore/config/CoreConfig.java +++ b/connector-api/src/main/java/it/pagopa/selfcare/mscore/config/CoreConfig.java @@ -22,4 +22,5 @@ public class CoreConfig { private boolean sendEmailToInstitution; private Integer onboardingExpiringDate; private boolean infoCamereEnable; + private boolean enableSendDelegationMail; } diff --git a/core/src/main/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImpl.java b/core/src/main/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImpl.java index 6ba22eaff..c7e813e60 100644 --- a/core/src/main/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImpl.java +++ b/core/src/main/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImpl.java @@ -47,10 +47,12 @@ public void sendMailForDelegation(String institutionName, String productId, Stri userNotificationService.sendDelegationUserNotification(userDestinationMail, mailParametersMapper.getDelegationUserNotificationPath(), product.getTitle(), mailParameters); log.info("create-delegation-user-email-notification :: Email successful sent"); - List institutionDestinationMail = getDestinationMails(partnerInstitution); - log.info(DESTINATION_MAIL_LOG, institutionDestinationMail); - emailConnector.sendMail(mailParametersMapper.getDelegationNotificationPath(), institutionDestinationMail, null, product.getTitle(), mailParameters, null); - log.info("create-delegation-institution-email-notification :: Email successful sent"); + if (coreConfig.isEnableSendDelegationMail()) { + List institutionDestinationMail = getDestinationMails(partnerInstitution); + log.info(DESTINATION_MAIL_LOG, institutionDestinationMail); + emailConnector.sendMail(mailParametersMapper.getDelegationNotificationPath(), institutionDestinationMail, null, product.getTitle(), mailParameters, null); + log.info("create-delegation-institution-email-notification :: Email successful sent"); + } } catch (Exception e) { log.error("create-delegation-email-notification :: Impossible to send email. Error: {}", e.getMessage(), e); } diff --git a/core/src/test/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImplTest.java b/core/src/test/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImplTest.java index d70cc2e0b..caba0e430 100644 --- a/core/src/test/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImplTest.java +++ b/core/src/test/java/it/pagopa/selfcare/mscore/core/MailNotificationServiceImplTest.java @@ -90,6 +90,7 @@ void sendNotificationDelegationMail() { when(institutionConnector.findById(anyString())).thenReturn(institution); when(userApiConnector.getUserEmails(institution.getId(), product.getId())).thenReturn(userEmails); when(coreConfig.isSendEmailToInstitution()).thenReturn(true); + when(coreConfig.isEnableSendDelegationMail()).thenReturn(true); Assertions.assertDoesNotThrow(() -> notificationService.sendMailForDelegation("institutionName", "productId", "partnerId")); }