Skip to content

Commit

Permalink
Issue #429
Browse files Browse the repository at this point in the history
Aggiunto filtro di ricerca per iur al servizio Riscossioni della API-Backoffice.
  • Loading branch information
pintorig committed Dec 9, 2021
1 parent 7e23b9b commit 04b534c
Show file tree
Hide file tree
Showing 4 changed files with 164 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
Feature: Ricerca riscossioni filtrate per tipo

Background:

* callonce read('classpath:utils/common-utils.feature')
* callonce read('classpath:configurazione/v1/anagrafica.feature')

* def ragioneriaBaseurl = getGovPayApiBaseUrl({api: 'ragioneria', versione: 'v2', autenticazione: 'basic'})
* def basicAutenticationHeader = getBasicAuthenticationHeader( { username: idA2A, password: pwdA2A } )
* def pagamentiBaseurl = getGovPayApiBaseUrl({api: 'pagamento', versione: 'v2', autenticazione: 'basic'})

* def pathServizio = '/riscossioni'

Scenario: Filtro su divisione e direzione

* def dataStart = getDateTime()
* def idPendenza = getCurrentTimeMillis()

* def pagamentoPost = read('classpath:test/api/pagamento/v2/pagamenti/post/msg/pagamento-post_spontaneo_entratariferita_bollo.json')

Given url pagamentiBaseurl
And headers basicAutenticationHeader
And path '/pagamenti'
And request pagamentoPost
When method post
Then status 201

* def idSession = response.idSession

Given url ndpsym_url + '/psp'
And path '/eseguiPagamento'
And param idSession = idSession
And param idDominio = idDominio
And param codice = 'R01'
And param riversamento = '0'
When method get

* call read('classpath:utils/pa-notifica-terminazione-byIdSession.feature')

* def idPendenza = getCurrentTimeMillis()
* def pagamentoPost = read('classpath:test/api/pagamento/v2/pagamenti/post/msg/pagamento-post_spontaneo_entratariferita_bollo.json')

Given url pagamentiBaseurl
And headers basicAutenticationHeader
And path '/pagamenti'
And request pagamentoPost
When method post
Then status 201

* def idSession = response.idSession

Given url ndpsym_url + '/psp'
And path '/eseguiPagamento'
And param idSession = idSession
And param idDominio = idDominio
And param codice = 'R01'
And param riversamento = '0'
When method get

* call read('classpath:utils/pa-notifica-terminazione-byIdSession.feature')

* def idPendenza = getCurrentTimeMillis()
* def pagamentoPost = read('classpath:test/api/pagamento/v2/pagamenti/post/msg/pagamento-post_spontaneo_entratariferita_bollo.json')

Given url pagamentiBaseurl
And headers basicAutenticationHeader
And path '/pagamenti'
And request pagamentoPost
When method post
Then status 201

* def idSession = response.idSession

Given url ndpsym_url + '/psp'
And path '/eseguiPagamento'
And param idSession = idSession
And param idDominio = idDominio
And param codice = 'R01'
And param riversamento = '0'
When method get

* call read('classpath:utils/pa-notifica-terminazione-byIdSession.feature')

* def idPendenza = getCurrentTimeMillis()
* def pagamentoPost = read('classpath:test/api/pagamento/v2/pagamenti/post/msg/pagamento-post_spontaneo_entratariferita_bollo.json')

Given url pagamentiBaseurl
And headers basicAutenticationHeader
And path '/pagamenti'
And request pagamentoPost
When method post
Then status 201

* def idSession = response.idSession

Given url ndpsym_url + '/psp'
And path '/eseguiPagamento'
And param idSession = idSession
And param idDominio = idDominio
And param codice = 'R01'
And param riversamento = '0'
When method get

* call read('classpath:utils/pa-notifica-terminazione-byIdSession.feature')

* def dataEnd = getDateTime()

* def iur1 = response.rt.datiPagamento.datiSingoloPagamento[0].identificativoUnivocoRiscossione

# Ho avviato due pagamenti. Verifico i filtri.

Given url backofficeBaseurl
And path pathServizio
And param dataDa = dataStart
And param dataA = dataEnd
And param iur = iur1
And headers gpAdminBasicAutenticationHeader
When method get
Then status 200
And match response ==
"""
{
numRisultati: 2,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[2]'
}
"""
And match response.risultati[0].iur == iur1
And match response.risultati[1].iur == iur1

Given url backofficeBaseurl
And path pathServizio
And param dataDa = dataStart
And param dataA = dataEnd
And param iur = 'XXX'
And headers gpAdminBasicAutenticationHeader
When method get
Then status 200
And match response ==
"""
{
numRisultati: 0,
numPagine: 1,
risultatiPerPagina: 25,
pagina: 1,
prossimiRisultati: '##null',
risultati: '#[0]'
}
"""
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ public Response getRiscossione(@Context UriInfo uriInfo, @Context HttpHeaders ht
@Path("/")

@Produces({ "application/json" })
public Response findRiscossioni(@Context UriInfo uriInfo, @Context HttpHeaders httpHeaders, @QueryParam(value=Costanti.PARAMETRO_PAGINA) @DefaultValue(value="1") Integer pagina, @QueryParam(value=Costanti.PARAMETRO_RISULTATI_PER_PAGINA) @DefaultValue(value="25") Integer risultatiPerPagina, @QueryParam("ordinamento") String ordinamento, @QueryParam("campi") String campi, @QueryParam("idDominio") String idDominio, @QueryParam("idA2A") String idA2A, @QueryParam("idPendenza") String idPendenza, @QueryParam("idUnita") String idUnita, @QueryParam("idTipoPendenza") String idTipoPendenza, @QueryParam("stato") String stato, @QueryParam("dataDa") String dataDa, @QueryParam("dataA") String dataA, @QueryParam("tipo") List<String> tipo, @QueryParam("iuv") String iuv, @QueryParam("direzione") List<String> direzione, @QueryParam("divisione") List<String> divisione, @QueryParam("tassonomia") List<String> tassonomia, @QueryParam("metadatiPaginazione") @DefaultValue(value="true") Boolean metadatiPaginazione, @QueryParam("maxRisultati") @DefaultValue(value="true") Boolean maxRisultati){
public Response findRiscossioni(@Context UriInfo uriInfo, @Context HttpHeaders httpHeaders, @QueryParam(value=Costanti.PARAMETRO_PAGINA) @DefaultValue(value="1") Integer pagina, @QueryParam(value=Costanti.PARAMETRO_RISULTATI_PER_PAGINA) @DefaultValue(value="25") Integer risultatiPerPagina, @QueryParam("ordinamento") String ordinamento, @QueryParam("campi") String campi, @QueryParam("idDominio") String idDominio, @QueryParam("idA2A") String idA2A, @QueryParam("idPendenza") String idPendenza, @QueryParam("idUnita") String idUnita, @QueryParam("idTipoPendenza") String idTipoPendenza, @QueryParam("stato") String stato, @QueryParam("dataDa") String dataDa, @QueryParam("dataA") String dataA, @QueryParam("tipo") List<String> tipo, @QueryParam("iuv") String iuv, @QueryParam("direzione") List<String> direzione, @QueryParam("divisione") List<String> divisione, @QueryParam("tassonomia") List<String> tassonomia, @QueryParam("metadatiPaginazione") @DefaultValue(value="true") Boolean metadatiPaginazione, @QueryParam("maxRisultati") @DefaultValue(value="true") Boolean maxRisultati, @QueryParam("iur") String iur){
this.buildContext();
return this.controller.findRiscossioni(this.getUser(), uriInfo, httpHeaders, pagina, risultatiPerPagina, ordinamento, campi, idDominio, idA2A, idPendenza, idUnita, idTipoPendenza, stato, dataDa, dataA, tipo, iuv, direzione, divisione, tassonomia, metadatiPaginazione, maxRisultati);
return this.controller.findRiscossioni(this.getUser(), uriInfo, httpHeaders, pagina, risultatiPerPagina, ordinamento, campi, idDominio, idA2A, idPendenza, idUnita, idTipoPendenza, stato, dataDa, dataA, tipo, iuv, direzione, divisione, tassonomia, metadatiPaginazione, maxRisultati, iur);
}

}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ public Response getRiscossione(Authentication user, UriInfo uriInfo, HttpHeaders



public Response findRiscossioni(Authentication user, UriInfo uriInfo, HttpHeaders httpHeaders , Integer pagina, Integer risultatiPerPagina, String ordinamento, String campi, String idDominio, String idA2A, String idPendenza, String idUnita, String idTipoPendenza, String stato, String dataDa, String dataA, List<String> tipo, String iuv, List<String> direzione, List<String> divisione, List<String> tassonomia, Boolean metadatiPaginazione, Boolean maxRisultati) {
public Response findRiscossioni(Authentication user, UriInfo uriInfo, HttpHeaders httpHeaders , Integer pagina, Integer risultatiPerPagina, String ordinamento, String campi, String idDominio, String idA2A, String idPendenza, String idUnita, String idTipoPendenza, String stato, String dataDa, String dataA, List<String> tipo, String iuv, List<String> direzione, List<String> divisione, List<String> tassonomia, Boolean metadatiPaginazione, Boolean maxRisultati, String iur) {
String methodName = "findRiscossioni";
String transactionId = ContextThreadLocal.get().getTransactionId();
this.log.debug(MessageFormat.format(BaseController.LOG_MSG_ESECUZIONE_METODO_IN_CORSO, methodName));
Expand Down Expand Up @@ -165,6 +165,7 @@ public Response findRiscossioni(Authentication user, UriInfo uriInfo, HttpHeader
findRiscossioniDTO.setDirezione(direzione);
findRiscossioniDTO.setDivisione(divisione);
findRiscossioniDTO.setTassonomia(tassonomia);
findRiscossioniDTO.setIur(iur);

// Autorizzazione sui domini
List<String> domini = AuthorizationManager.getDominiAutorizzati(user);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3120,6 +3120,7 @@ paths:
- $ref: '#/components/parameters/tassonomie'
- $ref: '#/components/parameters/metadatiPaginazione'
- $ref: '#/components/parameters/maxRisultati'
- $ref: '#/components/parameters/iur'
responses:
'201':
description: Dettaglio della riscossione
Expand Down Expand Up @@ -4204,6 +4205,13 @@ components:
required: false
schema:
type: boolean
iur:
name: iur
in: query
description: Identificativo univoco riscossione
required: false
schema:
type: string
iuv:
name: iuv
in: query
Expand Down

0 comments on commit 04b534c

Please sign in to comment.