Streamline management of API collections #1

Merged
administrator merged 43 commits from feature/script-autogenerate-http into main 2026-08-19 14:54:42 +02:00
Showing only changes of commit 2dec14af4a - Show all commits
@@ -40,29 +40,10 @@ runtime:
prepareEftlDocument(String.raw`
[EFTL]
[!--
Codice Fiscale Anno Importo Modalità
RSSNDR76L16I153I 2026 171,46 In orario di lavoro
RSSNDR76L16I153I 2025 514,37 In orario di lavoro
RSSNDR76L16I153I 2024 220,45 In orario di lavoro
RSSNDR76L16I153I 2025 73,48 Fuori orario di lavoro
RSSNDR76L16I153I 2024 122,47 Fuori orario di lavoro
RSSNDR76L16I153I 2023 318,42 Fuori orario di lavoro
LNGSDR63M23L074R 7500 In orario di lavoro
TLTFRC83R30G337R 9.000 Fuori orario di lavoro
LNGSDR63M23L074R 4500 Fuori orario di lavoro
CRSDNL85E53G337Q 870,74 Fuori orario di lavoro
TLTFRC83R30G337R 800 In orario di lavoro
--]
[VAR name="insertCodiciFiscali" type="string"][TAG]SCHEMAID,862,COL0001,IUQOID, ,##[/TAG][/VAR]
[VAR name="insertImporti" type="string"][TAG]SCHEMAID,862,COL0002,IUQOID, ,##[/TAG][/VAR]
[VAR name="insertAnni" type="string"][TAG]SCHEMAID,862,COL0005,IUQOID, ,##[/TAG][/VAR]
[VAR name="insertModalita" type="string"][TAG]SCHEMAID,862,COL0003,IUQOID, ,##[/TAG][/VAR]
[VAR name="codiciFiscaliIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertCodiciFiscali" /][/SPLIT][/VAR]
[VAR name="importiIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertImporti" /][/SPLIT][/VAR]
[VAR name="anniIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertAnni" /][/SPLIT][/VAR]
[VAR name="modalitaIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertModalita" /][/SPLIT][/VAR]
[VAR name="codiciFiscaliIterable" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,862,COL0001,IUQOID, ,##[/TAG][/SPLIT][/VAR]
[VAR name="importiIterable" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,862,COL0002,IUQOID, ,##[/TAG][/SPLIT][/VAR]
[VAR name="anniIterable" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,862,COL0005,IUQOID, ,##[/TAG][/SPLIT][/VAR]
[VAR name="modalitaIterable" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,862,COL0003,IUQOID, ,##[/TAG][/SPLIT][/VAR]
[VAR name="insertCount" type="number"][SIZE_OF varname="codiciFiscaliIterable" /][/VAR]
[VAR name="datiRipartizioneIterable" type="iterable"][SPLIT regex="##" emptyIfBlank="true"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
@@ -72,65 +53,49 @@ runtime:
[VAR name="item4" type="number"][% item4 = 3; %][/VAR]
[VAR name="item5" type="number"][% item5 = 4; %][/VAR]
<html>
<head>
<style>
body {
background-color: white;
}
</style>
</head>
<body>
<p>C: [%= insertCodiciFiscali %]</p>
<p>I: [%= insertImporti %]</p>
<p>A: [%= insertAnni %]</p>
<p>M: [%= insertModalita %]</p>
<table style='width: 95%; margin: 0 auto;'>
<tr>
<th>Nominativo</th>
<th>Codice fiscale</th>
<th>Qualifica</th>
<th>Struttura</th>
<th></th>
<th>Importo (&euro;)</th>
</tr>
[FOR varName="ripartizione" iterable="datiRipartizioneIterable"]
[VAR name="datiIterable" type="iterable"][SPLIT regex=";;" emptyIfBlank="true"][VALUE_OF varname="ripartizione" /][/SPLIT][/VAR]
[VAR name="importoDentro" type="number"][% importoDentro = 0; %][/VAR]
[VAR name="importoFuori" type="number"][% importoFuori = 0; %][/VAR]
[VAR name="codiceFiscaleCorrente"][VALUE_OF varname="datiIterable" index="item2" /][/VAR]
<tr>
<td style='text-align: left;'>[VALUE_OF varname="datiIterable" index="item1" /]</td>
<td>[VALUE_OF varname="datiIterable" index="item2" /]</td>
<td>[VALUE_OF varname="datiIterable" index="item3" /]</td>
<td>[VALUE_OF varname="datiIterable" index="item4" /]</td>
<td></td>
<td style='text-align: right;'>[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT]</td>
</tr>!
[% insertIdx = 0; %]
</tr>
[% insertIdx = 0; firstCfMatch = true; %]
[WHILE threshold="99"]
[CONDITION][% insertIdx < insertCount %][/CONDITION]
[DO]
[VAR name="codiceFiscaleCorrente"][VALUE_OF varname="datiIterable" index="item2" /][/VAR]
[VAR name="codiceFiscale"][VALUE_OF varname="codiciFiscaliIterable" index="insertIdx" /][/VAR]
[VAR name="anno"][VALUE_OF varname="anniIterable" index="insertIdx" /][/VAR]
[VAR name="modalita"][VALUE_OF varname="modalitaIterable" index="insertIdx" /][/VAR]
[VAR name="importo"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR]
[IF]
[CONDITION][% codiceFiscale == codiceFiscaleCorrente &amp;&amp; modalita == "In orario di lavoro" %][/CONDITION]
[CONDITION][% codiceFiscale == codiceFiscaleCorrente && importo != "" && importo != 0 %][/CONDITION]
[THEN]
[VAR name="importoDentro" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR]
![%= anno %]; [VALUE_OF varname="importo" /]
[% modalitaOut = ""; annoOut = ""; suddivisoOut = ""; %]
[IF][CONDITION][% modalita != "" %][/CONDITION][THEN][% modalitaOut = modalita + " "; %][/THEN][/IF]
[IF][CONDITION][% anno != "" %][/CONDITION][THEN][% annoOut = "nel " + anno; %][/THEN][/IF]
[IF][CONDITION][% firstCfMatch == true %][/CONDITION][THEN][% suddivisoOut = "suddiviso come "; %][/THEN][/IF]
<tr>
<td colspan="4" style='text-align: right;'>[%= suddivisoOut %]</td>
<td style='text-align: right;'>[%= modalitaOut %][%= annoOut %]</td>
<td style='text-align: right;'>[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="importo" /][/FORMAT]</td>
</tr>
[IF][CONDITION][% firstCfMatch == true %][/CONDITION][THEN][% firstCfMatch = false; %][/THEN][/IF]
[/THEN]
[/IF]
[IF]
[CONDITION][% codiceFiscale == codiceFiscaleCorrente &amp;&amp; modalita == "Fuori orario di lavoro" %][/CONDITION]
[THEN]
[VAR name="importoFuori" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR]
![%= anno %]; [VALUE_OF varname="importo" /]
[/THEN]
[/IF]
<tr><td colspan="5">[%= codiceFiscaleCorrente %] = [%= codiceFiscale %] and [%= modalita %] per [%= anno %] => [%= importoDentro %]; [%= importoFuori %]</td></tr>
[% insertIdx = insertIdx + 1; %]
[/DO]
[/WHILE]
@@ -138,9 +103,6 @@ runtime:
[/FOR]
</table>
</body>
</html>
[/EFTL]
`);
- type: after-response