Skip to content

Commit

Permalink
Merge pull request #38 from consiglionazionaledellericerche/master
Browse files Browse the repository at this point in the history
Add method for create PEC MAIL with parameter:
  • Loading branch information
dirgensa authored Sep 16, 2021
2 parents 1d21685 + 3094b10 commit 7b2516d
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 15 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
<sdi.fatturapa.version>0.0.1</sdi.fatturapa.version>
<ws.client.version>0.0.5</ws.client.version>
<spring.version>5.2.5.RELEASE</spring.version>
<jada.version>7.0.21</jada.version>
<jada.version>7.0.22</jada.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.build.directory>target</project.build.directory>
<sigla.build.number>${maven.build.timestamp}</sigla.build.number>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -256,10 +256,13 @@ public void notificaEsito(UserContext userContext, TipoIntegrazioneSDI tipoInteg
logger.error("Errore applicativo durante la Notifica di Esito Committente, contattare il servizio di HelpDesk!");
throw new ApplicationException("Errore applicativo durante la Notifica di Esito Committente, contattare il servizio di HelpDesk!");
}
/*
storeEsitoDocument(documentoEleTestataBulk, new ByteArrayInputStream(outputStreamNotificaEsito.toByteArray()),
documentoEleTestataBulk.getStatoDocumentoEle().equals(StatoDocumentoEleEnum.RIFIUTATO)?
StorageDocAmmAspect.SIGLA_FATTURE_ATTACHMENT_ESITO_RIFIUTATO.value():
StorageDocAmmAspect.SIGLA_FATTURE_ATTACHMENT_ESITO_ACCETTATO.value());
*/
fatturaService.notificaEsito(authentication.getUserName(), authentication.getPassword(),
documentoEleTestataBulk, notificaEsitoCommittente);
} catch(ApplicationException _ex) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import it.cnr.contab.docamm00.ejb.*;
import it.cnr.contab.docamm00.fatturapa.bulk.*;
import it.cnr.contab.pdd.ws.client.FatturazioneElettronicaClient;
import it.cnr.contab.spring.service.UtilService;
import it.cnr.contab.utenze00.bp.WSUserContext;
import it.cnr.contab.util.StringEncrypter;
import it.cnr.contab.util.StringEncrypter.EncryptionException;
Expand Down Expand Up @@ -86,11 +87,11 @@ public class FatturaPassivaElettronicaService implements InitializingBean {

@Autowired
private StoreService storeService;
@Autowired
private UtilService utilService;

@Value("${pec.sdi.replyTo:}")
private String replyTo;
@Value("${pec.host.port:465}")
private String port;

private String pecHostName, pecURLName, pecSDIAddress, pecSDISubjectFatturaAttivaInvioTerm, pecSDISubjectNotificaPecTerm, pecSDISubjectFatturaPassivaNotificaScartoEsitoTerm,
pecSDIFromStringTerm, pecSDISubjectRiceviFattureTerm, pecSDISubjectFatturaAttivaRicevutaConsegnaTerm, pecSDISubjectFatturaAttivaNotificaScartoTerm, pecSDISubjectFatturaAttivaMancataConsegnaTerm,
Expand Down Expand Up @@ -1033,8 +1034,7 @@ private String extractFileName(BodyPart bodyPart) throws MessagingException,

public void notificaEsito(String userName, String password, DocumentoEleTestataBulk bulk, JAXBElement<NotificaEsitoCommittenteType> notificaEsitoCommittenteType) throws EmailException, XmlMappingException, IOException {
// Create the email message
SimplePECMail email = new SimplePECMail(userName, password, this.port);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(userName, password);
String replyTo = null;
if (bulk.getDocumentoEleTrasmissione() != null) {
replyTo = Optional.ofNullable(this.replyTo).filter(s -> !s.isEmpty()).orElse(bulk.getDocumentoEleTrasmissione().getReplyTo());
Expand All @@ -1058,8 +1058,7 @@ public void notificaEsito(String userName, String password, DocumentoEleTestataB

public void inviaFatturaElettronica(String userName, String password, File fatturaAttivaSigned, String idFattura) throws EmailException, XmlMappingException, IOException {
// Create the email message
SimplePECMail email = new SimplePECMail(userName, password, this.port);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(userName, password);
email.addTo(pecSDIAddress, "SdI - Sistema Di Interscambio");
email.setFrom(userName, userName);
email.setSubject(pecSDISubjectFatturaAttivaInvioTerm + " " + idFattura);
Expand All @@ -1071,8 +1070,7 @@ public void inviaFatturaElettronica(String userName, String password, File fattu

public void inviaFatturaElettronica(String userName, String password, DataSource fatturaAttivaSigned, String idFattura) throws EmailException, XmlMappingException, IOException {
// Create the email message
SimplePECMail email = new SimplePECMail(userName, password, this.port);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(userName, password);
email.addTo(pecSDIAddress, "SdI - Sistema Di Interscambio");
email.setFrom(userName, userName);
email.setSubject(pecSDISubjectFatturaAttivaInvioTerm + " " + idFattura);
Expand All @@ -1092,8 +1090,7 @@ public void inviaPECFornitore(UserContext userContext, DataSource attach, String
new AuthenticationFailedException("Cannot decrypt password");
}
// Create the email message
SimplePECMail email = new SimplePECMail(userName, password, this.port);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(userName, password);
email.addTo(emailPEC);
email.setFrom(userName, userName);
email.setSubject(subject);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
import it.cnr.contab.doccont00.intcass.giornaliera.MovimentoContoEvidenzaBulk;
import it.cnr.contab.siope.plus.bulk.SIOPEPlusEsitoBulk;
import it.cnr.contab.siope.plus.bulk.SIOPEPlusRisultatoBulk;
import it.cnr.contab.spring.service.UtilService;
import it.cnr.contab.utenze00.bp.WSUserContext;
import it.cnr.contab.utenze00.bulk.UtenteBulk;
import it.cnr.contab.util.*;
Expand Down Expand Up @@ -109,6 +110,8 @@ public class DocumentiContabiliService extends StoreService implements Initializ
private OrdinativiSiopePlusService ordinativiSiopePlusService;
@Autowired
private GiornaleDiCassaSiopePlusService giornaleDiCassaSiopePlusService;
@Autowired
private UtilService utilService;

@Value("${sign.document.png.url}")
private String signDocumentURL;
Expand Down Expand Up @@ -272,8 +275,7 @@ public void inviaDistintaPEC1210(List<String> nodes) throws EmailException, Appl

public void inviaDistintaPEC1210(List<String> nodes, boolean isNoEuroOrSepa, String nrDistinta) throws EmailException, ApplicationException, IOException {
// Create the email message
SimplePECMail email = new SimplePECMail(pecMailFromBanca, pecMailFromBancaPassword);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(pecMailFromBanca, pecMailFromBancaPassword);
String subject = "";
if (isNoEuroOrSepa) {
subject += "Bonifici Estero - ";
Expand Down Expand Up @@ -310,8 +312,7 @@ public void inviaDistintaPEC1210(List<String> nodes, boolean isNoEuroOrSepa, Str

public void inviaDistintaPEC(List<String> nodes, boolean isNoEuroOrSepa, String nrDistinta, boolean isDistintaStipendi) throws EmailException, ApplicationException, IOException {
// Create the email message
SimplePECMail email = new SimplePECMail(pecMailFromBanca, pecMailFromBancaPassword);
email.setHostName(pecHostName);
SimplePECMail email = utilService.createSimplePECMail(pecMailFromBanca, pecMailFromBancaPassword);
String subject = "";
if (isDistintaStipendi) {
email.addTo(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import it.cnr.jada.DetailedRuntimeException;
import it.cnr.jada.UserContext;
import it.cnr.jada.util.ejb.EJBCommonServices;
import it.cnr.jada.util.mail.SimplePECMail;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.InitializingBean;
Expand All @@ -45,6 +46,18 @@ public class UtilService implements InitializingBean {
@Value("${help.base.url}")
private String helpBaseURL;

@Value("${pec.host.name}")
private String pecHostName;
@Value("${pec.host.sslSmtpPort}")
private String sslSmtpPort;
@Value("${pec.host.sSLOnConnect}")
private Boolean sSLOnConnect;
@Value("${pec.host.smtpPort}")
private Integer smtpPort;
@Value("${pec.host.startTLSEnabled}")
private Boolean startTLSEnabled;


public void executeAggiornaGECO() {
UserContext userContext = new CNRUserContext(GECO, null, LocalDate.now().getYear(), null, null, null);
try {
Expand Down Expand Up @@ -84,4 +97,14 @@ public Integer getAnniResidui() {
public String getHelpBaseURL() {
return helpBaseURL;
}

public SimplePECMail createSimplePECMail(String userName, String password) {
SimplePECMail simplePECMail = new SimplePECMail(userName, password);
simplePECMail.setHostName(pecHostName);
Optional.ofNullable(sslSmtpPort).ifPresent(s -> simplePECMail.setSslSmtpPort(s));
Optional.ofNullable(sSLOnConnect).ifPresent(b -> simplePECMail.setSSLOnConnect(b));
Optional.ofNullable(smtpPort).ifPresent(i -> simplePECMail.setSmtpPort(i));
Optional.ofNullable(startTLSEnabled).ifPresent(b -> simplePECMail.setStartTLSEnabled(b));
return simplePECMail;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,10 @@ siopeplus.cron.expression=0 30 5-23 * * ?
contratto.flows.folder=flows-demo

pec.host.name=smtps.pec.aruba.it
pec.host.sslSmtpPort=465
pec.host.sSLOnConnect=true
pec.host.smtpPort=
pec.host.startTLSEnabled=

pec.mail.imap.host=imaps.pec.aruba.it
pec.mail.imap.auth=true
Expand Down

0 comments on commit 7b2516d

Please sign in to comment.