239 lines
5.8 KiB
YAML
239 lines
5.8 KiB
YAML
info:
|
|
name: Elenco contraenti formattati
|
|
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: "8760"
|
|
body:
|
|
type: json
|
|
data: "{\r
|
|
|
|
\ \"userDocument\": \"{{elixBase64EftlDocument}}\", // see the pre-request script\r
|
|
|
|
\ \"userContext\": {\r
|
|
|
|
\ \"lang\": \"IT\",\r
|
|
|
|
\ \"docs\": [\r
|
|
|
|
\ {\r
|
|
|
|
\ \"name\": \"doc1\",\r
|
|
|
|
\ \"quantity\": 3,\r
|
|
|
|
\ \"price\": 123.3\r
|
|
|
|
\ },\r
|
|
|
|
\ {\r
|
|
|
|
\ \"name\": \"doc2\",\r
|
|
|
|
\ \"quantity\": 5,\r
|
|
|
|
\ \"price\": 213.3\r
|
|
|
|
\ },\r
|
|
|
|
\ {\r
|
|
|
|
\ \"name\": \"doc3\",\r
|
|
|
|
\ \"quantity\": 10,\r
|
|
|
|
\ \"price\": 321.3\r
|
|
|
|
\ }\r
|
|
|
|
\ ],\r
|
|
|
|
\ \"docsAsEntities\": [\r
|
|
|
|
\ {\r
|
|
|
|
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
|
|
|
|
\ \"eftlEntity\": {\r
|
|
|
|
\ \"name\": \"doc1\",\r
|
|
|
|
\ \"quantity\": 3,\r
|
|
|
|
\ \"price\": 123.3\r
|
|
|
|
\ }\r
|
|
|
|
\ },\r
|
|
|
|
\ {\r
|
|
|
|
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
|
|
|
|
\ \"eftlEntity\": {\r
|
|
|
|
\ \"name\": \"doc2\",\r
|
|
|
|
\ \"quantity\": 5,\r
|
|
|
|
\ \"price\": 213.3\r
|
|
|
|
\ }\r
|
|
|
|
\ },\r
|
|
|
|
\ {\r
|
|
|
|
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
|
|
|
|
\ \"eftlEntity\": {\r
|
|
|
|
\ \"name\": \"doc3\",\r
|
|
|
|
\ \"quantity\": 10,\r
|
|
|
|
\ \"price\": 321.3\r
|
|
|
|
\ }\r
|
|
|
|
\ }\r
|
|
|
|
\ ],\r
|
|
|
|
\ \"singleEntity\": {\r
|
|
|
|
\ \"eftlEntityType\": \"com.anthesi.elixforms.api.eftl.model.mock.EftlDoc\",\r
|
|
|
|
\ \"eftlEntity\": {\r
|
|
|
|
\ \"name\": \"doc1\",\r
|
|
|
|
\ \"quantity\": 3,\r
|
|
|
|
\ \"price\": 123.3\r
|
|
|
|
\ }\r
|
|
|
|
\ },\r
|
|
|
|
\ \"simpleList\": [\r
|
|
|
|
\ \"s1\",\r
|
|
|
|
\ \"s2\",\r
|
|
|
|
\ \"s3\"\r
|
|
|
|
\ ],\r
|
|
|
|
\ \"docsSize\": 3\r
|
|
|
|
\ }\r
|
|
|
|
}"
|
|
auth: inherit
|
|
|
|
runtime:
|
|
scripts:
|
|
- type: before-request
|
|
code: "// Copy-pasta your EFTL document below inside the template literals (`)\r
|
|
|
|
var eftlDocumentToBeProcessed = `\r
|
|
|
|
[EFTL][HEADER name=\"trimDocument\" value=\"true\" type=\"boolean\" /]\r
|
|
|
|
[VAR name=\"idxNome\" type=\"number\"][% idxNome = 0; %][/VAR]\r
|
|
|
|
[VAR name=\"idxCfPIva\" type=\"number\"][% idxCfPIva = 1; %][/VAR]\r
|
|
|
|
[VAR name=\"idxSede\" type=\"number\"][% idxSede = 2; %][/VAR]\r
|
|
|
|
\r
|
|
|
|
[VAR name=\"elencoContraentiCompleto\" type=\"string\"][% elencoContraentiCompleto = \"\"; %][/VAR]\r
|
|
|
|
\r
|
|
|
|
[VAR name=\"contraenti\" type=\"iterable\"][SPLIT regex=\"\\n\"][TAG]SCHEMAID,341,COL0004,IUQOID, , [/TAG][/SPLIT][/VAR]\r
|
|
|
|
[VAR name=\"countContraenti\" type=\"number\"][SIZE_OF varname=\"contraenti\" /][/VAR]\r
|
|
|
|
[VAR name=\"idxContraente\" type=\"number\"][% idxContraente = 0; %][/VAR]\r
|
|
|
|
\r
|
|
|
|
[!-- Estraggo i dati del primo contraente (ce ne sarà sempre almeno uno) --]\r
|
|
|
|
[VAR name=\"currContraente\" type=\"string\"][VALUE_OF varname=\"contraenti\" index=\"idxContraente\" /][/VAR]\r
|
|
|
|
[VAR name=\"currContraenteSplit\" type=\"iterable\"][SPLIT regex=\", (.*?):\"][TRIM][VALUE_OF varname=\"currContraente\" /][/TRIM][/SPLIT][/VAR]\r
|
|
|
|
[VAR name=\"currContraenteNome\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxNome\" /][/TRIM][/VAR]\r
|
|
|
|
[VAR name=\"currContraenteCfPIva\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxCfPIva\" /][/TRIM][/VAR]\r
|
|
|
|
[VAR name=\"currContraenteSede\" type=\"string\"][TRIM][VALUE_OF varname=\"currContraenteSplit\" index=\"idxSede\" /][/TRIM][/VAR]\r
|
|
|
|
[% elencoContraentiCompleto = currContraenteNome + \" (CF/PIVA: \" + currContraenteCfPIva + \") con sede legale in \" + currContraenteSede; %]\r
|
|
|
|
\r
|
|
|
|
[!-- Se c'è più di un contraente, ciclo su tutti i rimanenti (tutto questo per non avere una \", \" in fondo alla stringa finale...) --]\r
|
|
|
|
[WHILE]\r
|
|
|
|
\ [CONDITION][% idxContraente < countContraenti - 1 %][/CONDITION]\r
|
|
|
|
\ [DO]\r
|
|
|
|
\ [% idxContraente = idxContraente + 1; %]\r
|
|
|
|
\r
|
|
|
|
\ [VAR name=\"currContraente\" type=\"string\"][VALUE_OF varname=\"contraenti\" index=\"idxContraente\" /][/VAR]\r
|
|
|
|
\ [VAR name=\"currContraenteSplit\" type=\"iterable\"][SPLIT regex=\", (.*?):\"][TRIM][VALUE_OF varname=\"currContraente\" /][/TRIM][/SPLIT][/VAR]\r
|
|
|
|
\ [VAR name=\"currContraenteNome\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxNome\" /][/VAR]\r
|
|
|
|
\ [VAR name=\"currContraenteCfPIva\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxCfPIva\" /][/VAR]\r
|
|
|
|
\ [VAR name=\"currContraenteSede\" type=\"string\"][VALUE_OF varname=\"currContraenteSplit\" index=\"idxSede\" /][/VAR]\r
|
|
|
|
\ [% elencoContraentiCompleto = elencoContraentiCompleto + \", \" + currContraenteNome + \" (CF/PIVA: \" + currContraenteCfPIva + \") con sede legale in \" + currContraenteSede; %]\r
|
|
|
|
\ [/DO]\r
|
|
|
|
[/WHILE]\r
|
|
|
|
\r
|
|
|
|
[%= elencoContraentiCompleto %]\r
|
|
|
|
[/EFTL]\r
|
|
|
|
`;\r
|
|
|
|
\r
|
|
|
|
var base64EncodedDocument = btoa(eftlDocumentToBeProcessed);\r
|
|
|
|
\r
|
|
|
|
bru.setVar(\"elixBase64EftlDocument\", base64EncodedDocument);"
|
|
|
|
settings:
|
|
encodeUrl: true
|
|
timeout: 0
|
|
followRedirects: true
|
|
maxRedirects: 5
|