Skip to content

Commit

Permalink
Fixes #98
Browse files Browse the repository at this point in the history
Corretto bug GP-702: Sistemate informazione su Descrizione e Id Riscossione nella stampa della Ricevuta Telematica;
  • Loading branch information
pintorig committed Aug 26, 2019
1 parent 3e26568 commit 41dfbd2
Show file tree
Hide file tree
Showing 6 changed files with 62 additions and 13 deletions.
14 changes: 7 additions & 7 deletions jars/core/src/main/java/it/govpay/core/business/Operazioni.java
Original file line number Diff line number Diff line change
Expand Up @@ -624,7 +624,7 @@ public static String esitoAvvisaturaDigitale(IContext ctx){
if(bd.isAutoCommit())
bd.rollback();
aggiornaSondaKO(BATCH_ESITO_AVVISATURA_DIGITALE, e, bd,ctx);
} catch (ServiceException e1) {
} catch (Throwable e1) {
log.error("Aggiornamento sonda fallito: " + e1.getMessage(),e1);
}
return "Esito Avvisatura Digitale#" + e.getMessage();
Expand Down Expand Up @@ -921,8 +921,8 @@ public static String avvisaturaDigitale(IContext ctx){
try {
if(!bd.isAutoCommit()) bd.rollback();
aggiornaSondaKO(BATCH_AVVISATURA_DIGITALE, e, bd,ctx);
} catch (ServiceException e1) {
log.error("Aggiornamento sonda fallito: " + e.getMessage(),e);
} catch (Throwable e1) {
log.error("Aggiornamento sonda fallito: " + e1.getMessage(),e1);
}
return "Avvisatura digitale#" + e.getMessage();
} finally {
Expand Down Expand Up @@ -1090,8 +1090,8 @@ public static String elaborazioneTracciatiPendenze(IContext ctx){
try {
if(!bd.isAutoCommit()) bd.rollback();
aggiornaSondaKO(BATCH_TRACCIATI, e, bd, ctx);
} catch (ServiceException e1) {
log.error("Aggiornamento sonda fallito: " + e.getMessage(),e);
} catch (Throwable e1) {
log.error("Aggiornamento sonda fallito: " + e1.getMessage(),e1);
}
log.error("Non è stato possibile eseguire l'elaborazione dei tracciati", e);
return "Non è stato possibile eseguire l'elaborazione dei tracciati: " + e;
Expand Down Expand Up @@ -1135,8 +1135,8 @@ public static String spedizionePromemoria(IContext ctx){
try {
if(!bd.isAutoCommit()) bd.rollback();
aggiornaSondaKO(BATCH_SPEDIZIONE_PROMEMORIA, e, bd,ctx);
} catch (ServiceException e1) {
log.error("Aggiornamento sonda fallito: " + e.getMessage(),e);
} catch (Throwable e1) {
log.error("Aggiornamento sonda fallito: " + e1.getMessage(),e1);
}
return "Non è stato possibile avviare la spedizione dei promemoria: " + e;
} finally {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import it.govpay.bd.model.Versamento;
import it.govpay.core.dao.pagamenti.dto.LeggiRicevutaDTO;
import it.govpay.core.dao.pagamenti.dto.LeggiRicevutaDTOResponse;
import it.govpay.core.utils.IncassoUtils;
import it.govpay.core.utils.JaxbUtils;
import it.govpay.model.Anagrafica;
import it.govpay.model.RicevutaPagamento;
Expand Down Expand Up @@ -134,7 +135,8 @@ private ElencoVoci getElencoVoci(CtRicevutaTelematica rt, List<CtDatiSingoloPaga
for (CtDatiSingoloPagamentoRT ctDatiSingoloPagamentoRT : datiSingoloPagamento) {
VoceRicevutaTelematicaInput voce = new VoceRicevutaTelematicaInput();

voce.setDescrizione(ctDatiSingoloPagamentoRT.getCausaleVersamento());
String descrizioneVoce = ctDatiSingoloPagamentoRT.getCausaleVersamento();
voce.setDescrizione(IncassoUtils.getCausaleDaDescrizioneIncasso(descrizioneVoce));
voce.setIdRiscossione(ctDatiSingoloPagamentoRT.getIdentificativoUnivocoRiscossione());
voce.setImporto(ctDatiSingoloPagamentoRT.getSingoloImportoPagato().doubleValue());
voce.setStato(ctDatiSingoloPagamentoRT.getSingoloImportoPagato().compareTo(BigDecimal.ZERO) == 0 ? RicevutaTelematicaCostanti.PAGAMENTO_NON_ESEGUITO : RicevutaTelematicaCostanti.PAGAMENTO_ESEGUITO);
Expand Down
10 changes: 10 additions & 0 deletions jars/core/src/main/java/it/govpay/core/utils/IncassoUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ public class IncassoUtils {
private static Pattern patternSingoloRFS = Pattern.compile("^.*RFS[ \\/]([^ \\/]+)[ \\/]?.*$");
private static Pattern patternSingoloRFB = Pattern.compile("^.*RFB[ \\/]([^ \\/]+)[ \\/]?.*$");
private static Pattern patternCumulativo = Pattern.compile("^.*PUR[ \\/]LGPE-RIVERSAMENTO[ \\/]URI[ \\/]([^ \\/]+)[ \\/]?.*$");
private static Pattern patternCausale = Pattern.compile("^.*TXT[ \\/]([ \\/]?.*)$");


public static String getRiferimentoIncassoSingolo(String causale) {
Expand Down Expand Up @@ -37,4 +38,13 @@ public static String getRiferimentoIncasso(String causale) {
else return getRiferimentoIncassoSingolo(causale);
}

public static String getCausaleDaDescrizioneIncasso(String descrizione) {
if(descrizione != null) {
Matcher matcher = patternCausale.matcher(descrizione);
if (matcher.find())
return matcher.group(1);
}

return "";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public class DettaglioRichiesta implements Serializable {
private Date dataOraRichiesta;
private String url;
// private Map<String, String> headers;
private List<Entry<String, String>> headers;
private List<Header> headers;
private String payload;
private String method;

Expand All @@ -44,16 +44,19 @@ public String getUrl() {
public void setUrl(String url) {
this.url = url;
}
public List<Entry<String, String>> getHeaders() {
public List<Header> getHeaders() {
return headers;
}
public void setHeaders(List<Entry<String, String>> headers) {
public void setHeaders(List<Header> headers) {
this.headers = headers;
}
public void setHeadersFromMap(Map<String, String> headers) {
if(headers != null) {
this.headers = new ArrayList<>();
this.headers.addAll(headers.entrySet());

for (Entry<String, String> entry : headers.entrySet()) {
this.headers.add(new Header(entry.getKey(), entry.getValue()));
}
}
}
public String getPayload() {
Expand Down
34 changes: 34 additions & 0 deletions jars/orm/src/main/java/it/govpay/bd/model/eventi/Header.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
package it.govpay.bd.model.eventi;

import java.io.Serializable;

public class Header implements Serializable{

/**
*
*/
private static final long serialVersionUID = 1L;

public Header() {
}

public Header(String nome, String valore) {
this.nome = nome;
this.valore = valore;
}

public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getValore() {
return valore;
}
public void setValore(String valore) {
this.valore = valore;
}
private String nome;
private String valore;
}
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public EventiController(String nomeServizio,Logger log) {

this.serializationConfig = new SerializationConfig();
this.serializationConfig.setExcludes(Arrays.asList("jsonIdFilter"));
this.serializationConfig.setDf(SimpleDateFormatUtils.newSimpleDateFormatDataOreMinutiSecondi());
this.serializationConfig.setDf(SimpleDateFormatUtils.newSimpleDateFormat());
}

public Response findEventi(Authentication user, UriInfo uriInfo, HttpHeaders httpHeaders , Integer pagina, Integer risultatiPerPagina, String idDominio, String iuv, String idA2A, String idPendenza,
Expand Down

0 comments on commit 41dfbd2

Please sign in to comment.