move Liquidazione requests to correct folder

This commit is contained in:
2026-06-17 11:38:48 +02:00
parent 4b5e3269be
commit d49c8ec8a2
30 changed files with 187 additions and 29 deletions
@@ -0,0 +1,72 @@
info:
name: Calcolo ore equivalenti
type: http
seq: 3
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "22737"
disabled: true
- name: x-ef-request-id
value: "22224"
disabled: true
- name: x-ef-request-id
value: "24829"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"useTestCF": false
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="codiceFiscaleRichiedente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="ripartizioniIterable" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,COPPIE_RIPARTIZIONI,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="importoRichiedente" type="number"][% importoRichiedente = 0; %][/VAR]
[FOR varname="coppia" iterable="ripartizioniIterable"]
[VAR name="coppiaiIterable" type="iterable"][SPLIT regex=":"][VALUE_OF varname="coppia" /][/SPLIT][/VAR]
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="coppiaiIterable" index="firstItem" /][/VAR]
[VAR name="importo" type="number"][VALUE_OF varname="coppiaiIterable" index="secondItem" /][/VAR]
[IF]
[CONDITION][% codiceFiscale == codiceFiscaleRichiedente %][/CONDITION]
[THEN][% importoRichiedente = importo; %][/THEN]
[/IF]
[/FOR]
[VAR name="fattore" type="number"][TAG]SCHEMAID,709,COL0120,IUQOID, , ,,0.00000[/TAG][/VAR]
[FORMAT type="number" pattern="integer"][% importoRichiedente * fattore %][/FORMAT]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,78 @@
info:
name: Check richiedente in partecipanti by CodFis
type: http
seq: 4
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21306"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"codiciFiscaliAmmessi": ";XMMPPL74T17E463A;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Utente non ammesso alla compilazione perché non partecipante al contratto!"; %][/VAR]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="rsProponenteCF" type="string"][TAG]GETVALUEBYTAG,RSP_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="responsabili" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="partecipanti" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]
[!-- Hack for the CONTAIN below... --]
[VAR name="richiedenteCFcontain" type="string"][% richiedenteCFcontain = ", CF: " + richiedenteCF + ", Qualifica: "; %][/VAR]
[!-- Il richiedente non deve essere il RS proponente --]
[!-- Il richiedente deve comparire fra i responsabili --]
[!-- Il richiedente deve comparire fra i partecipanti --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][% richiedenteCF == rsProponenteCF %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente non deve compilare la DSAN"; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="responsabili"][VALUE_OF varname="richiedenteCFcontain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "1"; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="partecipanti"][VALUE_OF varname="richiedenteCFcontain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = "2"; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -0,0 +1,80 @@
info:
name: Check richiedente in partecipanti
type: http
seq: 4
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "21223"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"nominativiAmmessi": ";MAMMI Pier Paolo;;"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="checkUtentePartecipante" type="string"][% utentePartecipante = "Utente non ammesso alla compilazione perché non partecipante al contratto!"; %][/VAR]
[VAR name="rsProponenteCognome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="rsProponenteNome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="responsabili" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
[VAR name="partecipanti" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/VAR]
[!-- [VAR name="nominativoUtentePlain" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,IUQOID[/TAG][/VAR] --]
[VAR name="nominativoUtentePlain" type="string"][% nominativoUtentePlain = "mammi Pier Paolo"; %][/VAR]
[!-- Hack for the CONTAIN below... --]
[VAR name="nominativoUtente" type="string"][% nominativoUtente = " " + nominativoUtentePlain + ", CF: "; %][/VAR]
[!-- Il richiedente non deve essere il RS proponente --]
[!-- Il richiedente deve comparire fra i responsabili --]
[!-- Il richiedente deve comparire fra i partecipanti --]
[!-- Il richiedente deve comparire fra i nominativi ammessi (DEBUG) --]
[IF]
[CONDITION][% nominativoUtentePlain == rsProponenteCognome + " " + rsProponenteNome %][/CONDITION]
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente non deve compilare la DSAN"; %][/THEN]
[ELSE IF]
[CONDITION][CONTAINS varname="responsabili"][VALUE_OF varname="nominativoUtente" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="partecipanti"][VALUE_OF varname="nominativoUtente" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[ELSE IF]
[CONDITION][CONTAINS varname="nominativiAmmessi"][VALUE_OF varname="nominativoUtentePlain" /][/CONTAINS][/CONDITION]
[THEN][% checkUtentePartecipante = ""; %][/THEN]
[/ELSE IF]
[/IF]
[%= checkUtentePartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Importo richiedente da Proposta ADVANCED
type: http
seq: 13
seq: 9
http:
method: POST
@@ -1,100 +0,0 @@
info:
name: Notifiche email partecipanti - Body
type: http
seq: 8
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "23761"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style>
.intestazione { padding: 0 0 10px 0; margin: 0; font-family: Arial, Sans-serif; font-size: 16px; font-weight: bold; color: #222; }
.warning { padding: 15px; border: 1px solid transparent; border-radius: 4px; background-position: 15px 15px; color: #8A6D3B; background-color: #FCF8E3; border-color: #FAEBCC; }
.riepilogo { width: 100%; font-family: Arial, Sans-serif; border: 1px solid #ccc; border-width: 1px; background-color: #fff; }
.etichetta { padding: 0 1em 10px 0; font-family: Arial, Sans-serif; font-size: 13px; font-style: normal; color: #888; white-space: nowrap; vertical-align: top; }
.valore { padding-bottom: 10px; font-family: Arial, Sans-serif; font-size: 13px; color: #222; vertical-align: top; }
.footer { background-color: #f6f6f6; color: #888; border-top: 1px solid #ccc; font-family: Arial, Sans-serif; font-size: 11px; }
</style>
</head>
<body>
<table cellspacing="0" cellpadding="8" border="0" summary="" class="riepilogo"><tbody><tr><td><div style="padding: 2px;">
<h3 class="intestazione">Notifica domanda inoltrata di Proposta Ripartizione Utili / Compensi</h3>
<table cellpadding="0" cellspacing="0" border="0"><tbody>
<tr><td colspan="2" class="valore">
<div class="warning">&Egrave; necessario compilare la DSAN collegata all'istanza del modulo "Ripartizione Utili / Compensi - Presentazione Proposta" i cui dati sono riportati nel seguito!</div>
</td></tr>
<tr><td colspan="2" class="valore">Riepilogo dei dati della Proposta</td></tr>
<tr><td colspan="2" class="valore"></td></tr>
<tr>
<td class="etichetta"><div>Domanda n.</div></td>
<td class="valore">[%= requestId %]</td>
</tr>
<tr>
<td class="etichetta"><div>Numero ricevuta</div></td>
<td class="valore">[TAG]SCHEMAID,17,COL0027,IUQOID, , [/TAG]</td>
</tr>
<tr>
<td class="etichetta"><div>Responsabile Scientifico proponente</div></td>
<td class="valore">[TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,ID_OBJECT[/TAG]&nbsp;[TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,ID_OBJECT[/TAG]&nbsp;[TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,ID_OBJECT[/TAG]</td>
</tr>
<tr>
<td class="etichetta"><div>Codice contratto</div></td>
<td class="valore">[TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,ID_OBJECT[/TAG]</td>
</tr>
<tr>
<td class="etichetta"><div>Data di inoltro</div></td>
<td class="valore">[TAG]SCHEMAID,17,COL0013,IUQOID, , [/TAG]</td>
</tr>
<tr>
<td class="etichetta"><div>Modulo</div></td>
<td class="valore">Ripartizione Utili / Compensi - Presentazione Proposta</td>
</tr>
<tr><td colspan="2" class="valore"><br/>Collegati al modulo <a href="https://procedure.unipr.it/rwe2/module_preview.jsp?MODULE_TAG=RIPARTIZIONE_CCT_DSAN">Ripartizione Utili / Compensi - DSAN</a> per compilare e inoltrare la domanda.</td></tr>
</tbody></table>
</div></td></tr></tbody></table>
<table cellspacing="0" cellpadding="8" border="0" summary="" class="riepilogo"><tbody><tr><td class="footer">
Questo messaggio &egrave; stato inoltrato automaticamente dal sistema elixForms. Si prega di <span style="text-decoration: underline">non rispondere via email</span>.
<br>
Per eventuali richieste di supporto, collegarsi all'area utente e utilizzare il servizio di &quot; contatta il supporto&quot;.
</td></tr></tbody></table>
</body>
</html>
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,44 +0,0 @@
info:
name: Notifiche email partecipanti - Subject
type: http
seq: 9
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "23761"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
*** https://procedure.unipr.it - Richiesta compilazione DSAN per Ripartizione Utili / Compensi - Contratto [TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,ID_OBJECT[/TAG] ***
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Nuovo check richiedente DSAN
type: http
seq: 12
seq: 8
http:
method: POST
@@ -1,7 +1,7 @@
info:
name: Ore richiedente da Proposta ADVANCED
type: http
seq: 14
seq: 10
http:
method: POST
@@ -1,68 +0,0 @@
info:
name: Partecipanti HAS DSAN
type: http
seq: 10
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "24075"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="lastUpdatedNominativo" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="hasDSAN" type="string"][% hasDSAN = "1"; %][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[VAR name="lastUpdatedNominativoIterable" type="iterable"][SPLIT regex=" \(CF: "][VALUE_OF varname="lastUpdatedNominativo" /][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoRightIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="lastUpdatedNominativoIterable" index="secondItem" /][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="firstItem" /][/VAR]
[!--
[%= richiedenteCF %]
[%= crlf %]
[%= lastUpdatedNominativoCF %]
[% richiedenteCF = ""; %]
--]
[IF]
[CONDITION][% lastUpdatedNominativoCF != "" && lastUpdatedNominativoCF == richiedenteCF %][/CONDITION]
[THEN][% hasDSAN = "0"; %][/THEN]
[/IF]
[%= hasDSAN %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,79 +0,0 @@
info:
name: Recupero email da array
type: http
seq: 11
http:
method: POST
url: "{{elixFormsApiUrl}}/eftl/process/v1"
headers:
- name: x-requested-with
value: XMLHttpRequest
- name: x-api-key
value: "{{elixFormsWsAuthenticationToken}}"
- name: x-ef-request-id
value: "31397"
body:
type: json
data: |-
{
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
"userContext": {
"lang": "IT",
"crlf": "\r\n",
"DEBUG": "S"
}
}
auth: inherit
runtime:
scripts:
- type: before-request
code: |-
const { prepareEftlDocument } = require("./elixFormsJs.js")
// Copy-pasta your EFTL document below inside the template literals (`)
prepareEftlDocument(String.raw`
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
[!-- Recupera il CF dell'ultimo inserimento --]
[VAR name="lastUpdatedNominativoIterable" type="iterable"][SPLIT regex=" \(CF: "][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoRightIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="lastUpdatedNominativoIterable" index="secondItem" /][/SPLIT][/VAR]
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="firstItem" /][/VAR]
[VAR name="emailPartecipante" type="string"][% emailPartecipante = ""; %][/VAR]
[IF]
[CONDITION][% lastUpdatedNominativoCF != "" && lastUpdatedNominativoCF != richiedenteCF %][/CONDITION]
[THEN]
[VAR name="arrayCfEmailIterable" type="iterable"][SPLIT regex=";"][TAG]GETVALUEBYTAG,SOGGETTI_EMAIL,REQUEST,IUQOID[/TAG][/SPLIT][/VAR]
[FOR varname="coppia" iterable="arrayCfEmailIterable"]
[VAR name="coppiaIterable" type="iterable"][SPLIT regex=":"][VALUE_OF varname="coppia" /][/SPLIT][/VAR]
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="coppiaIterable" index="firstItem" /][/VAR]
[VAR name="email" type="string"][VALUE_OF varname="coppiaIterable" index="secondItem" /][/VAR]
[IF]
[CONDITION][% lastUpdatedNominativoCF == codiceFiscale %][/CONDITION]
[THEN][% emailPartecipante = email; %][/THEN]
[/IF]
[/FOR]
[IF]
[CONDITION][% DEBUG == "S" %][/CONDITION]
[THEN][% emailPartecipante = "pierpaolo.mammi@unipr.it"; %][/THEN]
[/IF]
[/THEN]
[/IF]
[%= emailPartecipante %]
[/EFTL]
`);
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
@@ -1,7 +1,7 @@
info:
name: Richiedente ammesso ADVANCED
type: http
seq: 15
seq: 11
http:
method: POST