move bruno collections in own folder
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
elixFormsWsAuthenticationToken=
|
||||
elixFormsApiPassword=
|
||||
elixFormsApiUsername=
|
||||
@@ -0,0 +1,255 @@
|
||||
info:
|
||||
name: Login
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl}}/authentication/login/v1"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"username": "{{elixFormsApiUsername}}",
|
||||
"password": "{{elixFormsApiPassword}}"
|
||||
}
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: after-response
|
||||
code: |-
|
||||
test("Status code is 200", function () {
|
||||
expect(res.getStatus()).to.equal(200);
|
||||
var jsonData = res.getBody();
|
||||
bru.setVar("elixFormsApiAuthToken", jsonData.value.authToken);
|
||||
});
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Login - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/authentication/login/v1"
|
||||
method: POST
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: password
|
||||
value: "{{elixFormsApiPassword}}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"resultNumber": 1,
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.1.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "9d0ba2e7-8e98-4a7a-9fa1-67d421d0aa1e",
|
||||
"version": "3.0.0",
|
||||
"matchingEntitiesSize": 1,
|
||||
"authToken": "2coDKQPTPJAQxWLSNRItM="
|
||||
}
|
||||
}
|
||||
- name: Login - Failure
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/authentication/login/v1"
|
||||
method: POST
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: password
|
||||
value: "{{elixFormsApiPassword}}x"
|
||||
response:
|
||||
statusText: "401"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-language
|
||||
value: ""
|
||||
- name: content-type
|
||||
value: text/html;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "1074"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: html
|
||||
data: |-
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>Payara Server 6.2025.1 #badassfish - Error report</title>
|
||||
<style type="text/css">
|
||||
<!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}HR {color : #525D76;}-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>HTTP Status 401 - Unauthorized</h1>
|
||||
<hr/>
|
||||
<p>
|
||||
<b>type</b> Status report
|
||||
</p>
|
||||
<p>
|
||||
<b>message</b>Unauthorized
|
||||
</p>
|
||||
<p>
|
||||
<b>description</b>This request requires HTTP authentication.
|
||||
</p>
|
||||
<hr/>
|
||||
<h3>Payara Server 6.2025.1 #badassfish</h3>
|
||||
</body>
|
||||
</html>
|
||||
- name: Login
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/authentication/login/v1"
|
||||
method: POST
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: password
|
||||
value: "{{elixFormsApiPassword}}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"resultNumber": 1,
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "31ee57d5-01b9-4fce-94e2-a224282c08ec",
|
||||
"version": "3.0.0",
|
||||
"matchingEntitiesSize": 1,
|
||||
"authToken": "Z8uKwrp86iSWykuRlRM1k="
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,165 @@
|
||||
info:
|
||||
name: Logout
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl}}/authentication/:username/logout/v1"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: path
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Logout - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/authentication/:username/logout/v1"
|
||||
method: POST
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "4db3952b-ee30-4614-994d-db161b5b833c",
|
||||
"version": "3.0.0",
|
||||
"matchingEntitiesSize": 0
|
||||
}
|
||||
}
|
||||
- name: Logout - Failure
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/authentication/:username/logout/v1"
|
||||
method: POST
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
response:
|
||||
statusText: "401"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-store, no-transform
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: www-authenticate
|
||||
value: Bearer realm="https://procedure.unipr.it"
|
||||
- name: content-language
|
||||
value: ""
|
||||
- name: content-type
|
||||
value: text/html;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "1074"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: html
|
||||
data: |-
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>Payara Server 6.2025.1 #badassfish - Error report</title>
|
||||
<style type="text/css">
|
||||
<!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}HR {color : #525D76;}-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>HTTP Status 401 - Unauthorized</h1>
|
||||
<hr/>
|
||||
<p>
|
||||
<b>type</b> Status report
|
||||
</p>
|
||||
<p>
|
||||
<b>message</b>Unauthorized
|
||||
</p>
|
||||
<p>
|
||||
<b>description</b>This request requires HTTP authentication.
|
||||
</p>
|
||||
<hr/>
|
||||
<h3>Payara Server 6.2025.1 #badassfish</h3>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Authorization
|
||||
type: folder
|
||||
seq: 6
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
@@ -0,0 +1,101 @@
|
||||
info:
|
||||
name: Get appointments
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
http:
|
||||
method: GET
|
||||
url: "{{elixFormsApiUrl}}/calendar/appointments/get/v1?username={{elixFormsApiUsername}}&tag=xyz"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: tag
|
||||
value: xyz
|
||||
type: query
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Get appointments - Not enabled?
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/calendar/appointments/get/v1?username={{elixFormsApiUsername}}&tag=xyz"
|
||||
method: GET
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: tag
|
||||
value: xyz
|
||||
type: query
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "ERROR",
|
||||
"description": "Errore 404 invocando il servizio \"exportAppointments\"",
|
||||
"complete": true,
|
||||
"globalStatus": "ERROR",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "ERROR",
|
||||
"description": "Errore 404 invocando il servizio \"exportAppointments\"",
|
||||
"detailStatus": "ERROR"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "6e65e591-3c79-4f54-98ca-aad877b309e0",
|
||||
"version": "3.9.2.17",
|
||||
"resultSize": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
info:
|
||||
name: Set acquired appointments
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
http:
|
||||
method: PUT
|
||||
url: "{{elixFormsApiUrl}}/calendar/appointments/set-acquired/v1"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: tag
|
||||
value: xyz
|
||||
- name: date
|
||||
value: "{{elixSetAcquiredAppointmentDate}}"
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: before-request
|
||||
code: bru.setVar("elixSetAcquiredAppointmentDate", JSON.stringify(new Date().toISOString()));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Set acquired appointments - No timestamp?
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/calendar/appointments/set-acquired/v1"
|
||||
method: PUT
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: tag
|
||||
value: xyz
|
||||
- name: date
|
||||
value: "{{elixSetAcquiredAppointmentDate}}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "ERROR",
|
||||
"description": "No timestamp provided in form params",
|
||||
"complete": false,
|
||||
"globalStatus": "ERROR",
|
||||
"resultNumber": -1,
|
||||
"uuid": "58bbd1b4-6abc-474a-89ac-ac55d203982b",
|
||||
"version": "3.0.0",
|
||||
"resultSize": 0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Calendar 2.0
|
||||
type: folder
|
||||
seq: 12
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+142
@@ -0,0 +1,142 @@
|
||||
info:
|
||||
name: Acquisizione istanze elaborate da processo esterno
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/set-acquired"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: request_id
|
||||
value: "7007"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: outcome
|
||||
value: OK
|
||||
description: OK, KO
|
||||
- name: resultCode
|
||||
value: VAL
|
||||
description: 'possibili valori: VAL("Validata"), IMP("Importata"), IMPW("Impostata con warning"), KO("Rifiutata")'
|
||||
- name: resultDescription
|
||||
value: ""
|
||||
description: descrizione esito processo esterno
|
||||
disabled: true
|
||||
- name: resultReceiptId
|
||||
value: "123"
|
||||
description: id pratica processo esterno di riferimento
|
||||
- name: resultTimestamp
|
||||
value: ""
|
||||
description: timestamp di riferimento dell'elaborazione pratica dal processo esterno in formato standard ISO 8601. Se non impostata viene inizializzata con la data/ora server corrente
|
||||
disabled: true
|
||||
- name: properties
|
||||
value: ""
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json
|
||||
disabled: true
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Set Request Status - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/set-status/v1"
|
||||
method: POST
|
||||
params:
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: requestStatus
|
||||
value: SUBMITTED
|
||||
description: "nuovo stato della request, possibili valori: SUBMITTED, PROCESSED"
|
||||
- name: swfOptionKey
|
||||
value: "1"
|
||||
description: indice del valore associato al SWF che si desidera impostare (???)
|
||||
- name: properties
|
||||
value: '[{"key":"COL0004","value":"cambio stato manuale"},{"key":"COL0002","value":"31-03-2025"}]'
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json (url-encoding richiesto in UTF-8)
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "Report with id 20219 was generated",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "Report with id 20219 was generated",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "a0cb7057-f4ea-4a12-9cb5-23cac7b651fe",
|
||||
"version": "3.7.0.6",
|
||||
"acquiredRequestReceiptId": "20219",
|
||||
"acquiredRequestsSize": 1
|
||||
}
|
||||
}
|
||||
|
||||
docs: |-
|
||||
Viene ritornato l'esito dell'operazione di storicizzazione si elixForms©.
|
||||
La ricezione di "ok" o "ko" provocherà una decisione nel workflow semplice (analogo a quello di elixFlow©) in base a quanto disposto in elixForms per il modulo.
|
||||
Esempio="OK","VAL","..." imposta lo stato di workflow semplice corrispondente imposta lo step ad "evasa" notifica email
|
||||
Esempio="KO","KO","..." imposta lo stato di workflow semplice corrispondente non cambia lo stato dello step
|
||||
@@ -0,0 +1,143 @@
|
||||
info:
|
||||
name: Clone Request
|
||||
type: http
|
||||
seq: 8
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/clone?username={{elixFormsApiUsername}}"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-key
|
||||
value: "{{elixFormsWsAuthenticationToken}}"
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "7012"
|
||||
type: path
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"clientUsername": "MMMPPL74T17E463A", // string, <(*) username dell'utente che richiede la clonazione>
|
||||
"cloningReason": "Request cloning test", // string, <(*) motivazione della copia>
|
||||
"cloningDate": "{{elixRequestCloningDate}}", // dateTime, <(*) data in formato ISO: "2021-05-18T00:00:00">
|
||||
"cloneLogId": null // number, <generic id dello storico di clonazione eventualmente da aggiornare; se non specificato viene automaticamente generato un nuovo log (Scheda "RW2 - Clone")>
|
||||
}
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: before-request
|
||||
code: |-
|
||||
var currentDate = new Date().toISOString();
|
||||
|
||||
console.log(currentDate);
|
||||
|
||||
bru.setVar("elixRequestCloningDate", JSON.stringify(currentDate));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Clone Request - Error
|
||||
request:
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/clone?username={{elixFormsApiUsername}}"
|
||||
method: POST
|
||||
headers:
|
||||
- name: x-api-key
|
||||
value: "{{elixFormsWsAuthenticationToken}}"
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "7007"
|
||||
type: path
|
||||
body:
|
||||
type: json
|
||||
data: "{\r
|
||||
|
||||
\ \"clientUsername\": \"MMMPPL74T17E463A\", // string, <(*) username dell'utente che richiede la clonazione>\r
|
||||
|
||||
\ \"cloningReason\": \"Request cloning test\", // string, <(*) motivazione della copia>\r
|
||||
|
||||
\ \"cloningDate\": {{elixRequestCloningDate}}, // dateTime, <(*) data in formato ISO: \"2021-05-18T00:00:00\">\r
|
||||
|
||||
\ \"cloneLogId\": null // number, <generic id dello storico di clonazione eventualmente da aggiornare; se non specificato viene automaticamente generato un nuovo log (Scheda \"RW2 - Clone\")>\r
|
||||
|
||||
}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "ERROR",
|
||||
"description": "Unmanaged exception thrown. Contact technical support.",
|
||||
"complete": false,
|
||||
"globalStatus": "ERROR",
|
||||
"resultNumber": -1,
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"complete": false,
|
||||
"serviceVersion": "V1",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "500",
|
||||
"description": "[Internal Server Error] - IllegalArgumentException: No entity manager defined for named query \"lookupGalleryInfoByMetadataIdAndSchemaField\" of class \"com.anthesi.elixforms.core.entity.multitenancy.upload.GalleryInfoEntity\"",
|
||||
"detailStatus": "ERROR"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "472dd247-f034-43c1-9633-32ea5cd5d817",
|
||||
"version": "3.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
docs: La chiamata assume che l'istanza in oggetto non sia in corso di compilazione.
|
||||
+1210
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+124
@@ -0,0 +1,124 @@
|
||||
info:
|
||||
name: Set Request Status (OLD)
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/set-status/v1"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: requestStatus
|
||||
value: SUBMITTED
|
||||
description: "nuovo stato della request, possibili valori: SUBMITTED, PROCESSED"
|
||||
- name: swfOptionKey
|
||||
value: "1"
|
||||
description: indice del valore associato al SWF che si desidera impostare (???)
|
||||
- name: properties
|
||||
value: '[{"key":"COL0004","value":"cambio stato manuale"},{"key":"COL0002","value":"31-03-2025"}]'
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json (url-encoding richiesto in UTF-8)
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Set Request Status - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/set-status/v1"
|
||||
method: POST
|
||||
params:
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: requestStatus
|
||||
value: SUBMITTED
|
||||
description: "nuovo stato della request, possibili valori: SUBMITTED, PROCESSED"
|
||||
- name: swfOptionKey
|
||||
value: "1"
|
||||
description: indice del valore associato al SWF che si desidera impostare (???)
|
||||
- name: properties
|
||||
value: '[{"key":"COL0004","value":"cambio stato manuale"},{"key":"COL0002","value":"31-03-2025"}]'
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json (url-encoding richiesto in UTF-8)
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "Report with id 20219 was generated",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "Report with id 20219 was generated",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "a0cb7057-f4ea-4a12-9cb5-23cac7b651fe",
|
||||
"version": "3.7.0.6",
|
||||
"acquiredRequestReceiptId": "20219",
|
||||
"acquiredRequestsSize": 1
|
||||
}
|
||||
}
|
||||
+127
@@ -0,0 +1,127 @@
|
||||
info:
|
||||
name: "Set Request Status: Register result (OLD)"
|
||||
type: http
|
||||
seq: 3
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/swf/columns;{{elixRegisterResultColumns}}/v1/?username={{elixFormsApiUsername}}"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: "Set Request Status: Register result - Success"
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/swf/columns;{{elixRegisterResultColumns}}/v1/?username={{elixFormsApiUsername}}"
|
||||
method: POST
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "Report with id 26507 was generated",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "Report with id 26507 was generated",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "b5cb8917-5aeb-4497-a619-64e3b9d73148",
|
||||
"version": "3.9.2.17",
|
||||
"acquiredRequestReceiptId": "26507",
|
||||
"acquiredRequestsSize": 1
|
||||
}
|
||||
}
|
||||
|
||||
docs: |-
|
||||
The elixRegisterResultColumns variable must be built like the following:
|
||||
|
||||
- one index=value couple for every field in the SWF schema that must be updated, where index is the "name" of the schema field (e.g.: COL0003, if the field is found in the SWF schema) and the value is the string content that must be assigned
|
||||
- each couple must be separated by a semi-period (\`;\` character)
|
||||
|
||||
|
||||
For example, suppose the request has a SWF schema with ID 356, containing:
|
||||
|
||||
- State = COL0001
|
||||
- Date = COL0002
|
||||
- Email = COL0003
|
||||
- Message = COL0004
|
||||
|
||||
|
||||
If you want to change the CURRENT state's date and message values, you will put into the variable the following value:
|
||||
|
||||
`COL0002=31-03-2025;COL0004=this is the new message`
|
||||
|
||||
Keep in mind that Postman automatically encodes the parameter, so it's allowed to use spaces and other symbols (maybe?).
|
||||
+129
@@ -0,0 +1,129 @@
|
||||
info:
|
||||
name: Set Request Status
|
||||
type: http
|
||||
seq: 5
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/set-status"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: request_id
|
||||
value: "24348"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: requestStatus
|
||||
value: SUBMITTED
|
||||
description: "nuovo stato della request, possibili valori: SUBMITTED, PROCESSED"
|
||||
- name: swfOptionKey
|
||||
value: "1"
|
||||
description: indice del valore associato al SWF che si desidera impostare
|
||||
disabled: true
|
||||
- name: properties
|
||||
value: '[{"key":"COL0004","value":"cambio stato manuale"},{"key":"COL0002","value":"31-03-2025"}]'
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json (url-encoding richiesto in UTF-8)
|
||||
- name: requestStatusDescription
|
||||
value: ""
|
||||
description: descrizione "human readable" della motivazione del passaggio di stato
|
||||
disabled: true
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Set Request Status - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/set-status"
|
||||
method: POST
|
||||
params:
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
data:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
- name: requestStatus
|
||||
value: SUBMITTED
|
||||
description: "nuovo stato della request, possibili valori: SUBMITTED, PROCESSED"
|
||||
- name: swfOptionKey
|
||||
value: "1"
|
||||
description: indice del valore associato al SWF che si desidera impostare
|
||||
- name: properties
|
||||
value: '[{"key":"COL0004","value":"cambio stato manuale"},{"key":"COL0002","value":"31-03-2025"}]'
|
||||
description: mappa chiave,valore/i aggiuntivo/i in formato json (url-encoding richiesto in UTF-8)
|
||||
- name: requestStatusDescription
|
||||
value: ""
|
||||
description: descrizione "human readable" della motivazione del passaggio di stato
|
||||
disabled: true
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/it.elixforms.api.v1.2+json;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "478"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: text
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "Report with id 26880 was generated",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "Report with id 26880 was generated",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "4fb5e314-8765-4a51-8666-20568d50bade",
|
||||
"version": "3.9.2.17",
|
||||
"acquiredRequestReceiptId": "26880",
|
||||
"acquiredRequestsSize": 1
|
||||
}
|
||||
}
|
||||
+121
@@ -0,0 +1,121 @@
|
||||
info:
|
||||
name: Update Request SWF values
|
||||
type: http
|
||||
seq: 6
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/swf/columns;{{elixRegisterResultColumns}}?username={{elixFormsApiUsername}}"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Update Request SWF values - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl_Default}}/request/:request_id/swf/columns;{{elixRegisterResultColumns}}?username={{elixFormsApiUsername}}"
|
||||
method: POST
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "6085"
|
||||
type: path
|
||||
body:
|
||||
type: form-urlencoded
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/it.elixforms.api.v1.2+json;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "478"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: text
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "Report with id 26883 was generated",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "Report with id 26883 was generated",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "87845b63-e710-4dff-a37d-cc23229ce6aa",
|
||||
"version": "3.9.2.17",
|
||||
"acquiredRequestReceiptId": "26883",
|
||||
"acquiredRequestsSize": 1
|
||||
}
|
||||
}
|
||||
|
||||
docs: |-
|
||||
The elixRegisterResultColumns variable must be built like the following:
|
||||
|
||||
- one index=value couple for every field in the SWF schema that must be updated, where index is the "name" of the schema field (e.g.: COL0003, if the field is found in the SWF schema) and the value is the string content that must be assigned
|
||||
- each couple must be separated by a semi-period (\`;\` character)
|
||||
|
||||
For example, suppose the request has a SWF schema with ID 356, containing:
|
||||
|
||||
- State = COL0001
|
||||
- Date = COL0002
|
||||
- Email = COL0003
|
||||
- Message = COL0004
|
||||
|
||||
If you want to change the CURRENT state's date and message values, you will put into the variable the following value:
|
||||
|
||||
`COL0002=31-03-2025;COL0004=this is the new message`
|
||||
|
||||
Keep in mind that Postman automatically encodes the parameter, so it's allowed to use spaces and other symbols (maybe?).
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Cambio stato e/o integrazione
|
||||
type: folder
|
||||
seq: 10
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+177
@@ -0,0 +1,177 @@
|
||||
info:
|
||||
name: Invio comunicazione formale
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
http:
|
||||
method: POST
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/user-formal-communication"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: request_id
|
||||
value: "27126"
|
||||
type: path
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"message": "Test message",
|
||||
"documentType": "Autorizzazione", // <tipo di documento> La corrispondente funzionalità in elixForms prevede un elenco preso da una property di piattaforma (globalparam.formalcommunications.available.list , i cui valori, di default possono essere i seguenti: Appuntamento,Autorizzazione,Comunicazione,Esito,Licenza,Permesso,Richiesta di integrazione
|
||||
"documentNumber": "123123_AZ", // <numero dell'atto>
|
||||
"documentDate": "{{elixFormalCommunicationDate}}",
|
||||
"attachments": [ // da 0 a 5 max
|
||||
/*
|
||||
{
|
||||
"attachFile": "<Base 64 encoded string>", // <file> rappresentato da una stringa in formato Base64, encoding del byte array del file originale in UTF-8
|
||||
"attachMimeType": "application/pdf", // <mime type> del documento allegato. Se vuoto viene impostato come application/octet-steam
|
||||
"attachFileName": "test.pdf", // <nome del file> da assengare al file in upload
|
||||
"attachSize": null // <dimensione del file> dichiarata. Se non specificato, viene calcolato in funzione del file ricevuto
|
||||
},
|
||||
{
|
||||
"attachFile": "<Base 64 encoded string>",
|
||||
"attachMimeType": "image/jpeg",
|
||||
"attachFileName": "test1.jpeg"
|
||||
}
|
||||
*/
|
||||
],
|
||||
"senderUsername": "MMMPPL74T17E463A" // <username> di un utente presente sul DB elixforms (isi_users) da indicare come mittente; nel caso non sia specificato, verrà forzato con lo username in header "x-api-username" titolare di accesso al servizio, ma anch'esso deve essere presente sul DB elixforms (isi_users).
|
||||
}
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: before-request
|
||||
code: |-
|
||||
var currentDate = new Date().toISOString();
|
||||
|
||||
console.log(currentDate);
|
||||
|
||||
bru.setVar("elixFormalCommunicationDate", JSON.stringify(currentDate));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Invio comunicazione formale - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/user-formal-communication"
|
||||
method: POST
|
||||
headers:
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: request_id
|
||||
value: "7012"
|
||||
type: path
|
||||
body:
|
||||
type: json
|
||||
data: "{\r
|
||||
|
||||
\ \"message\": \"Test message\",\r
|
||||
|
||||
\ \"documentType\": \"Autorizzazione\", // <tipo di documento> La corrispondente funzionalità in elixForms prevede un elenco preso da una property di piattaforma (globalparam.formalcommunications.available.list , i cui valori, di default possono essere i seguenti: Appuntamento,Autorizzazione,Comunicazione,Esito,Licenza,Permesso,Richiesta di integrazione\r
|
||||
|
||||
\ \"documentNumber\": \"123123_AZ\",\r
|
||||
|
||||
\ \"documentDate\": \"{{elixFormalCommunicationDate}}\",\r
|
||||
|
||||
\ \"attachments\": [ // da 0 a 5 max\r
|
||||
|
||||
\ /*\r
|
||||
|
||||
\ {\r
|
||||
|
||||
\ \"attachFile\": \"<Base 64 encoded string>\", // <file> rappresentato da una stringa in formato Base64, encoding del byte array del file originale in UTF-8\r
|
||||
|
||||
\ \"attachMimeType\": \"application/pdf\", // <mime type> del documento allegato. Se vuoto viene impostato come application/octet-steam\r
|
||||
|
||||
\ \"attachFileName\": \"test.pdf\", // <nome del file> da assengare al file in upload\r
|
||||
|
||||
\ \"attachSize\": null // <dimensione del file> dichiarata. Se non specificato, viene calcolato in funzione del file ricevuto\r
|
||||
|
||||
\ },\r
|
||||
|
||||
\ {\r
|
||||
|
||||
\ \"attachFile\": \"<Base 64 encoded string>\",\r
|
||||
|
||||
\ \"attachMimeType\": \"image/jpeg\",\r
|
||||
|
||||
\ \"attachFileName\": \"test1.jpeg\"\r
|
||||
|
||||
\ }\r
|
||||
|
||||
\ */\r
|
||||
|
||||
\ ],\r
|
||||
|
||||
\ \"senderUsername\": \"MMMPPL74T17E463A\" // <username> di un utente presente sul DB elixforms (isi_users) da indicare come mittente; nel caso non sia specificato, verrà forzato con lo username in header \"x-api-username\" titolare di accesso al servizio, ma anch'esso deve essere presente sul DB elixforms (isi_users).\r
|
||||
|
||||
}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/it.elixforms.api.v1.2+json;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "424"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: text
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "24b41fec-d621-40b5-8907-cf08fef2ece3",
|
||||
"version": "3.9.2.17",
|
||||
"userFormalCommunicationData": 1,
|
||||
"userFormalCommunicationDataId": 26936
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Comunicazioni formali
|
||||
type: folder
|
||||
seq: 11
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+112
@@ -0,0 +1,112 @@
|
||||
info:
|
||||
name: Proposta CCT determina contratti conto terzi NO EFTL
|
||||
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: "10971"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "CRCT_RA;CRCT_RAS;CRCT_RB",
|
||||
"tipologiePunto2": "SERV_CON",
|
||||
"tipologiePunto3": "FORM_COM",
|
||||
"tipologiePunto4": ""
|
||||
}
|
||||
}
|
||||
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]
|
||||
[VAR name="corrispettivo" type="string"][TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="presenzaOneri" type="boolean"][TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="mostraRitenute" type="string"][TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="ulterioreRitenuta2Max" type="string"][TAG]SCHEMAID,337,COL0017,IUQOID, , [/TAG][/VAR]
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
h2 {
|
||||
text-align: center;
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
p {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
ol {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.firma {
|
||||
float: right;
|
||||
margin: 2em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header con logo UniPR come nel template standard -->
|
||||
|
||||
<h2>IL DIRIGENTE</h2>
|
||||
|
||||
<p>visti lo Statuto dell'Università degli Studi di Parma ed il Regolamento Generale di Ateneo;</p>
|
||||
|
||||
<p>visto il Regolamento di Ateneo per l'amministrazione, la finanza e la contabilità, emanato con Decreto Rettorale n. 1674/2024, prot. 198495 del 17 luglio 2024;</p>
|
||||
|
||||
<p>visto il Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi, emanato con Decreto Rettorale n. 2298/2024, prot. n. 264866 del 4 ottobre 2024;</p>
|
||||
|
||||
<p>visto il Regolamento dell'Università degli Studi di Parma in materia di brevetti e tutela dell'invenzione, emanato con Decreto Rettorale n. 1033/2024, prot. n. 113244 del 30 aprile 2024;</p>
|
||||
|
||||
<!-- <p>preso atto che, con nota assunta a Prot. n. ___, il [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] ha trasmesso:</p> -->
|
||||
|
||||
<p>richiamato integralmente il testo del contratto da stipularsi tra l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG], per un corrispettivo pari a euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG];</p>
|
||||
|
||||
<p>ritenuto, per quanto premesso, di aderire alla richiesta di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG] di approvazione della stipula del contratto con [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] per [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] in premessa, ai sensi e per gli effetti di quanto previsto dal sopra citato Regolamento sulla disciplina delle attività di ricerca, consulenza, didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi con riferimento all'Art.2, punto A;</p>
|
||||
|
||||
<h2>determina</h2>
|
||||
|
||||
<ol>
|
||||
<li>di approvare la stipula del contratto tra [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] e l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG];</li>
|
||||
|
||||
<li>di autorizzare l'introito del corrispettivo pari ad euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] che verrà erogato da [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG] != "N" %]--][% mostraRitenute != "N" %][/CONDITION][THEN], da assoggettare alle ritenute secondo le modalità previste dall'art. 6, comma 1 del "Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi" nella misura del 3% (euro [TAG]SCHEMAID,337,COL0014,IUQOID, , [/TAG]) per l'Amministrazione di Ateneo, del 4% (euro [TAG]SCHEMAID,337,COL0015,IUQOID, , [/TAG]) per il Fondo Comune di Ateneo e del 1% (euro [TAG]SCHEMAID,337,COL0016,IUQOID, , [/TAG]) per l'incremento dei fondi di cui agli artt. 119, comma 2, punto a) e 121, comma 2, punto a) del CCNL di comparto per l'attuazione dell'art. 110, comma 2 del medesimo contratto[IF][CONDITION][!--[% [TAG]SCHEMAID,337,COL0017,IUQOID, , [/TAG] != "" && [TAG]SCHEMAID,337,COL0017,IUQOID, , [/TAG] > 0 %]--][% ulterioreRitenuta2Max > 0 %][/CONDITION][THEN] e del [TAG]SCHEMAID,337,COL0057,IUQOID, , [/TAG]% (euro [TAG]SCHEMAID,337,COL0063,IUQOID, , [/TAG]) a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][/THEN][/IF][/THEN][/IF];</li>
|
||||
|
||||
<li>di dare mandato al Direttore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] per ogni adempimento relativo.</li>
|
||||
</ol>
|
||||
|
||||
<div class="firma">
|
||||
<p style="text-align: center;">Parma, li [TAG]SCHEMAID,340,COL0022,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">[TAG]SCHEMAID,341,COL0093,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">Firmato digitalmente ai sensi del D.Lgs. n. 82/2005</p>
|
||||
</div>
|
||||
|
||||
<!-- Footer con logo UniPR come nel template standard -->
|
||||
</body>
|
||||
</html>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+112
@@ -0,0 +1,112 @@
|
||||
info:
|
||||
name: Proposta CCT determina contratti conto terzi
|
||||
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: "9717"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "CRCT_RA;CRCT_RAS;CRCT_RB",
|
||||
"tipologiePunto2": "SERV_CON",
|
||||
"tipologiePunto3": "FORM_COM",
|
||||
"tipologiePunto4": ""
|
||||
}
|
||||
}
|
||||
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]
|
||||
[VAR name="corrispettivo" type="string"][TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="presenzaOneri" type="boolean"][TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="mostraRitenute" type="string"][TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="ulterioreRitenuta2Max" type="string"][TAG]SCHEMAID,337,COL0057,IUQOID, , [/TAG][/VAR]
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
h2 {
|
||||
text-align: center;
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
p {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
ol {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.firma {
|
||||
float: right;
|
||||
margin: 2em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header con logo UniPR come nel template standard -->
|
||||
|
||||
<h2>IL DIRIGENTE</h2>
|
||||
|
||||
<p>visti lo Statuto dell'Università degli Studi di Parma ed il Regolamento Generale di Ateneo;</p>
|
||||
|
||||
<p>visto il Regolamento di Ateneo per l'amministrazione, la finanza e la contabilità, emanato con Decreto Rettorale n. 1674/2024, prot. 198495 del 17 luglio 2024;</p>
|
||||
|
||||
<p>visto il Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi, emanato con Decreto Rettorale n. 2298/2024, prot. n. 264866 del 4 ottobre 2024;</p>
|
||||
|
||||
<p>visto il Regolamento dell'Università degli Studi di Parma in materia di brevetti e tutela dell'invenzione, emanato con Decreto Rettorale n. 1033/2024, prot. n. 113244 del 30 aprile 2024;</p>
|
||||
|
||||
<!-- <p>preso atto che, con nota assunta a Prot. n. ___, il [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] ha trasmesso:</p> -->
|
||||
|
||||
<p>richiamato integralmente il testo del contratto da stipularsi tra l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG], per un corrispettivo pari a euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG];</p>
|
||||
|
||||
<p>ritenuto, per quanto premesso, di aderire alla richiesta di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG] di approvazione della stipula del contratto con [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] per [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] in premessa, ai sensi e per gli effetti di quanto previsto dal sopra citato Regolamento sulla disciplina delle attività di ricerca, consulenza, didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi con riferimento all'Art.2, punto A;</p>
|
||||
|
||||
<h2>determina</h2>
|
||||
|
||||
<ol>
|
||||
<li>di approvare la stipula del contratto tra [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] e l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG];</li>
|
||||
|
||||
<li>di autorizzare l'introito del corrispettivo pari ad euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] che verrà erogato da [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG] != "N" %]--][% mostraRitenute != "N" %][/CONDITION][THEN], da assoggettare alle ritenute di cui all'art. 6, comma 1 del "Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi" nella misura del 3% (euro [TAG]SCHEMAID,337,COL0014,IUQOID, , [/TAG]) per l'Amministrazione di Ateneo, del 4% (euro [TAG]SCHEMAID,337,COL0015,IUQOID, , [/TAG]) per il Fondo Comune di Ateneo e del 1% (euro [TAG]SCHEMAID,337,COL0016,IUQOID, , [/TAG]) per l'incremento dei fondi di cui agli artt. 119, comma 2, punto a) e 121, comma 2, punto a) del CCNL di comparto per l'attuazione dell'art. 110, comma 2 del medesimo contratto[IF][CONDITION][!--[% [TAG]SCHEMAID,337,COL0017,IUQOID, , [/TAG] != "" && [TAG]SCHEMAID,337,COL0017,IUQOID, , [/TAG] > 0 %]--][% ulterioreRitenuta2Max > 0 %][/CONDITION][THEN] e del [TAG]SCHEMAID,337,COL0057,IUQOID, , [/TAG]% (euro [TAG]SCHEMAID,337,COL0063,IUQOID, , [/TAG]) a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][/THEN][/IF][/THEN][/IF];</li>
|
||||
|
||||
<li>di dare mandato al Direttore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] per ogni adempimento relativo.</li>
|
||||
</ol>
|
||||
|
||||
<div class="firma">
|
||||
<p style="text-align: center;">Parma, li [TAG]SCHEMAID,340,COL0022,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">[TAG]SCHEMAID,341,COL0093,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">Firmato digitalmente ai sensi del D.Lgs. n. 82/2005</p>
|
||||
</div>
|
||||
|
||||
<!-- Footer con logo UniPR come nel template standard -->
|
||||
</body>
|
||||
</html>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+422
File diff suppressed because one or more lines are too long
+126
@@ -0,0 +1,126 @@
|
||||
info:
|
||||
name: Proposta CCT determina ex art 15
|
||||
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: "9717"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "",
|
||||
"tipologiePunto2": "",
|
||||
"tipologiePunto3": "CCS_IST_RA;CCS_IST_RAS;CCS_IST_RB",
|
||||
"tipologiePunto4": "",
|
||||
"tipologiePunto5": "MTA;NDA"
|
||||
}
|
||||
}
|
||||
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]
|
||||
[VAR name="corrispettivo" type="string"][TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="speseGenerali" type="string"][TAG]SCHEMAID,341,COL0051,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="presenzaOneri" type="boolean"][TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="mostraRitenute" type="string"][TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="ulterioreRitenuta2Max" type="string"][TAG]SCHEMAID,337,COL0067,IUQOID, , [/TAG][/VAR]
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
h2 {
|
||||
text-align: center;
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
p {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
ol {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.firma {
|
||||
float: right;
|
||||
margin: 2em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header con logo UniPR come nel template standard -->
|
||||
|
||||
<h2>IL DIRIGENTE</h2>
|
||||
|
||||
<p>visto l'art.15 della legge 7 agosto 1990 n. 241 che disciplina gli "Accordi tra Pubbliche Amministrazioni";</p>
|
||||
|
||||
<p>richiamato l'art. 7, comma 4 del D. Lgs. 31 marzo 2023, n. 36 "Codice dei contratti pubblici in attuazione dell'articolo 1 della legge 21 giugno 2022, n. 78, recante delega al Governo in materia di contratti pubblici";</p>
|
||||
|
||||
<p>visti lo Statuto dell'Università degli Studi di Parma ed il Regolamento Generale di Ateneo;</p>
|
||||
|
||||
<p>visto il Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi, emanato con Decreto Rettorale n. 2298/2024, prot. n. 264866 del 4 ottobre 2024;</p>
|
||||
|
||||
<p>visto il Regolamento dell'Università degli Studi di Parma in materia di brevetti e tutela dell'invenzione, emanato con Decreto Rettorale n. 1033/2024, prot. n. 113244 del 30 aprile 2024;</p>
|
||||
|
||||
[IF][CONDITION][!-- [% [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] > 0 %] --][% corrispettivo > 0 %][/CONDITION][THEN]
|
||||
<p>visto il Regolamento di Ateneo per l'amministrazione, la finanza e la contabilità, emanato con Decreto Rettorale n. 1674/2024, prot. 198495 del 17 luglio 2024;</p>
|
||||
[/THEN][/IF]
|
||||
|
||||
<p>preso atto del rispetto da parte dell'Università degli Studi di Parma del parametro di cui all'art. 7, comma 4, lettera d), del D.Lgs. n. 36/2023, in relazione all'avvenuto accertamento sul bilancio unico di Ateneo delle poste relative;</p>
|
||||
|
||||
<!--<p>preso atto che, con nota assunta a Prot. n. ___, il [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] ha trasmesso:</p>-->
|
||||
|
||||
<p>verificata l'applicabilità dell'art. 15 "Accordi fra Pubbliche Amministrazioni" della legge n. 241/1990 sul procedimento amministrativo, sussistendone i presupposti, incluso l'interesse reciproco, il contributo di tutti i soggetti sottoscrittori, la proprietà condivisa dei risultati secondo quanto stabilito dall'Accordo e la compartecipazione alle spese finalizzate al raggiungimento degli obiettivi specificati nel testo della stessa;</p>
|
||||
|
||||
<p>richiamato integralmente il testo dell'accordo da stipularsi tra l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG] == false %]--][% presenzaOneri == false %][/CONDITION][THEN], senza oneri a carico del budget dell'Amministrazione Centrale[/THEN][/IF];</p>
|
||||
|
||||
<p>ritenuto, per quanto premesso, di aderire alla richiesta di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG] di approvazione della stipula Accordo con [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] per [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] in premessa, ai sensi e per gli effetti di quanto previsto dal sopra citato Regolamento sulla disciplina delle attività di ricerca, consulenza, didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi con riferimento all'Art.2, punto B;</p>
|
||||
|
||||
<h2>determina</h2>
|
||||
|
||||
<ol>
|
||||
<li>richiamate le premesse, parti integranti del presente dispositivo, di approvare la stipula dell'Accordo tra [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] e l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con durata di mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG] == false %]--][% presenzaOneri == false %][/CONDITION][THEN], senza oneri a carico del budget dell'Amministrazione Centrale[/THEN][/IF];</li>
|
||||
|
||||
[IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] > 0 %]--][% corrispettivo > 0 %][/CONDITION][THEN]
|
||||
<li>di autorizzare l'introito del contributo di euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] da parte di [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG] != "N" %]--][% mostraRitenute != "N" %][/CONDITION][THEN][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0051,IUQOID, , [/TAG] > 0 %]--][% speseGenerali > 0 %][/CONDITION][THEN], da assoggettare alle ritenute secondo le modalità previste dall'art. 6, comma 2 del "Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi" nella misura del 6% (euro [TAG]SCHEMAID,337,COL0049,IUQOID, , [/TAG]) per l'Amministrazione di Ateneo, del 8% (euro [TAG]SCHEMAID,337,COL0050,IUQOID, , [/TAG]) per il Fondo Comune di Ateneo e del 2% (euro [TAG]SCHEMAID,337,COL0051,IUQOID, , [/TAG]) per l'incremento dei fondi di cui agli artt. 119, comma 2, punto a) e 121, comma 2, punto a) del CCNL di comparto per l'attuazione dell'art. 110, comma 2 del medesimo contratto[/THEN][/IF][IF][CONDITION][!--[% [TAG]SCHEMAID,337,COL0064,IUQOID, , [/TAG] != "" && [TAG]SCHEMAID,337,COL0064,IUQOID, , [/TAG] > 0 %]--][% ulterioreRitenuta2Max > 0 %][/CONDITION][THEN], con una ritenuta ulteriore del [TAG]SCHEMAID,337,COL0067,IUQOID, , [/TAG]% (euro [TAG]SCHEMAID,337,COL0068,IUQOID, , [/TAG]) a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][/THEN][/IF][/THEN][/IF];</li>
|
||||
[/THEN][/IF]
|
||||
|
||||
<li>di conferire mandato al Direttore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] per l'adempimento di ogni attività relativa.</li>
|
||||
</ol>
|
||||
|
||||
<div class="firma">
|
||||
<p style="text-align: center;">Parma, li [TAG]SCHEMAID,340,COL0022,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">[TAG]SCHEMAID,341,COL0093,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">Firmato digitalmente ai sensi del D.Lgs. n. 82/2005</p>
|
||||
</div>
|
||||
|
||||
<!-- Footer con logo UniPR come nel template standard -->
|
||||
</body>
|
||||
</html>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+315
File diff suppressed because one or more lines are too long
+121
@@ -0,0 +1,121 @@
|
||||
info:
|
||||
name: Proposta CCT determina sperimentazioni cliniche
|
||||
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: "9717"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "CRCT_RA;CRCT_RAS;CRCT_RB",
|
||||
"tipologiePunto2": "SERV_CON",
|
||||
"tipologiePunto3": "FORM_COM",
|
||||
"tipologiePunto4": ""
|
||||
}
|
||||
}
|
||||
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]
|
||||
[VAR name="corrispettivo" type="string"][TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="speseGenerali" type="string"][TAG]SCHEMAID,341,COL0051,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="presenzaOneri" type="boolean"][TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="mostraRitenute" type="string"][TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="ulterioreRitenuta2Max" type="string"][TAG]SCHEMAID,337,COL0067,IUQOID, , [/TAG][/VAR]
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
h2 {
|
||||
text-align: center;
|
||||
font-size: 14pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
p {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
ol {
|
||||
text-align: justify;
|
||||
font-size: 12pt;
|
||||
line-height: 1.5;
|
||||
}
|
||||
.firma {
|
||||
float: right;
|
||||
margin: 2em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header con logo UniPR come nel template standard -->
|
||||
|
||||
<h2>IL DIRIGENTE</h2>
|
||||
|
||||
<p>visto il Decreto Ministeriale 30 novembre 2021 recante "Misure volte a facilitare e sostenere la realizzazione degli studi clinici di medicinali senza scopo di lucro e degli studi osservazionali e a disciplinare la cessione di dati e risultati di sperimentazioni senza scopo di lucro a fini registrativi, ai sensi dell'art. 1, comma 1, lettera c), del decreto legislativo 14 maggio 2019, n. 52";</p>
|
||||
|
||||
<p>visto il Decreto Legislativo 196/2003 e ss.mm.ii. e il Regolamento europeo GDPR 679/2016, relativo alla protezione delle persone fisiche con riguardo al trattamento dei dati personali;</p>
|
||||
|
||||
<p>visti lo Statuto dell'Università degli Studi di Parma ed il Regolamento Generale di Ateneo;</p>
|
||||
|
||||
<p>visto il Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi, emanato con Decreto Rettorale n. 2298/2024, prot. n. 264866 del 4 ottobre 2024;</p>
|
||||
|
||||
<p>visto il Regolamento dell'Università degli Studi di Parma in materia di brevetti e tutela dell'invenzione, emanato con Decreto Rettorale n. 1033/2024, prot. n. 113244 del 30 aprile 2024;</p>
|
||||
|
||||
[IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] > 0 %]--][% corrispettivo > 0 %][/CONDITION][THEN]
|
||||
<p>visto il Regolamento di Ateneo per l'amministrazione, la finanza e la contabilità, emanato con Decreto Rettorale n. 1674/2024, prot. 198495 del 17 luglio 2024;</p>
|
||||
[/THEN][/IF]
|
||||
|
||||
<p>preso atto del testo dell'accordo che, tra l'altro, prevede quanto segue:</p>
|
||||
|
||||
<p>preso atto dell'autorizzazione all'avvio dello studio rilasciata in data ___ da ___;</p>
|
||||
|
||||
<p>ritenuto, per quanto premesso, di aderire alla richiesta avanzata da [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG] di approvazione della stipula del contratto con [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] per la conduzione della sperimentazione sopra descritta, ai sensi e per gli effetti di quanto previsto dal sopra citato Regolamento sulla disciplina delle attività di ricerca, consulenza, didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi con riferimento all'Art.2, lettera B;</p>
|
||||
|
||||
<h2>determina</h2>
|
||||
|
||||
<ol>
|
||||
<li>richiamate le premesse, parti integranti del presente dispositivo, di approvare la stipula del contratto tra [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] e l'Università degli Studi di Parma, nell'interesse del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG], avente ad oggetto la conduzione della sperimentazione clinica dal titolo [TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG] sotto la responsabilità scientifica di [TAG]SCHEMAID,341,COL0049,IUQOID, , [/TAG], con decorrenza dalla data di sottoscrizione e durata fino a mesi [TAG]SCHEMAID,341,COL0008,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0084,IUQOID, , [/TAG] == false %]--][% presenzaOneri == false %][/CONDITION][THEN], senza oneri a carico del budget dell'Amministrazione Centrale[/THEN][/IF];</li>
|
||||
|
||||
[IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] > 0 %]--][% corrispettivo > 0 %][/CONDITION][THEN]
|
||||
<li>di autorizzare l'introito del contributo di euro [TAG]SCHEMAID,341,COL0094,IUQOID, , [/TAG] da parte di [TAG]SCHEMAID,341,COL0086,IUQOID, , [/TAG] a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0090,IUQOID, , [/TAG] != "N" %]--][% mostraRitenute != "N" %][/CONDITION][THEN][IF][CONDITION][!--[% [TAG]SCHEMAID,341,COL0051,IUQOID, , [/TAG] > 0 %]--][% speseGenerali > 0 %][/CONDITION][THEN], da assoggettare alle ritenute secondo le modalità previste dall'art. 6, comma 2 del "Regolamento sulla disciplina delle attività di ricerca, consulenza e didattica e alta formazione eseguite dall'Università degli Studi di Parma a fronte di contratti o accordi con soggetti terzi" nella misura del 6% (euro [TAG]SCHEMAID,337,COL0049,IUQOID, , [/TAG]) per l'Amministrazione di Ateneo, del 8% (euro [TAG]SCHEMAID,337,COL0050,IUQOID, , [/TAG]) per il Fondo Comune di Ateneo e del 2% (euro [TAG]SCHEMAID,337,COL0051,IUQOID, , [/TAG]) per l'incremento dei fondi di cui agli artt. 119, comma 2, punto a) e 121, comma 2, punto a) del CCNL di comparto per l'attuazione dell'art. 110, comma 2 del medesimo contratto, calcolate sulle sole quote di overheads[/THEN][/IF][IF][CONDITION][!--[% [TAG]SCHEMAID,337,COL0064,IUQOID, , [/TAG] > 0 && [TAG]SCHEMAID,337,COL0064,IUQOID, , [/TAG] != "" %]--][% ulterioreRitenuta2Max > 0 %][/CONDITION][THEN], con una ritenuta ulteriore del [TAG]SCHEMAID,337,COL0067,IUQOID, , [/TAG]% (euro [TAG]SCHEMAID,337,COL0068,IUQOID, , [/TAG]) a favore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG][/THEN][/IF][/THEN][/IF];</li>
|
||||
[/THEN][/IF]
|
||||
|
||||
<li>di dare mandato al Direttore del [TAG]SCHEMAID,341,COL0006,IUQOID, , [/TAG] per ogni ulteriore adempimento relativo.</li>
|
||||
</ol>
|
||||
|
||||
<div class="firma">
|
||||
<p style="text-align: center;">Parma, li [TAG]SCHEMAID,340,COL0022,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">[TAG]SCHEMAID,341,COL0093,IUQOID, , [/TAG]</p>
|
||||
<p style="text-align: center;">Firmato digitalmente ai sensi del D.Lgs. n. 82/2005</p>
|
||||
</div>
|
||||
|
||||
<!-- Footer con logo UniPR come nel template standard -->
|
||||
</body>
|
||||
</html>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
info:
|
||||
name: Punto A regolamento
|
||||
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: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "CRCT_RA;CRCT_RAS;CRCT_RB",
|
||||
"tipologiePunto2": "SERV_CON",
|
||||
"tipologiePunto3": "FORM_COM",
|
||||
"tipologiePunto4": ""
|
||||
}
|
||||
}
|
||||
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="tipologiaContratto" type="string"][TAG]GETVALUEBYTAG,TIPOLOGIA_CODICE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="puntoAregolamento" type="number"][% puntoAregolamento = 0; %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto1"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoAregolamento = 1; %][/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto2"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoAregolamento = 2; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto3"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoAregolamento = 3; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto4"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoAregolamento = 4; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
|
||||
[%= puntoAregolamento %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
info:
|
||||
name: Punto B regolamento
|
||||
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: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"tipologiePunto1": "",
|
||||
"tipologiePunto2": "",
|
||||
"tipologiePunto3": "CCS_IST_RA;CCS_IST_RAS;CCS_IST_RB",
|
||||
"tipologiePunto4": "",
|
||||
"tipologiePunto5": "MTA;NDA"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[!--
|
||||
"tipologiePunto1": "",
|
||||
"tipologiePunto2": "",
|
||||
"tipologiePunto3": "CCS_IST_RA;CCS_IST_RAS;CCS_IST_RB",
|
||||
"tipologiePunto4": "",
|
||||
"tipologiePunto5": "MTA;NDA"
|
||||
--]
|
||||
|
||||
[VAR name="tipologiaContratto" type="string"][TAG]GETVALUEBYTAG,TIPOLOGIA_CODICE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="puntoBregolamento" type="number"][% puntoBregolamento = 0; %][/VAR]
|
||||
|
||||
[!--
|
||||
3 CCS_IST_RA Convenzioni di collaborazione scientifica istituzionali - ricerca applicata
|
||||
3 CCS_IST_RAS Convenzioni di collaborazione scientifica istituzionali - ricerca applicata alla sanità
|
||||
3 CCS_IST_RB Convenzioni di collaborazione scientifica istituzionali - ricerca di base
|
||||
5 MTA Material Transfer Agreement
|
||||
5 NDA Non Disclosure Agreement
|
||||
? CONV_QUA Convenzioni quadro
|
||||
--]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto1"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoBregolamento = 1; %][/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto2"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoBregolamento = 2; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto3"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoBregolamento = 3; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto4"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoBregolamento = 4; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="tipologiePunto5"][VALUE_OF varname="tipologiaContratto" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% puntoBregolamento = 5; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
|
||||
[FORMAT type="number" pattern="#"][% puntoBregolamento %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: CCT - Determina da Proposta
|
||||
type: folder
|
||||
seq: 2
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
info:
|
||||
name: Anno corrente
|
||||
type: http
|
||||
seq: 5
|
||||
|
||||
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: "23663"
|
||||
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" /]
|
||||
[TAG]SCHEMAID,709,COL0117,IUQOID, , ,,YYYY[/TAG]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Elenco Contraenti in formato CSV DSAN
|
||||
type: http
|
||||
seq: 30
|
||||
|
||||
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: "34398"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoContraentiCsv" type="string"][% elencoContraentiCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoContraenti" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoContraentiIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoContraenti" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoContraentiCount" type="number"][SIZE_OF varname="elencoContraentiIterable" /][/VAR]
|
||||
|
||||
[VAR name="contraenteIdx" type="number"][% contraenteIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="contraenteIterable" type="iterable"][SPLIT regex=", CF/PIVA: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoContraentiIterable" index="contraenteIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="contraenteDenominazione" type="string"][VALUE_OF varname="contraenteIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + contraenteDenominazione; %]
|
||||
[% contraenteIdx = contraenteIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoContraentiCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Elenco RS in formato CSV DSAN
|
||||
type: http
|
||||
seq: 30
|
||||
|
||||
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: "34398"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoResponsabiliCsv" type="string"][% elencoResponsabiliCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoResponsabili" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoResponsabiliIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoResponsabili" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoResponsabiliCount" type="number"][SIZE_OF varname="elencoResponsabiliIterable" /][/VAR]
|
||||
|
||||
[VAR name="responsabileIdx" type="number"][% responsabileIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="responsabileIterable" type="iterable"][SPLIT regex=", CF: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoResponsabiliIterable" index="responsabileIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="responsabileNominativo" type="string"][VALUE_OF varname="responsabileIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + responsabileNominativo; %]
|
||||
[% responsabileIdx = responsabileIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoResponsabiliCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
info:
|
||||
name: Inserimento Ore Dentro - Calcolo importo equivalente
|
||||
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: "30661"
|
||||
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="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
|
||||
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
|
||||
[VAR name="oreAttivita" type="number"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_DENTRO_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
|
||||
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * oreAttivita) / oreTotali; %][/VAR]
|
||||
|
||||
[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
info:
|
||||
name: Inserimento Ore Dentro - Dati attività CSV
|
||||
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: "31470"
|
||||
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="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
|
||||
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
|
||||
|
||||
[VAR name="anno" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ANNO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="ore" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_DENTRO_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
|
||||
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * ore) / oreTotali; %][/VAR]
|
||||
|
||||
[%= anno %];[%= ore %];[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
info:
|
||||
name: Inserimento Ore Fuori - Calcolo importo equivalente
|
||||
type: http
|
||||
seq: 12
|
||||
|
||||
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: "30661"
|
||||
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="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
|
||||
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
|
||||
[VAR name="oreAttivita" type="number"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_FUORI_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
|
||||
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * oreAttivita) / oreTotali; %][/VAR]
|
||||
|
||||
[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
info:
|
||||
name: Inserimento Ore Fuori - Dati attività CSV copy
|
||||
type: http
|
||||
seq: 13
|
||||
|
||||
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: "31470"
|
||||
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="importoAssegnato" type="number"][TAG]SCHEMAID,709,COL0118,IUQOID, ,,,0.00[/TAG][/VAR]
|
||||
[VAR name="oreTotali" type="number"][TAG]SCHEMAID,709,COL0119,IUQOID, ,,,0[/TAG][/VAR]
|
||||
|
||||
[VAR name="anno" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ANNO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="ore" type="string"][TAG]GETVALUEBYTAG,ATTIVITA_ORE;ORE_FUORI_ORARIO,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
|
||||
[VAR name="importoProporzionato" type="number"][% importoProporzionato = (importoAssegnato * ore) / oreTotali; %][/VAR]
|
||||
|
||||
[%= anno %];[%= ore %];[FORMAT type="number" pattern="0.00"][% importoProporzionato %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Limiti - Calcolo MIN ore dentro orario
|
||||
type: http
|
||||
seq: 6
|
||||
|
||||
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: "31418"
|
||||
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="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_DENTRO_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
|
||||
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Limiti - Calcolo MIN ore fuori orario
|
||||
type: http
|
||||
seq: 7
|
||||
|
||||
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: "31418"
|
||||
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="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_FUORI_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
|
||||
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Limiti - Indicazione MAX annuale ore dentro orario
|
||||
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: "30661"
|
||||
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="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_DENTRO_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
|
||||
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
In base al proprio inquadramento, il limite annuale di ore di attività svolte dentro l'orario di lavoro è pari a [FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Limiti - Indicazione MAX annuale ore fuori orario
|
||||
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: "30661"
|
||||
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="percentualePartTime" type="number"][TAG]GETVALUEBYTAG,DIPENDENTE_PERC_PARTTIME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="oreEquivalenti" type="number"][TAG]GETVALUEBYTAG,ORE_RIPARTIZIONE_ASSEGNATA,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="maxOre" type="number"][TAG]GETVALUEBYTAG,MAX_ORE_FUORI_ORARIO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="limiteOre" type="number"][% limiteOre = (percentualePartTime * maxOre); %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% limiteOre > oreEquivalenti %][/CONDITION]
|
||||
[THEN][% limiteOre = oreEquivalenti; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
In base al proprio inquadramento, il limite annuale di ore di attività svolte fuori dall'orario di lavoro è pari a [FORMAT type="number" pattern="integer"][% limiteOre %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
info:
|
||||
name: Richiedente - Calcolo ore equivalenti
|
||||
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: "31555"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"IS_OP": "OP0;OP1;OP2;OP3;OP4;OP5;OP6;OP7;OP8",
|
||||
"IS_CO": "CO0;CO1;CO2;CO3;CO4;CO5;CO6;CO7;CO8",
|
||||
"IS_FU": "FU0;FU1;FU2;FU3;FU4;FU5;FU6;FU7;FU8",
|
||||
"IS_EP": "EL0;EP0;EP1;EP2;EP3;EP4;EP5;EP6;EP7;EP8",
|
||||
"OP": 0.0431,
|
||||
"CO": 0.0405,
|
||||
"FU": 0.0350,
|
||||
"EP": 0.0307
|
||||
}
|
||||
}
|
||||
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="inquadramentoRichiedente" type="string"][TAG]GETVALUEBYTAG,INQUADRAMENTO_DIPENDENTE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="codiceFiscaleRichiedente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="datiRipartizioniIterable" type="iterable"][SPLIT regex="##"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
|
||||
|
||||
[% item2 = 1; %]
|
||||
[% item5 = 4; %]
|
||||
[% importoRichiedente = 0; %]
|
||||
[% fattoreConversione = 0; %]
|
||||
|
||||
[FOR varname="riga" iterable="datiRipartizioniIterable"]
|
||||
[VAR name="rigaIterable" type="iterable"][SPLIT regex=";;"][VALUE_OF varname="riga" /][/SPLIT][/VAR]
|
||||
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="rigaIterable" index="item2" /][/VAR]
|
||||
[VAR name="importo" type="number"][VALUE_OF varname="rigaIterable" index="item5" /][/VAR]
|
||||
[IF]
|
||||
[CONDITION][% codiceFiscale == codiceFiscaleRichiedente %][/CONDITION]
|
||||
[THEN][% importoRichiedente = importo; %][/THEN]
|
||||
[/IF]
|
||||
[/FOR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="IS_OP"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
|
||||
[THEN][% fattoreConversione = OP; %][/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="IS_CO"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
|
||||
[THEN][% fattoreConversione = CO; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="IS_FU"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
|
||||
[THEN][% fattoreConversione = FU; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="IS_EP"][% inquadramentoRichiedente %][/CONTAINS][/CONDITION]
|
||||
[THEN][% fattoreConversione = EP; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
|
||||
[!--
|
||||
inquadramentoRichiedente: [%= inquadramentoRichiedente %]
|
||||
codiceFiscaleRichiedente: [%= codiceFiscaleRichiedente %]
|
||||
importoRichiedente: [%= importoRichiedente %]
|
||||
fattoreConversione: [%= fattoreConversione %]
|
||||
Output
|
||||
--]
|
||||
|
||||
[FORMAT type="number" pattern="0"][% importoRichiedente * fattoreConversione %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
docs: |-
|
||||
SchemaId 709
|
||||
Campo COL0118
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Richiedente - Check ammesso compilazione
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
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: "24281"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"codiciFiscaliAmmessi": ";;MMMPPL74T17E463A;;"
|
||||
}
|
||||
}
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: before-request
|
||||
code: |-
|
||||
// Copy-pasta your EFTL document below inside the template literals (`)
|
||||
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
|
||||
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
|
||||
[VAR name="checkUtentePartecipante" type="string"][% checkUtentePartecipante = "Il richiedente non è ammesso alla compilazione perché non partecipa alle ripartizioni"; %][/VAR]
|
||||
[VAR name="richiedenteCF" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="richiedentePropostaCF" type="string"][TAG]GETVALUEBYTAG,PROPOSTA_RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="ripartizioniDatiCompleti" type="string"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[!-- ATTENZIONE: gli ELSEIF non rispettano la logica di esclusione dei blocchi! Lasciare le condizioni in questo ordine! --]
|
||||
[!-- 1. Il richiedente non deve essere vuoto --]
|
||||
[!-- 2. Il richiedente deve comparire fra le ripartizioni --]
|
||||
[!-- 3. Il richiedente può eventualmente comparire fra i nominativi ammessi (DEBUG) --]
|
||||
[!-- 4. Il richiedente non deve essere il RS che ha presentato la Proposta --]
|
||||
[IF]
|
||||
[CONDITION][IS_EMPTY varname="richiedenteCF" /][/CONDITION]
|
||||
[THEN][% checkUtentePartecipante = "Nessun richiedente trovato"; %][/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="ripartizioniDatiCompleti"];;[VALUE_OF varname="richiedenteCF" /];;[/CONTAINS][/CONDITION]
|
||||
[THEN][% checkUtentePartecipante = ""; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="richiedenteCF" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% checkUtentePartecipante = ""; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[ELSE IF]
|
||||
[CONDITION][% richiedenteCF == richiedentePropostaCF %][/CONDITION]
|
||||
[THEN][% checkUtentePartecipante = "Il Responsabile Scientifico proponente della Proposta non deve compilare la DSAN"; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
|
||||
[%= checkUtentePartecipante %]
|
||||
[/EFTL]
|
||||
`));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
info:
|
||||
name: Richiedente - Check ruolo per compilazione
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
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: "24281"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"codiciRuoloPersonaleDocente": ";PA;PO;PD;RU;PF;"
|
||||
}
|
||||
}
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: before-request
|
||||
code: |-
|
||||
// Copy-pasta your EFTL document below inside the template literals (`)
|
||||
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
|
||||
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
|
||||
|
||||
[VAR name="checkPersonaleDocente" type="string"][% checkPersonaleDocente = ""; %][/VAR]
|
||||
[VAR name="richiedenteRuolo" type="string"][TAG]GETVALUEBYTAG,RUOLO_DIPENDENTE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="codiciRuoloPersonaleDocente"][VALUE_OF varname="richiedenteRuolo" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% checkPersonaleDocente = "Il personale docente non deve inserire le ore di attività"; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= checkPersonaleDocente %]
|
||||
[/EFTL]
|
||||
`));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
info:
|
||||
name: Richiedente - Importo ripartizione da Proposta
|
||||
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: "31555"
|
||||
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="codiceFiscaleRichiedente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="datiRipartizioniIterable" type="iterable"][SPLIT regex="##"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="item2" type="number"][% item2 = 1; %][/VAR]
|
||||
[VAR name="item5" type="number"][% item5 = 4; %][/VAR]
|
||||
|
||||
[VAR name="importoRichiedente" type="number"][% importoRichiedente = 0; %][/VAR]
|
||||
|
||||
[FOR varname="riga" iterable="datiRipartizioniIterable"]
|
||||
[VAR name="rigaiIterable" type="iterable"][SPLIT regex=";;"][VALUE_OF varname="riga" /][/SPLIT][/VAR]
|
||||
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="rigaiIterable" index="item2" /][/VAR]
|
||||
[VAR name="importo" type="number"][VALUE_OF varname="rigaiIterable" index="item5" /][/VAR]
|
||||
[IF]
|
||||
[CONDITION][% codiceFiscale == codiceFiscaleRichiedente %][/CONDITION]
|
||||
[THEN][% importoRichiedente = importo; %][/THEN]
|
||||
[/IF]
|
||||
[/FOR]
|
||||
|
||||
[FORMAT type="number" pattern="0.00"][% importoRichiedente %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
docs: |-
|
||||
SchemaId 709
|
||||
Campo COL0118
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: DSAN
|
||||
type: folder
|
||||
seq: 2
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Campi conferma - Codice struttura assegnazione
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
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: "32873"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"struttureCensite": "106014;;106227;;106208;;106027;;106178;;106177;;106006;;106017;;106016;;106012;;300221;;106013;;106015;;106007;;106011;;106156;;106151;;106154;;106155;;106152;;106157;;106153;;106150;;106148;;106277;;106272",
|
||||
"codiceStrutturaDefault": "CENTRO_DEFAULT"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[% codiceStruttura = codiceStrutturaDefault; %]
|
||||
|
||||
[VAR name="codiceStrutturaContratto" type="string"][TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_CODICE_INIZIALE,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="struttureCensite" value="codiceStrutturaContratto" /][/CONDITION]
|
||||
[THEN][% codiceStruttura = codiceStrutturaContratto; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= codiceStruttura %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: Campi conferma - Codice struttura protocollo
|
||||
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: "32873"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"struttureCensite": "106014;;106227;;106208;;106027;;106178;;106177;;106006;;106017;;106016;;106012;;300221;;106013;;106015;;106007;;106011;;106156;;106151;;106154;;106155;;106152;;106157;;106153;;106150;;106148;;106277;;106272",
|
||||
"codiceStrutturaDefault": "CENTRO_DEFAULT"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[% codiceStruttura = codiceStrutturaDefault; %]
|
||||
|
||||
[VAR name="codiceStrutturaContratto" type="string"][TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_CODICE_INIZIALE,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="struttureCensite" value="codiceStrutturaContratto" /][/CONDITION]
|
||||
[THEN][% codiceStruttura = codiceStrutturaContratto; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= codiceStruttura %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
info:
|
||||
name: Check Richiedente IN Responsabili Scientifici
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
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: "24218"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"codiciFiscaliAmmessi": ";MMMPPL74T17E463A;;"
|
||||
}
|
||||
}
|
||||
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="isRichiedenteInRS" type="string"][% isRichiedenteInRS = "Utente non ammesso alla compilazione perché non risulta fra i Responsabili Scientifici del contratto!"; %][/VAR]
|
||||
[VAR name="responsabiliScientifici" type="string"][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="codiceFiscaleUtente" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="codiceFiscaleUtenteDebug" type="string"][TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[% codiceFiscaleUtente = ", CF: " + codiceFiscaleUtente + ","; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="responsabiliScientifici"][VALUE_OF varname="codiceFiscaleUtente" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% isRichiedenteInRS = ""; %][/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][CONTAINS varname="codiciFiscaliAmmessi"][VALUE_OF varname="codiceFiscaleUtenteDebug" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% isRichiedenteInRS = ""; %][/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
|
||||
[%= responsabiliScientifici %]
|
||||
[%= crlf %]
|
||||
[%= codiceFiscaleUtente %]
|
||||
[%= crlf %]
|
||||
[%= isRichiedenteInRS %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
info:
|
||||
name: Codici fiscali ripartizioni
|
||||
type: http
|
||||
seq: 26
|
||||
|
||||
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"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "21334"
|
||||
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="ripartizioniIterableWithSep" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioniCount" type="string"][SIZE_OF varname="ripartizioniIterableWithSep" /][/VAR]
|
||||
|
||||
[VAR name="ripartizioniJoin" type="string"][% ripartizioniJoin = ""; %][/VAR]
|
||||
|
||||
[IF][CONDITION][% ripartizioniCount > 0 %][/CONDITION][THEN]
|
||||
[VAR name="ripartizioneIdx" type="string"][% ripartizioneIdx = 0; %][/VAR]
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="ripartizioneFull" type="string"][VALUE_OF varname="ripartizioniIterableWithSep" index="ripartizioneIdx" /][/VAR]
|
||||
[VAR name="ripartizioneFullIterable" type="iterable"][SPLIT regex=" \(CF: "][TRIM][VALUE_OF varname="ripartizioneFull" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneCFIterable" type="iterable"][SPLIT regex="\)"][VALUE_OF varname="ripartizioneFullIterable" index="secondItem" /][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneCF" type="string"][VALUE_OF varname="ripartizioneCFIterable" index="firstItem" /][/VAR]
|
||||
[% ripartizioniJoin = ripartizioniJoin + ripartizioneCF; %]
|
||||
|
||||
[% ripartizioneIdx = ripartizioneIdx + 1; %]
|
||||
|
||||
[IF][CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION][THEN]
|
||||
[% ripartizioniJoin = ripartizioniJoin + "#"; %]
|
||||
[/THEN][/IF]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
[/THEN][/IF]
|
||||
|
||||
[!--
|
||||
[%= ripartizioniCount %]
|
||||
[%= crlf %]
|
||||
[%= ripartizioneIdx %]
|
||||
[%= crlf %]
|
||||
[%= "JOIN: " ripartizioniJoin %]
|
||||
--]
|
||||
|
||||
[%= ripartizioniJoin %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Elenco Contraenti in formato CSV
|
||||
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: "22085"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoContraentiCsv" type="string"][% elencoContraentiCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoContraenti" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoContraentiIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoContraenti" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoContraentiCount" type="number"][SIZE_OF varname="elencoContraentiIterable" /][/VAR]
|
||||
|
||||
[VAR name="contraenteIdx" type="number"][% contraenteIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="contraenteIterable" type="iterable"][SPLIT regex=", CF/PIVA: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoContraentiIterable" index="contraenteIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="contraenteDenominazione" type="string"][VALUE_OF varname="contraenteIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + contraenteDenominazione; %]
|
||||
[% contraenteIdx = contraenteIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoContraentiCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
info:
|
||||
name: Elenco Partecipanti - Array CF altri
|
||||
type: http
|
||||
seq: 6
|
||||
|
||||
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: "22085"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[!-- Must be defined in EftlSolver attribute! --]
|
||||
[VAR name="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
|
||||
[VAR name="qualificheDocentiIterable" type="iterable"][SPLIT regex=";"][VALUE_OF varname="qualificheDocenti" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="responsabiliScientifici" 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="soggettiIterable" type="iterable"][SPLIT regex="\n"][% responsabiliScientifici + newLine + partecipanti %][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="elencoCodFisPersonaleDocente" type="string"][% elencoCodFisPersonaleDocente = ";"; %]][/VAR]
|
||||
[VAR name="elencoCodFisPersonaleAltro" type="string"][% elencoCodFisPersonaleAltro = ";"; %]][/VAR]
|
||||
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[FOR varname="persona" iterable="soggettiIterable"]
|
||||
[!-- Estraggo il Codice Fiscale --]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="persona" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Qualifica: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
|
||||
[!-- Estraggo la Qualifica --]
|
||||
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Struttura di afferenza: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="qualifica" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="qualificheDocentiIterable" value="qualifica" /][/CONDITION]
|
||||
[THEN][% elencoCodFisPersonaleDocente = elencoCodFisPersonaleDocente + codiceFiscale + ";"; %][/THEN]
|
||||
[ELSE][% elencoCodFisPersonaleAltro = elencoCodFisPersonaleAltro + codiceFiscale + ";"; %][/ELSE]
|
||||
[/IF]
|
||||
[/FOR]
|
||||
|
||||
[%= elencoCodFisPersonaleAltro %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
info:
|
||||
name: Elenco Partecipanti - Array CF docenti
|
||||
type: http
|
||||
seq: 5
|
||||
|
||||
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: "22085"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[!-- Must be defined in EftlSolver attribute! --]
|
||||
[VAR name="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
|
||||
[VAR name="qualificheDocentiIterable" type="iterable"][SPLIT regex=";"][VALUE_OF varname="qualificheDocenti" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="responsabiliScientifici" 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="soggettiIterable" type="iterable"][SPLIT regex="\n"][% responsabiliScientifici + newLine + partecipanti %][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="elencoCodFisPersonaleDocente" type="string"][% elencoCodFisPersonaleDocente = ";"; %]][/VAR]
|
||||
[VAR name="elencoCodFisPersonaleAltro" type="string"][% elencoCodFisPersonaleAltro = ";"; %]][/VAR]
|
||||
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[FOR varname="persona" iterable="soggettiIterable"]
|
||||
[!-- Estraggo il Codice Fiscale --]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="persona" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Qualifica: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
|
||||
[!-- Estraggo la Qualifica --]
|
||||
[VAR name="personaRight" type="string"][VALUE_OF varname="personaIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="personaIterable" type="iterable"][SPLIT regex=", Struttura di afferenza: "][TRIM][VALUE_OF varname="personaRight" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="qualifica" type="string"][VALUE_OF varname="personaIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="qualificheDocentiIterable" value="qualifica" /][/CONDITION]
|
||||
[THEN][% elencoCodFisPersonaleDocente = elencoCodFisPersonaleDocente + codiceFiscale + ";"; %][/THEN]
|
||||
[ELSE][% elencoCodFisPersonaleAltro = elencoCodFisPersonaleAltro + codiceFiscale + ";"; %][/ELSE]
|
||||
[/IF]
|
||||
[/FOR]
|
||||
|
||||
[%= elencoCodFisPersonaleDocente %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+137
@@ -0,0 +1,137 @@
|
||||
info:
|
||||
name: Elenco Partecipanti - Dropdown con chiave
|
||||
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"
|
||||
}
|
||||
}
|
||||
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="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
|
||||
|
||||
[VAR name="responsabili" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,IUQOID[/TAG][/TRIM][/VAR]
|
||||
[VAR name="partecipanti" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_PARTECIPANTI,REQUEST,IUQOID[/TAG][/TRIM][/VAR]
|
||||
|
||||
[!-- Aggiungi primo elemento "nullo" --]
|
||||
[VAR name="ripartizioniElenco" type="string"][% ripartizioniElenco = "[0] ---" + newLine; %][/VAR]
|
||||
|
||||
[VAR name="responsabiliIterable" type="iterable"][SPLIT regex="\n"][VALUE_OF varname="responsabili" /][/SPLIT][/VAR]
|
||||
[VAR name="partecipantiIterable" type="iterable"][SPLIT regex="\n"][VALUE_OF varname="partecipanti" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="responsabiliCount" type="number"][SIZE_OF varname="responsabiliIterable" /][/VAR]
|
||||
[VAR name="partecipantiCount" type="number"][SIZE_OF varname="partecipantiIterable" /][/VAR]
|
||||
|
||||
[VAR name="personaIdx" type="string"][% personaIdx = 0; %][/VAR]
|
||||
[VAR name="dropdownIdx" type="string"][% dropdownIdx = 0; %][/VAR]
|
||||
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% personaIdx < responsabiliCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="responsabileFull" type="string"][VALUE_OF varname="responsabiliIterable" index="personaIdx" /][/VAR]
|
||||
[VAR name="responsabileIterable" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="responsabileFull" /][/TRIM][/SPLIT][/VAR]
|
||||
|
||||
[!-- Recupera il nominativo --]
|
||||
[VAR name="responsabileNominativo" type="string"][VALUE_OF varname="responsabileIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[!-- Recupera il codice fiscale --]
|
||||
[VAR name="responsabileResto" type="string"][VALUE_OF varname="responsabileIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="responsabileRestoIterable" type="iterable"][SPLIT regex=", Data di inizio: "][VALUE_OF varname="responsabileResto" /][/SPLIT][/VAR]
|
||||
[VAR name="responsabileCodiceFiscale" type="string"][VALUE_OF varname="responsabileRestoIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% personaIdx = personaIdx + 1; %]
|
||||
[% dropdownIdx = dropdownIdx + 1; %]
|
||||
|
||||
[!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come "1.0", etc... --]
|
||||
[VAR name="responsabileKeyIterable" type="iterable"][SPLIT regex="\."][% dropdownIdx + "" %][/SPLIT][/VAR]
|
||||
[VAR name="responsabileKey" type="string"][VALUE_OF varname="responsabileKeyIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% ripartizioniElenco = ripartizioniElenco + "[" + responsabileKey + "] " + responsabileNominativo + " (CF: " + responsabileCodiceFiscale + ")"; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% personaIdx < responsabiliCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% ripartizioniElenco = ripartizioniElenco + newLine; %]
|
||||
[/THEN]
|
||||
[ELSE IF]
|
||||
[CONDITION][IS_NOT_EMPTY varname="partecipanti" /][/CONDITION]
|
||||
[THEN]
|
||||
[% ripartizioniElenco = ripartizioniElenco + newLine; %]
|
||||
[/THEN]
|
||||
[/ELSE IF]
|
||||
[/IF]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
|
||||
[IF][CONDITION][IS_NOT_EMPTY varname="partecipanti" /][/CONDITION][THEN]
|
||||
[% personaIdx = 0; %]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% personaIdx < partecipantiCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="partecipanteFull" type="string"][VALUE_OF varname="partecipantiIterable" index="personaIdx" /][/VAR]
|
||||
[VAR name="partecipanteIterable" type="iterable"][SPLIT regex=", CF: "][TRIM][VALUE_OF varname="partecipanteFull" /][/TRIM][/SPLIT][/VAR]
|
||||
|
||||
[!-- Recupera il nominativo --]
|
||||
[VAR name="partecipanteNominativo" type="string"][VALUE_OF varname="partecipanteIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[!-- Recupera il codice fiscale --]
|
||||
[VAR name="partecipanteResto" type="string"][VALUE_OF varname="partecipanteIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="partecipanteRestoIterable" type="iterable"][SPLIT regex=", Data di inizio: "][VALUE_OF varname="partecipanteResto" /][/SPLIT][/VAR]
|
||||
[VAR name="partecipanteCodiceFiscale" type="string"][VALUE_OF varname="partecipanteRestoIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% personaIdx = personaIdx + 1; %]
|
||||
[% dropdownIdx = dropdownIdx + 1; %]
|
||||
|
||||
[!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come "1.0", etc... --]
|
||||
[VAR name="partecipanteKeyIterable" type="iterable"][SPLIT regex="\."][% dropdownIdx + "" %][/SPLIT][/VAR]
|
||||
[VAR name="partecipanteKey" type="string"][VALUE_OF varname="partecipanteKeyIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% ripartizioniElenco = ripartizioniElenco + "[" + partecipanteKey + "] " + partecipanteNominativo + " (CF: " + partecipanteCodiceFiscale + ")"; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% personaIdx < partecipantiCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% ripartizioniElenco = ripartizioniElenco + newLine; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
[/THEN][/IF]
|
||||
|
||||
[%= ripartizioniElenco %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Elenco RS in formato CSV
|
||||
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: "22085"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoResponsabiliCsv" type="string"][% elencoResponsabiliCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoResponsabili" type="string"][TRIM][TAG]GETVALUEBYTAG,CONTRATTO_RESPONSABILI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoResponsabiliIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoResponsabili" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoResponsabiliCount" type="number"][SIZE_OF varname="elencoResponsabiliIterable" /][/VAR]
|
||||
|
||||
[VAR name="responsabileIdx" type="number"][% responsabileIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="responsabileIterable" type="iterable"][SPLIT regex=", CF: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoResponsabiliIterable" index="responsabileIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="responsabileNominativo" type="string"][VALUE_OF varname="responsabileIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + responsabileNominativo; %]
|
||||
[% responsabileIdx = responsabileIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoResponsabiliCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
info:
|
||||
name: Nominativo completo RS proponente
|
||||
type: http
|
||||
seq: 7
|
||||
|
||||
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: "19758"
|
||||
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="rspTitolo" type="string"][TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="rspCognome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="rspNome" type="string"][TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[%= rspTitolo + " " + rspCognome + " " rspNome %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
info:
|
||||
name: Notifiche email partecipanti - Body
|
||||
type: http
|
||||
seq: 20
|
||||
|
||||
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">È 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] [TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,ID_OBJECT[/TAG] [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 è 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 " contatta il supporto".
|
||||
</td></tr></tbody></table>
|
||||
</body>
|
||||
</html>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
info:
|
||||
name: Notifiche email partecipanti - Subject
|
||||
type: http
|
||||
seq: 19
|
||||
|
||||
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
|
||||
+70
@@ -0,0 +1,70 @@
|
||||
info:
|
||||
name: Partecipanti - Body NO fancy HTML
|
||||
type: http
|
||||
seq: 13
|
||||
|
||||
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: "34396"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"href": "https://procedure.unipr.it/rwe2/module_preview.jsp?MODULE_TAG=RIPARTIZIONE_CCT_DSAN"
|
||||
}
|
||||
}
|
||||
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="rsp_titolo" type="string"][TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[VAR name="rsp_cognome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[VAR name="rsp_nome" type="string"][TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[% responsabileScientificoProponente = rsp_titolo + " " + rsp_cognome + " " + rsp_nome; %]
|
||||
|
||||
[% secondItem = 1; %]
|
||||
[VAR name="partecipanteIterable" type="iterable"][SPLIT regex="\] "][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,ID_OBJECT[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="partecipante" type="string"][VALUE_OF varname="partecipanteIterable" index="secondItem" /][/VAR]
|
||||
[VAR name="importo" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
|
||||
<h2>È necessario compilare la DSAN collegata all'istanza del modulo "Ripartizione Utili / Compensi - Presentazione Proposta" i cui dati sono riportati nel seguito!</h2>
|
||||
|
||||
<h3>Riepilogo dei dati della Proposta</h3>
|
||||
<p>Responsabile Scientifico proponente: <b>[%= responsabileScientificoProponente %]</b></p>
|
||||
<p>Codice contratto: <b>[TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,ID_OBJECT[/TAG]</b></p>
|
||||
<p>Titolo contratto: <b>[TAG]GETVALUEBYTAG,TITOLO_CONTRATTO,REQUEST,ID_OBJECT[/TAG]</b></p>
|
||||
<p>Contraente/i: <b>[TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG]</b></p>
|
||||
|
||||
<h3>Ripartizione</h3>
|
||||
<p>Partecipante: <b>[%= partecipante %]</b></p>
|
||||
<p>Importo (€): <b>[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="importo" /][/FORMAT]</b></p>
|
||||
|
||||
<h3>Modulo DSAN</h3>
|
||||
|
||||
<p>Link al modulo: <b>[%= href %]</b></p>
|
||||
<p><i>(se il link non fosse cliccabile, copiarlo e incollarlo in una nuova finestra del browser)</i></p>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+67
@@ -0,0 +1,67 @@
|
||||
info:
|
||||
name: Partecipanti - Body
|
||||
type: http
|
||||
seq: 12
|
||||
|
||||
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: "32873"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"startTable": "\u003ctable cellpadding='0' cellspacing='0' border='0'\u003e\u003ctbody\u003e",
|
||||
"endTable": "\u003c/tbody\u003e\u003c/table\u003e\r\n",
|
||||
"startRowColspan": "\r\n\u003ctr\u003e\u003ctd style='padding-bottom: 10px; font-family: Arial, Sans-serif; font-size: 13px; color: #222; vertical-align: top;' colspan='2'\u003e",
|
||||
"startLabelRow": "\r\n\u003ctr\u003e\u003ctd style='padding: 0 1em 10px 0; font-family: Arial, Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;'\u003e\u003cdiv\u003e",
|
||||
"startValueRow": "\r\n\u003c/div\u003e\u003c/td\u003e\u003ctd style='padding-bottom: 10px; font-family: Arial,Sans-serif; font-size: 13px; color: #222; vertical-align: top;'\u003e",
|
||||
"endRow": "\u003c/td\u003e\u003c/tr\u003e",
|
||||
"href": "\u003ca href='https://procedure.unipr.it/rwe2/module_preview.jsp?MODULE_TAG=RIPARTIZIONE_CCT_DSAN' target='_blank'\u003eRipartizione Utili / Compensi - DSAN\u003c/a\u003e"
|
||||
}
|
||||
}
|
||||
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="rsp_titolo" type="string"][TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[VAR name="rsp_cognome" type="string"][TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[VAR name="rsp_nome" type="string"][TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,ID_OBJECT[/TAG][/VAR]
|
||||
[% responsabileScientificoProponente = rsp_titolo + " " + rsp_cognome + " " + rsp_nome; %]
|
||||
|
||||
[%= startTable %]
|
||||
[%= startRowColspan %]<b>È necessario compilare la DSAN collegata all'istanza del modulo "Ripartizione Utili / Compensi - Presentazione Proposta" i cui dati sono riportati nel seguito!</b>[%= endRow %]
|
||||
[%= startRowColspan %][%= endRow %]
|
||||
[%= startRowColspan %]<b>Riepilogo dei dati della Proposta</b>[%= endRow %]
|
||||
[%= startRowColspan %][%= endRow %]
|
||||
[%= startLabelRow %]Responsabile Scientifico proponente[%= startValueRow %][%= responsabileScientificoProponente %][%= endRow %]
|
||||
[%= startLabelRow %]Codice contratto[%= startValueRow %][TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,ID_OBJECT[/TAG][%= endRow %]
|
||||
[%= startLabelRow %]Titolo contratto[%= startValueRow %][TAG]GETVALUEBYTAG,TITOLO_CONTRATTO,REQUEST,ID_OBJECT[/TAG][%= endRow %]
|
||||
[%= startLabelRow %]Contraente/i[%= startValueRow %][TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG][%= endRow %]
|
||||
[%= startRowColspan %][%= endRow %]
|
||||
[%= startRowColspan %]<b>Il link al modulo di presentazione della DSAN è: [%= href %]</b>[%= endRow %]
|
||||
[%= endTable %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+66
@@ -0,0 +1,66 @@
|
||||
info:
|
||||
name: Partecipanti - CF per verifica DSAN
|
||||
type: http
|
||||
seq: 17
|
||||
|
||||
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: "32873"
|
||||
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="lastUpdatedImporto" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/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]
|
||||
|
||||
[% partecipanteCF = lastUpdatedNominativoCF; %]
|
||||
|
||||
[!-- La DSAN deve essere presentata da tutti i partecipanti inseriti! --]
|
||||
[!--
|
||||
[IF]
|
||||
[CONDITION][% lastUpdatedNominativoCF != "" && lastUpdatedNominativoCF == richiedenteCF %][/CONDITION]
|
||||
[THEN][% partecipanteCF = ""; %][/THEN]
|
||||
[/IF]
|
||||
--]
|
||||
|
||||
[%= partecipanteCF %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
info:
|
||||
name: Partecipanti - Email
|
||||
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: "32873"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"DEBUG": "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" /]
|
||||
[% item1 = 0; item2 = 1; emailPartecipante = ""; %]
|
||||
|
||||
[VAR name="arrayCfEmailIterable" type="iterable"][SPLIT regex=";"][TAG]GETVALUEBYTAG,SOGGETTI_EMAIL,REQUEST,IUQOID[/TAG][/SPLIT][/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="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="item1" /][/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="item1" /][/VAR]
|
||||
[VAR name="email" type="string"][VALUE_OF varname="coppiaIterable" index="item2" /][/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]
|
||||
|
||||
[%= emailPartecipante %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
info:
|
||||
name: Partecipanti - Importo PTA
|
||||
type: http
|
||||
seq: 16
|
||||
|
||||
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: "32873"
|
||||
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="arrayCF" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTI_QUALIFICA_ALTRO,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[% item1 = 0; item2 = 1; importoDocente = 0; %]
|
||||
|
||||
[VAR name="lastUpdatedNominativo" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="lastUpdatedImporto" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/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="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="item1" /][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="arrayCF" value="lastUpdatedNominativoCF" /][/CONDITION]
|
||||
[THEN][% importoDocente = lastUpdatedImporto; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= importoDocente %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+59
@@ -0,0 +1,59 @@
|
||||
info:
|
||||
name: Partecipanti - Importo docente
|
||||
type: http
|
||||
seq: 15
|
||||
|
||||
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: "32873"
|
||||
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="arrayCF" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTI_QUALIFICA_DOCENTE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[% item1 = 0; item2 = 1; importo = 0; %]
|
||||
|
||||
[VAR name="lastUpdatedNominativo" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="lastUpdatedImporto" type="number"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/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="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="item1" /][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="arrayCF" value="lastUpdatedNominativoCF" /][/CONDITION]
|
||||
[THEN][% importo = lastUpdatedImporto; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= importo %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
info:
|
||||
name: Partecipanti - Riga dati completi ripartizione
|
||||
type: http
|
||||
seq: 18
|
||||
|
||||
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: "32873"
|
||||
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" /]
|
||||
[% item1 = 0; item2 = 1; %]
|
||||
|
||||
[VAR name="partecipante" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="importo" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
|
||||
|
||||
[!-- Rimuoviamo l'indice della scelta da tendina "[X] " --]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex="] "][VALUE_OF varname="partecipante" /][/SPLIT][/VAR]
|
||||
[!-- Scorriamo l'iterable splittando man mano per i divisori nella scelta da tendina --]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex=" \(CF: "][VALUE_OF varname="datiIterable" index="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="nominativo" type="string"][VALUE_OF varname="datiIterable" index="item1" /][/VAR]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex=", Qualifica: "][VALUE_OF varname="datiIterable" index="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="codiceFiscale" type="string"][VALUE_OF varname="datiIterable" index="item1" /][/VAR]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex=", Struttura di afferenza: "][VALUE_OF varname="datiIterable" index="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="qualifica" type="string"][VALUE_OF varname="datiIterable" index="item1" /][/VAR]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex="\)"][VALUE_OF varname="datiIterable" index="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="struttura" type="string"][VALUE_OF varname="datiIterable" index="item1" /][/VAR]
|
||||
|
||||
[%= nominativo + ";;" + codiceFiscale + ";;" + qualifica + ";;" + struttura + ";;" + importo %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
info:
|
||||
name: Partecipanti - Subject
|
||||
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" /]
|
||||
*** 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
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
info:
|
||||
name: Partecipanti - hasDSAN
|
||||
type: http
|
||||
seq: 14
|
||||
|
||||
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: "32873"
|
||||
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" /]
|
||||
[% hasDSAN = "1"; item1 = 0; item2 = 1; %]
|
||||
|
||||
[!-- La DSAN deve essere presentata da tutti i partecipanti inseriti! --]
|
||||
[!--
|
||||
[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="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="item2" /][/SPLIT][/VAR]
|
||||
[VAR name="lastUpdatedNominativoCF" type="string"][VALUE_OF varname="lastUpdatedNominativoRightIterable" index="item1" /][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% lastUpdatedNominativoCF != "" && lastUpdatedNominativoCF == richiedenteCF %][/CONDITION]
|
||||
[THEN][% hasDSAN = "0"; %][/THEN]
|
||||
[/IF]
|
||||
--]
|
||||
|
||||
[%= hasDSAN %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+81
@@ -0,0 +1,81 @@
|
||||
info:
|
||||
name: Recupero importo richiedente da proposta
|
||||
type: http
|
||||
seq: 27
|
||||
|
||||
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: "23663"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "23698"
|
||||
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]
|
||||
|
||||
[!--
|
||||
[%= importoRichiedente %]
|
||||
--]
|
||||
|
||||
[FORMAT type="number" pattern="0.00"][% importoRichiedente %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
docs: |-
|
||||
SchemaId 709
|
||||
Campo COL0118
|
||||
+52
@@ -0,0 +1,52 @@
|
||||
info:
|
||||
name: Ripartizioni - Count da form partecipante
|
||||
type: http
|
||||
seq: 21
|
||||
|
||||
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: "19758"
|
||||
disabled: true
|
||||
- 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" /]
|
||||
[VAR name="ripartizioniIterable" type="iterable"][SPLIT regex="#" emptyIfBlank="true"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioniCount" type="string"][SIZE_OF varname="ripartizioniIterable" /][/VAR]
|
||||
|
||||
[%= ripartizioniCount %]
|
||||
[%= crlf %]
|
||||
[%= ripartizioniIterable %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
info:
|
||||
name: Tabella HTML ripartizioni FOR ADVANCED
|
||||
type: http
|
||||
seq: 24
|
||||
|
||||
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: "31499"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "24068"
|
||||
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]
|
||||
[VAR name="datiRipartizioneIterable" type="iterable"][SPLIT regex="##" emptyIfBlank="true"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="item1" type="number"][% item1 = 0; %][/VAR]
|
||||
[VAR name="item2" type="number"][% item2 = 1; %][/VAR]
|
||||
[VAR name="item3" type="number"][% item3 = 2; %][/VAR]
|
||||
[VAR name="item4" type="number"][% item4 = 3; %][/VAR]
|
||||
[VAR name="item5" type="number"][% item5 = 4; %][/VAR]
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th>Nominativo</th>
|
||||
<th>Codice fiscale</th>
|
||||
<th>Qualifica</th>
|
||||
<th>Struttura</th>
|
||||
<th>Importo (€)</th>
|
||||
</tr>
|
||||
[FOR varName="ripartizione" iterable="datiRipartizioneIterable"][VAR name="datiIterable" type="iterable"][SPLIT regex=";;" emptyIfBlank="true"][VALUE_OF varname="ripartizione" /][/SPLIT][/VAR]
|
||||
<tr>
|
||||
<td>[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 style="text-align: right;">[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT]</td>
|
||||
</tr>[/FOR]
|
||||
</table>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+69
@@ -0,0 +1,69 @@
|
||||
info:
|
||||
name: Tabella HTML ripartizioni FOR
|
||||
type: http
|
||||
seq: 23
|
||||
|
||||
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: "31499"
|
||||
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]
|
||||
[VAR name="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
|
||||
[VAR name="ripartizioniNominativiWithSep" type="string"][TAG]SCHEMAID,538,COL0005,ID_OBJECT,,#[/TAG][/VAR]
|
||||
[VAR name="ripartizioniImportiWithSep" type="string"][TAG]SCHEMAID,538,COL0002,ID_OBJECT,,#[/TAG][/VAR]
|
||||
[VAR name="ripartizioniNominativiIterable" type="iterable"][SPLIT regex="#" emptyIfBlank="true"][VALUE_OF varname="ripartizioniNominativiWithSep" /][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioniImportiIterable" type="iterable"][SPLIT regex="#" emptyIfBlank="true"][VALUE_OF varname="ripartizioniImportiWithSep" /][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneIdx" type="string"][% ripartizioneIdx = 0; %][/VAR]
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[%= ripartizioniNominativiIterable %]
|
||||
<table>
|
||||
<tr>
|
||||
<th>Partecipante</th><th>Importo (EUR)</th></tr>
|
||||
[FOR varName="ripartizione" iterable="ripartizioniNominativiIterable"]
|
||||
[VAR name="ripartizioneNominativoFull" type="string"][VALUE_OF varname="ripartizioniNominativiIterable" index="ripartizioneIdx" /][/VAR]
|
||||
[VAR name="ripartizioneImporto" type="string"][VALUE_OF varname="ripartizioniImportiIterable" index="ripartizioneIdx" /][/VAR]
|
||||
[VAR name="ripartizioneNominativoIterable" type="iterable"][SPLIT regex="] "][TRIM][VALUE_OF varname="ripartizioneNominativoFull" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneNominativo" type="string"][VALUE_OF varname="ripartizioneNominativoIterable" index="secondItem" /][/VAR]
|
||||
[% ripartizioneIdx = ripartizioneIdx + 1; %]
|
||||
[VAR name="ripartizioneKeyIterable" type="iterable"][SPLIT regex="\."][% ripartizioneIdx + "" %][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneKey" type="string"][VALUE_OF varname="ripartizioneKeyIterable" index="firstItem" /][/VAR]
|
||||
<tr>
|
||||
<td>[VALUE_OF varname="ripartizioneNominativo" /]</td><td>[VALUE_OF varname="ripartizioneImporto" /]</td>
|
||||
</tr>
|
||||
[/FOR]
|
||||
</table>
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+88
@@ -0,0 +1,88 @@
|
||||
info:
|
||||
name: Tabella HTML ripartizioni WHILE
|
||||
type: http
|
||||
seq: 22
|
||||
|
||||
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: "19758"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "23629"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "23761"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "31499"
|
||||
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="ripartizioniNominativiWithSep" type="string"][TAG]SCHEMAID,538,COL0005,ID_OBJECT,,#[/TAG][/VAR]
|
||||
[VAR name="ripartizioniImportiWithSep" type="string"][TAG]SCHEMAID,538,COL0002,ID_OBJECT,,#[/TAG][/VAR]
|
||||
|
||||
[%= "<table><tr><th>Partecipante</th><th>Importo (EUR)</th></tr>" %]
|
||||
|
||||
[IF][CONDITION][IS_NOT_EMPTY varname="ripartizioniNominativiWithSep" /][/CONDITION][THEN]
|
||||
[VAR name="ripartizioniNominativiIterable" type="iterable"][SPLIT regex="#" emptyIfBlank="true"][VALUE_OF varname="ripartizioniNominativiWithSep" /][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioniImportiIterable" type="iterable" emptyIfBlank="true"][SPLIT regex="#"][VALUE_OF varname="ripartizioniImportiWithSep" /][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioniCount" type="number"][SIZE_OF varname="ripartizioniNominativiIterable" /][/VAR]
|
||||
[VAR name="ripartizioneIdx" type="string"][% ripartizioneIdx = 0; %][/VAR]
|
||||
[VAR name="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% ripartizioneIdx < ripartizioniCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="ripartizioneNominativoFull" type="string"][VALUE_OF varname="ripartizioniNominativiIterable" index="ripartizioneIdx" /][/VAR]
|
||||
[VAR name="ripartizioneImporto" type="number"][VALUE_OF varname="ripartizioniImportiIterable" index="ripartizioneIdx" /][/VAR]
|
||||
[VAR name="ripartizioneNominativoIterable" type="iterable"][SPLIT regex="] "][TRIM][VALUE_OF varname="ripartizioneNominativoFull" /][/TRIM][/SPLIT][/VAR]
|
||||
|
||||
[!-- Recupera il nominativo --]
|
||||
[VAR name="ripartizioneNominativo" type="string"][VALUE_OF varname="ripartizioneNominativoIterable" index="secondItem" /][/VAR]
|
||||
|
||||
[% ripartizioneIdx = ripartizioneIdx + 1; %]
|
||||
|
||||
[!-- HACK ignobile per recuperare il numero che altrimenti verrebbe emesso come "1.0", etc... --]
|
||||
[VAR name="ripartizioneKeyIterable" type="iterable"][SPLIT regex="\."][% ripartizioneIdx + "" %][/SPLIT][/VAR]
|
||||
[VAR name="ripartizioneKey" type="string"][VALUE_OF varname="ripartizioneKeyIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[%= "<tr><td>" + ripartizioneNominativo + "</td><td>" %][FORMAT type="number" pattern="#,##0.00"][% ripartizioneImporto %][/FORMAT][%= "</td></tr>" %]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
[/THEN][/IF]
|
||||
|
||||
[%= "</table>" %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+108
@@ -0,0 +1,108 @@
|
||||
info:
|
||||
name: elixPro - Recupero importi inseriti
|
||||
type: http
|
||||
seq: 25
|
||||
|
||||
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: "31630"
|
||||
- name: x-ef-request-id
|
||||
value: "31499"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "31801"
|
||||
disabled: true
|
||||
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" /]
|
||||
[!--
|
||||
[% insertCodiciFiscali = "RSSNDR76L16I153I##CHPLCU79H14G337H##RSSNDR76L16I153I##GNTLDN64A67D643P##GNTLDN64A67D643P##CHPLCU79H14G337H"; %]
|
||||
[% insertImporti = "1234,56##7890,12##456321,87##14,25##888##777"; %]
|
||||
[% insertModalita = "Fuori orario di lavoro##In orario di lavoro##In orario di lavoro##In orario di lavoro##Fuori orario di lavoro##Fuori 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="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="modalitaIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertModalita" /][/SPLIT][/VAR]
|
||||
[VAR name="insertCount" type="number"][SIZE_OF varname="codiciFiscaliIterable" /][/VAR]
|
||||
|
||||
CF: [%= codiciFiscaliIterable %]
|
||||
IM: [%= importiIterable %]
|
||||
MO: [%= modalitaIterable %]
|
||||
CN: [%= insertCount %]
|
||||
|
||||
[VAR name="datiRipartizioneIterable" type="iterable"][SPLIT regex="##" emptyIfBlank="true"][TAG]GETVALUEBYTAG,RIPARTIZIONE_DATI_COMPLETI,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="item1" type="number"][% item1 = 0; %][/VAR][!-- Nominativo --]
|
||||
[VAR name="item2" type="number"][% item2 = 1; %][/VAR][!-- Codice fiscale --]
|
||||
[VAR name="item3" type="number"][% item3 = 2; %][/VAR][!-- Qualifica --]
|
||||
[VAR name="item4" type="number"][% item4 = 3; %][/VAR][!-- Struttura --]
|
||||
[VAR name="item5" type="number"][% item5 = 4; %][/VAR][!-- Importo --]
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th>Nominativo</th>
|
||||
<th>Codice fiscale</th>
|
||||
<th>Qualifica</th>
|
||||
<th>Struttura</th>
|
||||
<th>Importo (€)</th>
|
||||
</tr>[FOR varName="ripartizione" iterable="datiRipartizioneIterable"] [% modalita = ""; %] [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] [% insertIdx = 0; %] [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="modalita"][VALUE_OF varname="modalitaIterable" index="insertIdx" /][/VAR] [VAR name="importo"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR] [IF] [CONDITION][% codiceFiscale == codiceFiscaleCorrente && modalita == "In orario di lavoro" %][/CONDITION] [THEN][VAR name="importoDentro" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR][/THEN] [/IF] [IF] [CONDITION][% codiceFiscale == codiceFiscaleCorrente && modalita == "Fuori orario di lavoro" %][/CONDITION] [THEN][VAR name="importoFuori" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR][/THEN] [/IF] [% insertIdx = insertIdx + 1; %] [/DO] [/WHILE]
|
||||
<tr>
|
||||
<td>[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 style="text-align: right;">[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT]</td>
|
||||
</tr>
|
||||
[IF] [CONDITION][% importoDentro == 0 && importoFuori == 0 %][/CONDITION] [THEN][/THEN] [ELSE]
|
||||
<tr>
|
||||
<td colspan="3"></td>
|
||||
<td style="text-align: right;">di cui in orario di lavoro</td>
|
||||
<td style="text-align: right;">[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="importoDentro" /][/FORMAT]</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3"></td>
|
||||
<td style="text-align: right;">fuori orario di lavoro</td>
|
||||
<td style="text-align: right;">[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="importoFuori" /][/FORMAT]</td>
|
||||
</tr>
|
||||
[/ELSE] [/IF]
|
||||
[/FOR]
|
||||
</table>
|
||||
|
||||
[!--
|
||||
Approvazione della ripartizione di Utili richiesta da [TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,ID_OBJECT[/TAG],[% ripartizioneIdx = 0; %][FOR varName="ripartizione" iterable="datiRipartizioneIterable"][VAR name="datiIterable" type="iterable"][SPLIT regex=";;" emptyIfBlank="true"][VALUE_OF varname="ripartizione" /][/SPLIT][/VAR] di [FORMAT type="number" pattern="currency"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT] a [VALUE_OF varname="datiIterable" index="item1" /],[/FOR] e autorizzazione alla U.O. Stipendi e Compensi al pagamento dei compensi per un importo lordo comprensivo totale di [FORMAT type="number" pattern="currency"][TAG]GETVALUEBYTAG,RIPARTIZIONI_TOTALE_PROPOSTA,REQUEST,ID_OBJECT[/TAG][/FORMAT] da imputare al Budget dell’anno
|
||||
--]
|
||||
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+141
@@ -0,0 +1,141 @@
|
||||
info:
|
||||
name: elixPro - Template Delibera ONLYTABLE
|
||||
type: http
|
||||
seq: 29
|
||||
|
||||
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: "31630"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "31499"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "31801"
|
||||
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]
|
||||
|
||||
[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]
|
||||
|
||||
[VAR name="item1" type="number"][% item1 = 0; %][/VAR]
|
||||
[VAR name="item2" type="number"][% item2 = 1; %][/VAR]
|
||||
[VAR name="item3" type="number"][% item3 = 2; %][/VAR]
|
||||
[VAR name="item4" type="number"][% item4 = 3; %][/VAR]
|
||||
[VAR name="item5" type="number"][% item5 = 4; %][/VAR]
|
||||
|
||||
<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 (€)</th>
|
||||
</tr>
|
||||
[FOR varName="ripartizione" iterable="datiRipartizioneIterable"]
|
||||
[VAR name="datiIterable" type="iterable"][SPLIT regex=";;" emptyIfBlank="true"][VALUE_OF varname="ripartizione" /][/SPLIT][/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; firstCfMatch = true; %]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% insertIdx < insertCount %][/CONDITION]
|
||||
[DO]
|
||||
[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 && importo != "" && importo != 0 %][/CONDITION]
|
||||
[THEN]
|
||||
[% 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]
|
||||
[% insertIdx = insertIdx + 1; %]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
|
||||
[/FOR]
|
||||
</table>
|
||||
|
||||
[/EFTL]
|
||||
`);
|
||||
- type: after-response
|
||||
code: |-
|
||||
var status = res.status;
|
||||
|
||||
if (status !== 200) {
|
||||
console.log("ERRORE HTTP! Response status code: " + status);
|
||||
return;
|
||||
}
|
||||
|
||||
var decodedDocument = "";
|
||||
var response = res.getBody();
|
||||
|
||||
if (response.value.code === "ERROR") {
|
||||
decodedDocument = "<h1>ERRORE EFTL!</h1>";
|
||||
decodedDocument += "<b>" + response.value.description.split("\n").slice(0, 3).join("\n") + "</b>";
|
||||
}
|
||||
else if (response.value.processedDocument === "") {
|
||||
decodedDocument = "<h1>EMPTY OUTPUT!</h1>";
|
||||
decodedDocument += "<b>" + response.value.description.split("\n").slice(0, 3).join("\n") + "</b>";
|
||||
}
|
||||
else {
|
||||
decodedDocument = atob(response.value.processedDocument);
|
||||
}
|
||||
|
||||
bru.visualize('html', {
|
||||
name: 'HTML',
|
||||
content: decodedDocument
|
||||
});
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+149
@@ -0,0 +1,149 @@
|
||||
info:
|
||||
name: elixPro - Template Delibera
|
||||
type: http
|
||||
seq: 28
|
||||
|
||||
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: "31630"
|
||||
- name: x-ef-request-id
|
||||
value: "31499"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "31801"
|
||||
disabled: true
|
||||
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`
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
[EFTL]
|
||||
<head>
|
||||
<style>
|
||||
body {
|
||||
font-family: Calibri, Arial, Sans-serif;
|
||||
font-size: 10pt;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
@media print {
|
||||
@page {
|
||||
size: A4;
|
||||
margin-top: 4cm !important;
|
||||
margin-right: 2cm !important;
|
||||
margin-bottom: 2cm !important;
|
||||
margin-left: 2cm !important;
|
||||
|
||||
@top-left {
|
||||
margin: 0;
|
||||
width: 45%;
|
||||
background-image: url("https://procedure.unipr.it/UploadImgs/8_marchio_UNIPR_pos_b1_small.png");
|
||||
background-attachment: fixed;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 2cm 0.5cm;
|
||||
padding-top: 95px;
|
||||
padding-left: 90px;
|
||||
content: "[TAG]GETVALUEBYTAG,STRUTTURA_PRINCIPALE_DESC_UPPER,REQUEST,ID_OBJECT[/TAG]";
|
||||
font-family: Calibri, Arial, Sans-serif;
|
||||
font-size: 11pt;
|
||||
font-weight: bold;
|
||||
text-align: left;
|
||||
color: #005ab9;
|
||||
}
|
||||
|
||||
@bottom-center {
|
||||
margin: 0px;
|
||||
content: url("https://procedure.unipr.it/UploadImgs/9_text4.png");
|
||||
font-size: 8pt;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
color: #005ab9;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: Calibri, Arial, Sans-serif;
|
||||
font-size: 10pt;
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
td {
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div> </div>
|
||||
<div>Il direttore sottopone al Consiglio la richiesta pervenuta da [TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,ID_OBJECT[/TAG], (corredata dalla documentazione richiesta dalla procedura per la liquidazione dei compensi e acquisita al protocollo di dipartimento col num. <span style="background-color: #ffff00;">NUM_PROT</span> del <span style="background-color: #ffff00;">DATA_PROT</span>), con la quale il richiedente, in qualità di Responsabile Scientifico del contratto di tipologia “[TAG]SCHEMAID,542,COL0003,ID_OBJECT, , [/TAG]” dal titolo “[TAG]GETVALUEBYTAG,TITOLO_CONTRATTO,REQUEST,ID_OBJECT[/TAG]” stipulato con [TAG]GETVALUEBYTAG,CONTRATTO_CONTRAENTI,REQUEST,ID_OBJECT[/TAG], chiede di ripartire gli utili sul contratto su menzionato come segue:</div>
|
||||
<div> </div>
|
||||
<div> </div>
|
||||
<div>[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="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="modalitaIterable" type="iterable"][SPLIT regex="##"][VALUE_OF varname="insertModalita" /][/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] [VAR name="item1" type="number"][% item1 = 0; %][/VAR] [VAR name="item2" type="number"][% item2 = 1; %][/VAR] [VAR name="item3" type="number"][% item3 = 2; %][/VAR] [VAR name="item4" type="number"][% item4 = 3; %][/VAR] [VAR name="item5" type="number"][% item5 = 4; %][/VAR] <table style='width: 95%; margin: 0 auto;'> <tr> <th>Nominativo</th> <th>Codice fiscale</th> <th>Qualifica</th> <th>Struttura</th> <th>Importo (€)</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] [% insertIdx = 0; %] [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="modalita"][VALUE_OF varname="modalitaIterable" index="insertIdx" /][/VAR] [VAR name="importo"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR] [IF] [CONDITION][% codiceFiscale == codiceFiscaleCorrente && modalita == "In orario di lavoro" %][/CONDITION] [THEN][VAR name="importoDentro" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR][/THEN] [/IF] [IF] [CONDITION][% codiceFiscale == codiceFiscaleCorrente && modalita == "Fuori orario di lavoro" %][/CONDITION] [THEN][VAR name="importoFuori" type="number"][VALUE_OF varname="importiIterable" index="insertIdx" /][/VAR][/THEN] [/IF] [% insertIdx = insertIdx + 1; %] [/DO] [/WHILE] <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 style='text-align: right;'>[FORMAT type="number" pattern="#,##0.00"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT]</td> </tr> [IF] [CONDITION][% importoDentro == 0 && importoFuori == 0 %][/CONDITION] [THEN][/THEN] [ELSE]<tr> <td colspan="4" style='text-align: right;'>di cui in orario di lavoro</td> <td style='text-align: right;'>[VALUE_OF varname="importoDentro" /]</td> </tr> <tr> <td colspan="4" style='text-align: right;'>fuori orario di lavoro</td> <td style='text-align: right;'>[VALUE_OF varname="importoFuori" /]</td> </tr>[/ELSE] [/IF] [/FOR] </table></div>
|
||||
<div> </div>
|
||||
<div> </div>
|
||||
<div>A seguito di discussione, il Consiglio adotta la seguente delibera:</div>
|
||||
<div> </div>
|
||||
<div> </div>
|
||||
<div><span style="background-color: #ffff00;">TESTO DELIBERA</span></div>
|
||||
<div> </div>
|
||||
<div> </div>
|
||||
<div><span style="background-color: #ffff00;">__/AAAA/__</span> Approvazione della ripartizione di Utili richiesta da [TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,ID_OBJECT[/TAG],[% ripartizioneIdx = 0; %][FOR varName="ripartizione" iterable="datiRipartizioneIterable"][VAR name="datiIterable" type="iterable"][SPLIT regex=";;" emptyIfBlank="true"][VALUE_OF varname="ripartizione" /][/SPLIT][/VAR] di [FORMAT type="number" pattern="currency"][VALUE_OF varname="datiIterable" index="item5" /][/FORMAT] a [VALUE_OF varname="datiIterable" index="item1" /],[/FOR] e autorizzazione alla U.O. Stipendi e Compensi al pagamento dei compensi per un importo lordo comprensivo totale di [FORMAT type="number" pattern="currency"][TAG]GETVALUEBYTAG,RIPARTIZIONI_TOTALE_PROPOSTA,REQUEST,ID_OBJECT[/TAG][/FORMAT] da imputare al Budget dell’anno <span style="background-color: #ffff00;">YYYY</span> assegnato alla <span style="background-color: #ffff00;">UA.XX.Y.ZZZ1</span>, Progetto [TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,ID_OBJECT[/TAG], vincolo n. <span style="background-color: #ffff00;">NNNN</span>;</div>
|
||||
<p> </p>
|
||||
<div>Il Consiglio, preso atto di quanto illustrato da [TAG]GETVALUEBYTAG,RSP_TITOLO,REQUEST,ID_OBJECT[/TAG] [TAG]GETVALUEBYTAG,RSP_COGNOME,REQUEST,ID_OBJECT[/TAG] [TAG]GETVALUEBYTAG,RSP_NOME,REQUEST,ID_OBJECT[/TAG], esprime parere favorevole all’approvazione della ripartizione di Utili richiesta da [TAG]GETVALUEBYTAG,RICHIEDENTE_NOMINATIVO,REQUEST,ID_OBJECT[/TAG], e dà mandato agli uffici dell’Amministrazione Centrale per ogni successivo adempimento necessario al suo perfezionamento.</div>
|
||||
</body>
|
||||
[/EFTL]
|
||||
</html>
|
||||
`);
|
||||
- type: after-response
|
||||
code: |-
|
||||
var status = res.status;
|
||||
|
||||
if (status !== 200) {
|
||||
console.log("ERRORE HTTP! Response status code: " + status);
|
||||
return;
|
||||
}
|
||||
|
||||
var decodedDocument = "";
|
||||
var response = res.getBody();
|
||||
|
||||
if (response.value.code === "ERROR") {
|
||||
decodedDocument = "ERRORE EFTL!\n";
|
||||
decodedDocument += response.value.description.split("\n").slice(0, 3).join("\n");
|
||||
}
|
||||
else {
|
||||
decodedDocument = atob(response.value.processedDocument);
|
||||
}
|
||||
|
||||
bru.visualize('html', {
|
||||
name: 'HTML',
|
||||
content: decodedDocument
|
||||
});
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Proposta
|
||||
type: folder
|
||||
seq: 1
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: CCT - Liquidazione Compensi
|
||||
type: folder
|
||||
seq: 3
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+62
@@ -0,0 +1,62 @@
|
||||
info:
|
||||
name: Calcolo D.1.3 5% con virgole
|
||||
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: "22748"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;"
|
||||
}
|
||||
}
|
||||
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="D1_1" type="number"][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_D_1_1,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="D1_2" type="number"][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_D_1_2,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="A" type="number"][TAG]SCHEMAID,338,COL0001,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="D1_3" type="number"][% D1_3 = D1_1 + D1_2 - (A * 0.20); %][/VAR]
|
||||
[VAR name="QuotaAteneo" type="number"][% QuotaAteneo = 0; %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% D1_3 > 0 %][/CONDITION]
|
||||
[THEN][% QuotaAteneo = D1_3 * 0.05; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[FORMAT type="number" pattern="#,##0.00"][% QuotaAteneo %][/FORMAT]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
info:
|
||||
name: Calcolo D.1.3 con virgole
|
||||
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: "22737"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22224"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22748"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22705"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22754"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;"
|
||||
}
|
||||
}
|
||||
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="ceiling" type="string"][TAG]GETVALUEBYTAG,CORRISPETTIVO_CEILING,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[!-- HACK per numeri corretti!!!1! --]
|
||||
[VAR name="ceilingIterable" type="iterable"][SPLIT regex="\."][TAG]GETVALUEBYTAG,CORRISPETTIVO_CEILING,REQUEST,IUQOID[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="first" type="number"][% first = 0; %][/VAR]
|
||||
[VAR name="second" type="number"][% second = 1; %][/VAR]
|
||||
[VAR name="ceilingInteger" type="string"][VALUE_OF varname="ceilingIterable" index="first" /][/VAR]
|
||||
[VAR name="ceilingDecimal" type="string"][VALUE_OF varname="ceilingIterable" index="second" /][/VAR]
|
||||
[IF][CONDITION][IS_EMPTY varname="ceilingDecimal" /][/CONDITION][THEN][% ceilingDecimal = "00"; %][/THEN][/IF]
|
||||
[VAR name="ceilingNumber" type="number"][% ceilingNumber = ceilingInteger + "," + ceilingDecimal; %][/VAR]
|
||||
|
||||
[%= ceilingNumber %]
|
||||
[%= " --- " %]
|
||||
[%= ceilingNumber * 0.20 %]
|
||||
[%= " --- " %]
|
||||
[%= ceiling %]
|
||||
[%= " --- " %]
|
||||
[%= ceilingInteger %]
|
||||
[%= " --- " %]
|
||||
[%= ceilingDecimal %]
|
||||
|
||||
[VAR name="numberIterable" type="iterable"][SPLIT regex="\."][TAG]SCHEMAID,341,COL0009,IUQOID, , [/TAG][/SPLIT][/VAR]
|
||||
[VAR name="first" type="number"][% first = 0; %][/VAR]
|
||||
[VAR name="second" type="number"][% second = 1; %][/VAR]
|
||||
[VAR name="numberIntegerPart" type="string"][VALUE_OF varname="numberIterable" index="first" /][/VAR]
|
||||
[VAR name="numberDecimalPart" type="string"][VALUE_OF varname="numberIterable" index="second" /][/VAR]
|
||||
[IF][CONDITION][IS_EMPTY varname="numberDecimalPart" /][/CONDITION][THEN][% numberDecimalPart = "00"; %][/THEN][/IF]
|
||||
[VAR name="valueAsNumber" type="number"][% valueAsNumber = numberIntegerPart + "," + numberDecimalPart; %][/VAR]
|
||||
|
||||
[VAR name="fattoreRitenuta2max" type="number"][TAG]SCHEMAID,341,COL0030,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="ritenuta2max" type="number"][% ritenuta2max = valueAsNumber * fattoreRitenuta2max; %][/VAR]
|
||||
[VAR name="ritenuta2maxMessage" type="string"][% ritenuta2maxMessage = "L'importo massimo (2%) dell'ulteriore ritenuta deliberata dalla struttura è: " + ritenuta2max + " €"; %][/VAR]
|
||||
|
||||
[%= ritenuta2maxMessage %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
info:
|
||||
name: Codice Contratto con caratteri strani
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
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: "16204"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"itemCodiceContratto": "CRIS_G_25_CCS_IST_RA_UNIVERSITÀPOLITECNICADELL_01"
|
||||
}
|
||||
}
|
||||
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=\"codiceContratto\" type=\"string\"][VALUE_OF varname=\"itemCodiceContratto\" /][/VAR]
|
||||
|
||||
[VAR name=\"debug\" type=\"boolean\"][% debug = false; %][/VAR]
|
||||
|
||||
|
||||
[!-- Titolo contratto ha il formato \"[codice_contratto] titolo\" --]
|
||||
|
||||
[!-- La prima split fatta per \"\\] \" mi restituisce \"[codice_contratto\" --]
|
||||
|
||||
[VAR name=\"firstSplit\" type=\"iterable\"][SPLIT regex=\"\\] \"][VALUE_OF varname=\"itemCodiceContratto\" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name=\"firstSplitIdx\"][% firstSplitIdx = 0; %][/VAR]
|
||||
|
||||
[!-- La seconda split fatta per \"\\[\" mi restituisce \"codice_contratto\" --]
|
||||
|
||||
[VAR name=\"secondSplit\" type=\"iterable\"][SPLIT regex=\"\\[\"][VALUE_OF varname=\"firstSplit\" index=\"firstSplitIdx\" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name=\"secondSplitIdx\"][% secondSplitIdx = 1; %][/VAR]
|
||||
|
||||
|
||||
[VAR name=\"condizione\"][SIZE_OF varname=\"secondSplit\" /][/VAR]
|
||||
|
||||
[IF]
|
||||
|
||||
\ [CONDITION][% condizione > 1 %][/CONDITION]
|
||||
|
||||
\ [THEN]
|
||||
|
||||
\ [VAR name=\"codiceContratto\" type=\"string\"][VALUE_OF varname=\"secondSplit\" index=\"secondSplitIdx\" /][/VAR]
|
||||
|
||||
\ [/THEN]
|
||||
|
||||
[/IF]
|
||||
|
||||
|
||||
[VAR name=\"codiceContrattoSplit\" type=\"iterable\"][SPLIT regex=\"Ã\"][VALUE_OF varname=\"codiceContratto\" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name=\"condizioneSplit\"][SIZE_OF varname=\"codiceContrattoSplit\" /][/VAR]
|
||||
|
||||
[IF]
|
||||
|
||||
\ [CONDITION][% condizioneSplit > 1 %][/CONDITION]
|
||||
|
||||
\ [THEN]
|
||||
|
||||
\ [% debug = true; %]
|
||||
|
||||
\ [VAR name=\"codiceContrattoSplitFirst\" type=\"string\"][VALUE_OF varname=\"codiceContrattoSplit\" index=\"firstSplitIdx\" /][/VAR]
|
||||
|
||||
\ [VAR name=\"codiceContrattoSplitSecond\" type=\"string\"][VALUE_OF varname=\"codiceContrattoSplit\" index=\"secondSplitIdx\" /][/VAR]
|
||||
|
||||
\ [% codiceContratto = codiceContrattoSplitFirst + \"%C3%80\" + codiceContrattoSplitSecond; %]
|
||||
|
||||
\ [/THEN]
|
||||
|
||||
[/IF]
|
||||
|
||||
|
||||
<html>
|
||||
|
||||
<ul>
|
||||
|
||||
<li>[%= codiceContratto %]</li>
|
||||
|
||||
<li>[%= codiceContrattoSplit %]</li>
|
||||
|
||||
<li>[%= debug %]</li>
|
||||
|
||||
</ul>
|
||||
|
||||
</html>
|
||||
|
||||
[/EFTL]
|
||||
|
||||
`);"
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+111
@@ -0,0 +1,111 @@
|
||||
info:
|
||||
name: Contratto IS economico
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
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: "8463"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"docs": [
|
||||
{
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
},
|
||||
{
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
},
|
||||
{
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
],
|
||||
"docsAsEntities": [
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
}
|
||||
],
|
||||
"singleEntity": {
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
"simpleList": [
|
||||
"s1",
|
||||
"s2",
|
||||
"s3"
|
||||
],
|
||||
"docsSize": 3
|
||||
}
|
||||
}
|
||||
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="tipologiaCodice" type="string"][TAG]GETVALUEBYTAG,TIPOLOGIA_CODICE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="isEconomico" type="boolean"][% isEconomico = true; %][/VAR]
|
||||
[VAR name="tipologieNonEconomico" type="iterable"][SPLIT regex=";"][TAG]GETVALUEBYTAG,TIPOLOGIE_NON_ECONOMICO,REQUEST,IUQOID[/TAG][/SPLIT][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION]
|
||||
[CONTAINS varname="tipologieNonEconomico"][VALUE_OF varname="tipologiaCodice" /][/CONTAINS]
|
||||
[/CONDITION]
|
||||
[THEN][% isEconomico = false; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[%= isEconomico %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
info:
|
||||
name: Elenco Contraenti CSV (nominativo)
|
||||
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: "17144"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "15956"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoContraentiCsv" type="string"][% elencoContraentiCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoContraenti" type="string"][TRIM][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRAENTI,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoContraentiIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoContraenti" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoContraentiCount" type="number"][SIZE_OF varname="elencoContraentiIterable" /][/VAR]
|
||||
|
||||
[VAR name="contraenteIdx" type="number"][% contraenteIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="contraenteIterable" type="iterable"][SPLIT regex=", CF/PIVA: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoContraentiIterable" index="contraenteIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="contraenteDenominazione" type="string"][VALUE_OF varname="contraenteIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + contraenteDenominazione; %]
|
||||
[% contraenteIdx = contraenteIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% contraenteIdx < elencoContraentiCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoContraentiCsv = elencoContraentiCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoContraentiCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
info:
|
||||
name: Elenco RS CSV (cognome nome)
|
||||
type: http
|
||||
seq: 7
|
||||
|
||||
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: "17144"
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
[VAR name="elencoResponsabiliCsv" type="string"][% elencoResponsabiliCsv = ""; %][/VAR]
|
||||
|
||||
[VAR name="elencoResponsabili" type="string"][TRIM][TAG]GETVALUEBYTAG,PROPOSTA_CCT_ALTRI_RS,REQUEST,ID_OBJECT[/TAG][/TRIM][/VAR]
|
||||
[VAR name="elencoResponsabiliIterable" type="iterable"][SPLIT regex="\n" emptyIfBlank="true"][VALUE_OF varname="elencoResponsabili" /][/SPLIT][/VAR]
|
||||
[VAR name="elencoResponsabiliCount" type="number"][SIZE_OF varname="elencoResponsabiliIterable" /][/VAR]
|
||||
|
||||
[VAR name="responsabileIdx" type="number"][% responsabileIdx = 0; %][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="responsabileIterable" type="iterable"][SPLIT regex=", CF: " emptyIfBlank="true"][TRIM][VALUE_OF varname="elencoResponsabiliIterable" index="responsabileIdx" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="responsabileNominativo" type="string"][VALUE_OF varname="responsabileIterable" index="firstItem" /][/VAR]
|
||||
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + responsabileNominativo; %]
|
||||
[% responsabileIdx = responsabileIdx + 1; %]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% responsabileIdx < elencoResponsabiliCount %][/CONDITION]
|
||||
[THEN]
|
||||
[% elencoResponsabiliCsv = elencoResponsabiliCsv + ", "; %]
|
||||
[/THEN]
|
||||
[/IF]
|
||||
[/DO][/WHILE]
|
||||
|
||||
[%= elencoResponsabiliCsv %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+133
@@ -0,0 +1,133 @@
|
||||
info:
|
||||
name: Elenco contraenti formattati
|
||||
type: http
|
||||
seq: 13
|
||||
|
||||
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: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"docs": [
|
||||
{
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
},
|
||||
{
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
},
|
||||
{
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
],
|
||||
"docsAsEntities": [
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
}
|
||||
],
|
||||
"singleEntity": {
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
"simpleList": [
|
||||
"s1",
|
||||
"s2",
|
||||
"s3"
|
||||
],
|
||||
"docsSize": 3
|
||||
}
|
||||
}
|
||||
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="idxNome" type="number"][% idxNome = 0; %][/VAR]
|
||||
[VAR name="idxCfPIva" type="number"][% idxCfPIva = 1; %][/VAR]
|
||||
[VAR name="idxSede" type="number"][% idxSede = 2; %][/VAR]
|
||||
|
||||
[VAR name="elencoContraentiCompleto" type="string"][% elencoContraentiCompleto = ""; %][/VAR]
|
||||
|
||||
[VAR name="contraenti" type="iterable"][SPLIT regex="\n"][TAG]SCHEMAID,341,COL0004,IUQOID, , [/TAG][/SPLIT][/VAR]
|
||||
[VAR name="countContraenti" type="number"][SIZE_OF varname="contraenti" /][/VAR]
|
||||
[VAR name="idxContraente" type="number"][% idxContraente = 0; %][/VAR]
|
||||
|
||||
[!-- Estraggo i dati del primo contraente (ce ne sarà sempre almeno uno) --]
|
||||
[VAR name="currContraente" type="string"][VALUE_OF varname="contraenti" index="idxContraente" /][/VAR]
|
||||
[VAR name="currContraenteSplit" type="iterable"][SPLIT regex=", (.*?):"][TRIM][VALUE_OF varname="currContraente" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="currContraenteNome" type="string"][TRIM][VALUE_OF varname="currContraenteSplit" index="idxNome" /][/TRIM][/VAR]
|
||||
[VAR name="currContraenteCfPIva" type="string"][TRIM][VALUE_OF varname="currContraenteSplit" index="idxCfPIva" /][/TRIM][/VAR]
|
||||
[VAR name="currContraenteSede" type="string"][TRIM][VALUE_OF varname="currContraenteSplit" index="idxSede" /][/TRIM][/VAR]
|
||||
[% elencoContraentiCompleto = currContraenteNome + " (CF/PIVA: " + currContraenteCfPIva + ") con sede legale in " + currContraenteSede; %]
|
||||
|
||||
[!-- Se c'è più di un contraente, ciclo su tutti i rimanenti (tutto questo per non avere una ", " in fondo alla stringa finale...) --]
|
||||
[WHILE]
|
||||
[CONDITION][% idxContraente < countContraenti - 1 %][/CONDITION]
|
||||
[DO]
|
||||
[% idxContraente = idxContraente + 1; %]
|
||||
|
||||
[VAR name="currContraente" type="string"][VALUE_OF varname="contraenti" index="idxContraente" /][/VAR]
|
||||
[VAR name="currContraenteSplit" type="iterable"][SPLIT regex=", (.*?):"][TRIM][VALUE_OF varname="currContraente" /][/TRIM][/SPLIT][/VAR]
|
||||
[VAR name="currContraenteNome" type="string"][VALUE_OF varname="currContraenteSplit" index="idxNome" /][/VAR]
|
||||
[VAR name="currContraenteCfPIva" type="string"][VALUE_OF varname="currContraenteSplit" index="idxCfPIva" /][/VAR]
|
||||
[VAR name="currContraenteSede" type="string"][VALUE_OF varname="currContraenteSplit" index="idxSede" /][/VAR]
|
||||
[% elencoContraentiCompleto = elencoContraentiCompleto + ", " + currContraenteNome + " (CF/PIVA: " + currContraenteCfPIva + ") con sede legale in " + currContraenteSede; %]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
|
||||
[%= elencoContraentiCompleto %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
info:
|
||||
name: Fascicolo e documento - Nuovo formato
|
||||
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: "17144"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "15956"
|
||||
- name: x-ef-request-id
|
||||
value: "25981"
|
||||
disabled: true
|
||||
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="idContratto" type="string"][TAG]GETVALUEBYTAG,ID_IRIS,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="titoloContratto" type="string"][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_DESCR,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="responsabiliCsv" type="string"][TAG]GETVALUEBYTAG,ELENCO_RS_CSV,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="contraentiCsv" type="string"][TAG]GETVALUEBYTAG,ELENCO_CONTRAENTI_CSV,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
Debug: [TAG]GETVALUEBYTAG,RICHIEDENTE_CODFIS,REQUEST,IUQOID[/TAG]
|
||||
|
||||
Fascicolo: [TAG]GETVALUEBYTAG,ID_IRIS,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_CONTRAENTI_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_RS_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_DESCR,REQUEST,IUQOID[/TAG]
|
||||
Documento: Proposta di Contratto / Convenzione - [TAG]GETVALUEBYTAG,ID_IRIS,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_CONTRAENTI_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_RS_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_DESCR,REQUEST,IUQOID[/TAG]
|
||||
|
||||
Old Fas: [TAG]SCHEMAID,341,COL0001,IUQOID, , [/TAG]
|
||||
Old Doc: Proposta di contratto / convenzione - ID contratto: [TAG]SCHEMAID,341,COL0001,IUQOID, , [/TAG]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
info:
|
||||
name: Fascicolo e documento su Titulus
|
||||
type: http
|
||||
seq: 6
|
||||
|
||||
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: "17144"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "25889"
|
||||
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" /]
|
||||
|
||||
[TAG]GETVALUEBYTAG,ID_IRIS,REQUEST,ID_OBJECT[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_CONTRAENTI_CSV,REQUEST,ID_OBJECT[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_RS_CSV,REQUEST,ID_OBJECT[/TAG] - [TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_DESCR,REQUEST,ID_OBJECT[/TAG]
|
||||
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
info:
|
||||
name: Messaggio ritenute massime
|
||||
type: http
|
||||
seq: 5
|
||||
|
||||
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: "22748"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22705"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22754"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;"
|
||||
}
|
||||
}
|
||||
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="C_B3" type="number"][TAG]GETVALUEBYTAG,C_B3,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="D1_1" type="number"][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_D_1_1,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="D1_2" type="number"][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_D_1_2,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="numberIterable" type="iterable"][SPLIT regex="\."][TAG]GETVALUEBYTAG,PROPOSTA_CCT_CONTRATTO_A,REQUEST,IUQOID[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="first" type="number"][% first = 0; %][/VAR]
|
||||
[VAR name="second" type="number"][% second = 1; %][/VAR]
|
||||
[VAR name="numberIntegerPart" type="string"][VALUE_OF varname="numberIterable" index="first" /][/VAR]
|
||||
[VAR name="numberDecimalPart" type="string"][VALUE_OF varname="numberIterable" index="second" /][/VAR]
|
||||
[IF][CONDITION][IS_EMPTY varname="numberDecimalPart" /][/CONDITION][THEN][% numberDecimalPart = "00"; %][/THEN][/IF]
|
||||
[VAR name="A" type="number"][% A = numberIntegerPart + "," + numberDecimalPart; %][/VAR]
|
||||
|
||||
[VAR name="D1_3" type="number"][% D1_3 = D1_1 + D1_2 - (A * 0.20); %][/VAR]
|
||||
[VAR name="QuotaAteneo" type="number"][% QuotaAteneo = 0; %][/VAR]
|
||||
|
||||
[IF]
|
||||
[CONDITION][% D1_3 > 0 %][/CONDITION]
|
||||
[THEN][% QuotaAteneo = D1_3 * 0.05; %][/THEN]
|
||||
[/IF]
|
||||
|
||||
[VAR name="D2" type="number"][% D2 = C_B3 - D1_1 - D1_2 - (2 * QuotaAteneo); %][/VAR]
|
||||
|
||||
[FORMAT type="number" pattern="#,##0.00"][% D2 %][/FORMAT]
|
||||
[/EFTL]
|
||||
`)
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: CCT - Proposta Operatore
|
||||
type: folder
|
||||
seq: 1
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
+56
@@ -0,0 +1,56 @@
|
||||
info:
|
||||
name: Gestione Istanze - Elenco carriere inserite
|
||||
type: http
|
||||
seq: 14
|
||||
|
||||
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: "33380"
|
||||
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: |-
|
||||
// Copy-pasta your EFTL document below inside the template literals (`)
|
||||
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
|
||||
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
|
||||
[% elencoCarriere = ""; item1 = 0; item2 = 1; %]
|
||||
|
||||
[VAR name="carriereInserite" type="iterable" unique="true"][SPLIT regex="##"][TAG]GETVALUEBYTAG,CARRIERA_SELEZIONATA,REQUEST,IUQOID,CONCAT,##[/TAG][/SPLIT][/VAR]
|
||||
[FOR varname="carriera" iterable="carriereInserite"]
|
||||
[VAR name="carrieraIterable" type="iterable"][SPLIT regex=" - "][% carriera %][/SPLIT][/VAR]
|
||||
[VAR name="nomeCarriera" type="string"][VALUE_OF varname="carrieraIterable" index="item2" /][/VAR]
|
||||
[IF]
|
||||
[CONDITION][IS_EMPTY varname="elencoCarriere" /][/CONDITION]
|
||||
[THEN][% elencoCarriere = nomeCarriera; %][/THEN]
|
||||
[ELSE][% elencoCarriere = elencoCarriere + " ; " + nomeCarriera; %][/ELSE]
|
||||
[/IF]
|
||||
[/FOR]
|
||||
|
||||
[%= elencoCarriere %]
|
||||
[/EFTL]
|
||||
`));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+102
@@ -0,0 +1,102 @@
|
||||
info:
|
||||
name: Notifiche email - Elenco carriere e certificati
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
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: "33380"
|
||||
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: |-
|
||||
// Copy-pasta your EFTL document below inside the template literals (`)
|
||||
var eftlDocumentToBeProcessed = bru.setVar("elixBase64EftlDocument", btoa(String.raw`
|
||||
[EFTL][HEADER name="trimDocument" value="true" type="boolean" /]
|
||||
[% elencoCC = "##"; item1 = 0; item2 = 1; indexInsert = 0; %]
|
||||
|
||||
[VAR name="carriereInsert" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,867,COL0017,IUQOID, ,##[/TAG][/SPLIT][/VAR]
|
||||
[VAR name="certificatiInsert" type="iterable"][SPLIT regex="##"][TAG]SCHEMAID,867,COL0014,IUQOID, ,##[/TAG][/SPLIT][/VAR]
|
||||
[!--
|
||||
[VAR name="carriereInsert" type="iterable"][SPLIT regex="##"][% "11 - L1##11 - L1##22 - L2##11 - L1##33 - L3##11 - L1##33 - L3" %][/SPLIT][/VAR]
|
||||
[VAR name="certificatiInsert" type="iterable"][SPLIT regex="##"][% "C1##C1##C2##C3##C4##C5##C6" %][/SPLIT][/VAR]
|
||||
--]
|
||||
[VAR name="certificatiCount" type="number"][SIZE_OF varname="certificatiInsert" /][/VAR]
|
||||
|
||||
[!-- Questo ciclo produce una stringa nel seguente formato: --]
|
||||
[!-- ##L1::C1;;C1;;C3;;C5##L2::C2##L3::C4;;C6 --]
|
||||
[!-- dove: "##" separa i gruppi di carriera + certificati, "::" separa il nome della carriera dai suoi certificati, ";;" separa i singoli certificati della carriera --]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% indexInsert < certificatiCount %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="carrieraIterable" type="iterable"][SPLIT regex=" - "][VALUE_OF varname="carriereInsert" index="indexInsert" /][/SPLIT][/VAR]
|
||||
[VAR name="nomeCarriera" type="string"][VALUE_OF varname="carrieraIterable" index="item2" /][/VAR]
|
||||
[VAR name="nomeCertificato" type="string"][VALUE_OF varname="certificatiInsert" index="indexInsert" /][/VAR]
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="elencoCC"][VALUE_OF varname="nomeCarriera" /][/CONTAINS][/CONDITION]
|
||||
[THEN]
|
||||
[!-- La carriera è già stata aggiunta con uno o più certificati, devo accodare quello attuale agli altri --]
|
||||
[% elencoCCInner = "##"; indexInner = 0; %]
|
||||
[VAR name="elencoCCInnerIterable" type="iterable"][SPLIT regex="##" emptyIfBlank="true"][VALUE_OF varname="elencoCC" /][/SPLIT][/VAR]
|
||||
[VAR name="sizeOfElencoCCInner" type="number"][SIZE_OF varname="elencoCCInnerIterable" /][/VAR]
|
||||
[WHILE threshold="99"]
|
||||
[CONDITION][% indexInner < sizeOfElencoCCInner %][/CONDITION]
|
||||
[DO]
|
||||
[VAR name="nomeCarrieraInner" type="string"][VALUE_OF varname="elencoCCInnerIterable" index="indexInner" /][/VAR]
|
||||
[% elencoCCInner = elencoCCInner + nomeCarrieraInner; %]
|
||||
[IF]
|
||||
[CONDITION][CONTAINS varname="nomeCarrieraInner"][VALUE_OF varname="nomeCarriera" /][/CONTAINS][/CONDITION]
|
||||
[THEN][% elencoCCInner = elencoCCInner + ";;" + nomeCertificato; %][/THEN]
|
||||
[/IF]
|
||||
[% elencoCCInner = elencoCCInner + "##"; %]
|
||||
[% indexInner = indexInner + 1; %]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
[% elencoCC = elencoCCInner; %]
|
||||
[/THEN]
|
||||
[ELSE]
|
||||
[!-- La carriera non è ancora stata aggiunta, non devo fare altro --]
|
||||
[% elencoCC = elencoCC + nomeCarriera + "::" + nomeCertificato + "##"; %]
|
||||
[/ELSE]
|
||||
[/IF]
|
||||
[% indexInsert = indexInsert + 1; %]
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
|
||||
[!-- ORA costruisco l'elenco gerarchico HTML... Avrei potuto farlo sopra, ma il blocco di logica lo posso riutilizzare per altro --]
|
||||
[VAR name="elencoCertificatiPerCarriera" type="iterable"][SPLIT regex="##" emptyIfBlank="true"][VALUE_OF varname="elencoCC" /][/SPLIT][/VAR]
|
||||
<ol>[FOR varname="gruppo" iterable="elencoCertificatiPerCarriera"]
|
||||
[VAR name="gruppoIterable" type="iterable"][SPLIT regex="::"][VALUE_OF varname="gruppo" /][/SPLIT][/VAR]
|
||||
[VAR name="gruppoCarriera" type="string"][VALUE_OF varname="gruppoIterable" index="item1" /][/VAR]
|
||||
[VAR name="gruppoCertificatiIterable" type="iterable" unique="true"][SPLIT regex=";;"][VALUE_OF varname="gruppoIterable" index="item2" /][/SPLIT][/VAR]
|
||||
<li>[%= gruppoCarriera %]</li>
|
||||
<ol>[FOR varname="certificato" iterable="gruppoCertificatiIterable"]<li>[%= certificato %]</li>[/FOR]</ol>
|
||||
[/FOR]</ol>
|
||||
|
||||
[/EFTL]
|
||||
`));
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: MOD A13 Richiesta Certificato
|
||||
type: folder
|
||||
seq: 4
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
@@ -0,0 +1,595 @@
|
||||
info:
|
||||
name: Process EFTL
|
||||
type: http
|
||||
seq: 6
|
||||
|
||||
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: "7792"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"docs": [
|
||||
{
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
},
|
||||
{
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
},
|
||||
{
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
],
|
||||
"docsAsEntities": [
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc2",
|
||||
"quantity": 5,
|
||||
"price": 213.3
|
||||
}
|
||||
},
|
||||
{
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc3",
|
||||
"quantity": 10,
|
||||
"price": 321.3
|
||||
}
|
||||
}
|
||||
],
|
||||
"singleEntity": {
|
||||
"eftlEntityType": "com.anthesi.elixforms.api.eftl.model.mock.EftlDoc",
|
||||
"eftlEntity": {
|
||||
"name": "doc1",
|
||||
"quantity": 3,
|
||||
"price": 123.3
|
||||
}
|
||||
},
|
||||
"simpleList": [
|
||||
"s1",
|
||||
"s2",
|
||||
"s3"
|
||||
],
|
||||
"docsSize": 3
|
||||
}
|
||||
}
|
||||
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`
|
||||
<html>
|
||||
<!-- codice NON processato da EFTL -->
|
||||
<head>
|
||||
</head>
|
||||
<body style="font-family: Tahoma, Verdana, Segoe, sans-serif; font-size: 12px; fontstyle: normal; line-height: 19.6px;">
|
||||
<p style="text-align: center; font-size: 13pt; padding-top: 5pt;">
|
||||
<a href="#ITALIANO">VERSIONE ITALIANA</a></p>
|
||||
<p style="padding-bottom: 5pt;"> </p>
|
||||
<h2 align="center"><strong>[TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG]</strong></h2>
|
||||
<p style="text-align: center; font-size: 14pt; padding-top: 25pt;">Tipologia: <strong>[TAG]SCHEMAID,341,COL0003,IUQOID, , [/TAG]</strong></p>
|
||||
<p style="text-align: center; font-size: 14pt; padding-top: 25pt;">Corrispettivo: <strong>[TAG]SCHEMAID,341,COL0009,IUQOID, , [/TAG]</strong></p>
|
||||
<p style="text-align: center; font-size: 14pt; padding-top: 5pt;">Decreto del Rettore</p>
|
||||
<hr />
|
||||
|
||||
<!-- Questo invece è processato -->
|
||||
[EFTL]
|
||||
<h2 align="center"><strong>[TAG]SCHEMAID,341,COL0005,IUQOID, , [/TAG]</strong></h2>
|
||||
<p style="text-align: center; font-size: 14pt; padding-top: 25pt;">Tipologia: <strong>[TAG]SCHEMAID,341,COL0003,IUQOID, , [/TAG]</strong></p>
|
||||
<p style="text-align: center; font-size: 14pt; padding-top: 25pt;">Corrispettivo: <strong>[TAG]SCHEMAID,341,COL0009,IUQOID, , [/TAG]</strong></p>
|
||||
[/EFTL]
|
||||
|
||||
...
|
||||
|
||||
[eftl] [!-- Inizio blocco EFTL --]
|
||||
[!-- Blocco di codice riportato in output come scrittura non EFTL --]
|
||||
<tag>testo tra tag html</tag> [!-- Blocco di codice riportato in output come scrittura non EFTL --]
|
||||
testo senza tags
|
||||
[VAR name="i" type="number"] [!-- Inizio blocco VAR per la definizione di una variabile --]
|
||||
[% i = 0; %] [!-- Blocco di assegnazione valore ad una variabile --]
|
||||
[/VAR]
|
||||
<p>un po' di testo che verrà riportato</p> [!-- Blocco di codice riportato in output come scrittura non EFTL --]
|
||||
[!-- Inizio blocco if/then/elese --]
|
||||
[IF]
|
||||
[CONDITION] [!-- Condizione del blocco IF da valutare: risultato aspettato di tipo booleano --]
|
||||
[% lang == "IT" %]
|
||||
[/CONDITION]
|
||||
[THEN] [!-- Se blocco condizione true --]
|
||||
|
||||
[FOR varName="doc" iterable="docs"]
|
||||
doc: [%= doc %]
|
||||
[/FOR]
|
||||
|
||||
[!-- Condizione Blocco while --]
|
||||
[WHILE]
|
||||
[CONDITION] [% docs != null && i < docsSize %] [/CONDITION]
|
||||
[DO] [!-- Blocco while da eseguire se condizione è "true" --]
|
||||
<p> value of var "i" is: [%= i %]</p>
|
||||
[FOR varName="doc" iterable="docs"] [!-- Blocco FOR di iterazione --]
|
||||
doc corrente: [%= doc %] [!-- Blocco esposizione del valore della variabile --]
|
||||
<strong> Sto ciclando sul documento con nome e prezzo </strong>
|
||||
|
||||
[/FOR]
|
||||
[% i = i + 1; %] [!-- Blocco di assegnazione valore ad una variabile --]
|
||||
<p> value of var "i" after increment is: [%= i %]</p>
|
||||
[/DO]
|
||||
[/WHILE]
|
||||
[/THEN]
|
||||
[ELSE] [!-- Se blocco condizione false --]
|
||||
<strong>fixed-time RESEARCH ASSISTANT CONTRACT/S for COLLABORATION at RESEARCH ACTIVITY</strong>
|
||||
[/ELSE]
|
||||
[/IF]
|
||||
[!-- Fine blocco EFTL --]
|
||||
[/EFTL]
|
||||
<!-- codice NON processato da EFTL -->
|
||||
|
||||
...
|
||||
|
||||
<p>testo tra un documento blocco EFTL© e l'altro</p>
|
||||
|
||||
...
|
||||
|
||||
[EFTL] [!-- Inizio 2° blocco EFTL --]
|
||||
<ol>
|
||||
<li>
|
||||
Decreto del rettore del [TAG]SCHEMAID,202,COL0030,ID_OBJECT, , [/TAG] nr. [TAG]SCHEMAID,202,COL0022,ID_OBJECT, , [/TAG]
|
||||
</li>
|
||||
<li>
|
||||
Decreto del rettore nr. [TAG]GETVALUEBYTAG,NUM_PROT,REQUEST,IUQOID[FILTER]ACTION_NAME=pers_a_inviaPerFirmaRemotaBando_facEcon[/FILTER][/TAG] del [TAG]GETVALUEBYTAG,PROVV_DATE,REQUEST,IUQOID[FILTER]ACTION_NAME=pers_a_inviaPerFirmaRemotaBando_facEcon[/FILTER],,,dd/MM/yyyy[/TAG]
|
||||
</li>
|
||||
</ol>
|
||||
<tag>altro tag</tag>
|
||||
[!-- Fine 2° blocco EFTL --]
|
||||
[/EFTL]
|
||||
<!-- codice NON processato da EFTL -->
|
||||
<p align="center">
|
||||
<em>Resto del documento...</em>
|
||||
</p>
|
||||
<p> </p>
|
||||
<p>The Rector</p>
|
||||
<p>Digitally signed</p>
|
||||
</body>
|
||||
</html>
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Process EFTL - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/eftl/process/v1"
|
||||
method: POST
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-key
|
||||
value: "{{elixFormsWsAuthenticationToken}}"
|
||||
- name: x-ef-request-id
|
||||
value: "7792"
|
||||
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
|
||||
|
||||
}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"resultNumber": 1,
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EFTL",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "a6c6d1c6-14fb-457e-bd82-b1cc137f8c95",
|
||||
"version": "3.9.2.21",
|
||||
"processedDocument": "CjxodG1sPgo8IS0tIGNvZGljZSBOT04gcHJvY2Vzc2F0byBkYSBFRlRMIC0tPgo8aGVhZD4KPC9oZWFkPgo8Ym9keSBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYSwgVmVyZGFuYSwgU2Vnb2UsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTJweDsgZm9udHN0eWxlOiBub3JtYWw7IGxpbmUtaGVpZ2h0OiAxOS42cHg7Ij4KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgZm9udC1zaXplOiAxM3B0OyBwYWRkaW5nLXRvcDogNXB0OyI+CjxhIGhyZWY9IiNJVEFMSUFOTyI+VkVSU0lPTkUgSVRBTElBTkE8L2E+PC9wPgo8cCBzdHlsZT0icGFkZGluZy1ib3R0b206IDVwdDsiPiA8L3A+CjxoMiBhbGlnbj0iY2VudGVyIj48c3Ryb25nPltUQUddU0NIRU1BSUQsMzQxLENPTDAwMDUsSVVRT0lELCAsIFsvVEFHXTwvc3Ryb25nPjwvaDI+CjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtc2l6ZTogMTRwdDsgcGFkZGluZy10b3A6IDI1cHQ7Ij5UaXBvbG9naWE6IDxzdHJvbmc+W1RBR11TQ0hFTUFJRCwzNDEsQ09MMDAwMyxJVVFPSUQsICwgWy9UQUddPC9zdHJvbmc+PC9wPgo8cCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDE0cHQ7IHBhZGRpbmctdG9wOiAyNXB0OyI+Q29ycmlzcGV0dGl2bzogPHN0cm9uZz5bVEFHXVNDSEVNQUlELDM0MSxDT0wwMDA5LElVUU9JRCwgLCBbL1RBR108L3N0cm9uZz48L3A+CjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGZvbnQtc2l6ZTogMTRwdDsgcGFkZGluZy10b3A6IDVwdDsiPkRlY3JldG8gZGVsIFJldHRvcmU8L3A+CjxociAvPgoKPCEtLSBRdWVzdG8gaW52ZWNlICZlZ3JhdmU7IHByb2Nlc3NhdG8gLS0+Cgo8aDIgYWxpZ249ImNlbnRlciI+PHN0cm9uZz48L3N0cm9uZz48L2gyPgo8cCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDE0cHQ7IHBhZGRpbmctdG9wOiAyNXB0OyI+VGlwb2xvZ2lhOiA8c3Ryb25nPjwvc3Ryb25nPjwvcD4KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsgZm9udC1zaXplOiAxNHB0OyBwYWRkaW5nLXRvcDogMjVwdDsiPkNvcnJpc3BldHRpdm86IDxzdHJvbmc+PC9zdHJvbmc+PC9wPgoKCi4uLgoKIAoKPHRhZz50ZXN0byB0cmEgdGFnIGh0bWw8L3RhZz4gCnRlc3RvIHNlbnphIHRhZ3MKCjxwPnVuIHBvJyBkaSB0ZXN0byBjaGUgdmVyciZhZ3JhdmU7IHJpcG9ydGF0bzwvcD4gCgogCgoKIAo8cD4gdmFsdWUgb2YgdmFyICJpIiBpczogMC4wPC9wPgogCmRvYyBjb3JyZW50ZTogeyJuYW1lIjoiZG9jMSIsInF1YW50aXR5IjozLCJwcmljZSI6MTIzLjN9CjxzdHJvbmc+IFN0byBjaWNsYW5kbyBzdWwgZG9jdW1lbnRvIGNvbiBub21lIGUgcHJlenpvIDwvc3Ryb25nPgogCmRvYyBjb3JyZW50ZTogeyJuYW1lIjoiZG9jMiIsInF1YW50aXR5Ijo1LCJwcmljZSI6MjEzLjN9CjxzdHJvbmc+IFN0byBjaWNsYW5kbyBzdWwgZG9jdW1lbnRvIGNvbiBub21lIGUgcHJlenpvIDwvc3Ryb25nPgogCmRvYyBjb3JyZW50ZTogeyJuYW1lIjoiZG9jMyIsInF1YW50aXR5IjoxMCwicHJpY2UiOjMyMS4zfQo8c3Ryb25nPiBTdG8gY2ljbGFuZG8gc3VsIGRvY3VtZW50byBjb24gbm9tZSBlIHByZXp6byA8L3N0cm9uZz4KCjxwPiB2YWx1ZSBvZiB2YXIgImkiIGFmdGVyIGluY3JlbWVudCBpczogMS4wPC9wPgogCjxwPiB2YWx1ZSBvZiB2YXIgImkiIGlzOiAxLjA8L3A+CiAKZG9jIGNvcnJlbnRlOiB7Im5hbWUiOiJkb2MxIiwicXVhbnRpdHkiOjMsInByaWNlIjoxMjMuM30KPHN0cm9uZz4gU3RvIGNpY2xhbmRvIHN1bCBkb2N1bWVudG8gY29uIG5vbWUgZSBwcmV6em8gPC9zdHJvbmc+CiAKZG9jIGNvcnJlbnRlOiB7Im5hbWUiOiJkb2MyIiwicXVhbnRpdHkiOjUsInByaWNlIjoyMTMuM30KPHN0cm9uZz4gU3RvIGNpY2xhbmRvIHN1bCBkb2N1bWVudG8gY29uIG5vbWUgZSBwcmV6em8gPC9zdHJvbmc+CiAKZG9jIGNvcnJlbnRlOiB7Im5hbWUiOiJkb2MzIiwicXVhbnRpdHkiOjEwLCJwcmljZSI6MzIxLjN9CjxzdHJvbmc+IFN0byBjaWNsYW5kbyBzdWwgZG9jdW1lbnRvIGNvbiBub21lIGUgcHJlenpvIDwvc3Ryb25nPgoKPHA+IHZhbHVlIG9mIHZhciAiaSIgYWZ0ZXIgaW5jcmVtZW50IGlzOiAyLjA8L3A+CiAKPHA+IHZhbHVlIG9mIHZhciAiaSIgaXM6IDIuMDwvcD4KIApkb2MgY29ycmVudGU6IHsibmFtZSI6ImRvYzEiLCJxdWFudGl0eSI6MywicHJpY2UiOjEyMy4zfQo8c3Ryb25nPiBTdG8gY2ljbGFuZG8gc3VsIGRvY3VtZW50byBjb24gbm9tZSBlIHByZXp6byA8L3N0cm9uZz4KIApkb2MgY29ycmVudGU6IHsibmFtZSI6ImRvYzIiLCJxdWFudGl0eSI6NSwicHJpY2UiOjIxMy4zfQo8c3Ryb25nPiBTdG8gY2ljbGFuZG8gc3VsIGRvY3VtZW50byBjb24gbm9tZSBlIHByZXp6byA8L3N0cm9uZz4KIApkb2MgY29ycmVudGU6IHsibmFtZSI6ImRvYzMiLCJxdWFudGl0eSI6MTAsInByaWNlIjozMjEuM30KPHN0cm9uZz4gU3RvIGNpY2xhbmRvIHN1bCBkb2N1bWVudG8gY29uIG5vbWUgZSBwcmV6em8gPC9zdHJvbmc+Cgo8cD4gdmFsdWUgb2YgdmFyICJpIiBhZnRlciBpbmNyZW1lbnQgaXM6IDMuMDwvcD4KCgoKPCEtLSBjb2RpY2UgTk9OIHByb2Nlc3NhdG8gZGEgRUZUTCAtLT4KCi4uLgoKPHA+dGVzdG8gdHJhIHVuIGRvY3VtZW50byBibG9jY28gRUZUTCZjb3B5OyBlIGwnYWx0cm88L3A+CgouLi4KCiAKPG9sPgo8bGk+CkRlY3JldG8gZGVsIHJldHRvcmUgZGVsICBuci4gCjwvbGk+CjxsaT4KRGVjcmV0byBkZWwgcmV0dG9yZSBuci4gIGRlbCAKPC9saT4KPC9vbD4KPHRhZz5hbHRybyB0YWc8L3RhZz4KCgo8IS0tIGNvZGljZSBOT04gcHJvY2Vzc2F0byBkYSBFRlRMIC0tPgo8cCBhbGlnbj0iY2VudGVyIj4KPGVtPlJlc3RvIGRlbCBkb2N1bWVudG8uLi48L2VtPgo8L3A+CjxwPiA8L3A+CjxwPlRoZSBSZWN0b3I8L3A+CjxwPkRpZ2l0YWxseSBzaWduZWQ8L3A+CjwvYm9keT4KPC9odG1sPgo="
|
||||
}
|
||||
}
|
||||
- name: "Process EFTL - TEST #1"
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/eftl/process/v1"
|
||||
method: POST
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-key
|
||||
value: "{{elixFormsWsAuthenticationToken}}"
|
||||
- name: x-ef-request-id
|
||||
value: "8463"
|
||||
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
|
||||
|
||||
}"
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"resultNumber": 1,
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EFTL",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "ffaa1626-1841-41cd-8b7e-827b171e439e",
|
||||
"version": "3.9.2.21",
|
||||
"processedDocument": "ZmFsc2U="
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
info:
|
||||
name: Create JSON
|
||||
type: http
|
||||
seq: 1
|
||||
|
||||
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: "22224"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"codiciFiscaliAmmessi": ";MMMPPL74T17E463A;;"
|
||||
}
|
||||
}
|
||||
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="json" type="string"][% json = ""; %][/VAR]
|
||||
|
||||
[% json = "{ "; %]
|
||||
|
||||
[VAR name="ripartizioniIterableWithSep" type="iterable"][SPLIT regex="#"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,CONCAT,#[/TAG][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="arrayPartecipanti" type="string"][% arrayPartecipanti = "[ "; %][/VAR]
|
||||
[FOR]
|
||||
|
||||
[/FOR]
|
||||
[% arrayPartecipanti = arrayPartecipanti + " ]"; %]
|
||||
|
||||
[% json = json + " " + arrayPartecipanti " }"; %]
|
||||
|
||||
[%= json %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
info:
|
||||
name: TAG per protocollazione fra uffici
|
||||
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: "29674"
|
||||
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" /]
|
||||
|
||||
- document_type: interno
|
||||
- document_is_draft: false
|
||||
- document_subject: Autorizzazione al pagamento - [TAG]GETVALUEBYTAG,ID_CONTRATTO,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_CONTRAENTI_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,ELENCO_RS_CSV,REQUEST,IUQOID[/TAG] - [TAG]GETVALUEBYTAG,TITOLO_CONTRATTO,REQUEST,IUQOID[/TAG]
|
||||
- document_means: elixForms
|
||||
- document_index_title: elixForms - Autorizzazione Pagamento Liquidazione
|
||||
- document_minutes_discard: 99
|
||||
- document_minutes_class_cod: 03/19
|
||||
- document_minutes_sender_surname: [TAG]GETVALUEBYTAG,AUTORIZ_RAG_COGNOME,REQUEST,IUQOID[/TAG]
|
||||
- document_minutes_sender_office_name: [TAG]GETVALUEBYTAG,AUTORIZ_RAG_UO,REQUEST,IUQOID[/TAG]
|
||||
|
||||
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+77
@@ -0,0 +1,77 @@
|
||||
info:
|
||||
name: TAG per riprotocollazione (integrazione)
|
||||
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: "27399"
|
||||
- name: x-ef-request-id
|
||||
value: "27535"
|
||||
disabled: true
|
||||
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="firstItem" type="number"][% firstItem = 0; %][/VAR]
|
||||
[VAR name="secondItem" type="number"][% secondItem = 1; %][/VAR]
|
||||
|
||||
[VAR name="folderSubject" type="string"][% folderSubject = "Richieste di Subappalti e Comunicazioni Subcontratti e Distacchi"; %][/VAR]
|
||||
[VAR name="subfolderSubject" type="string"][TAG]SCHEMAID,17,COL0013,IUQOID, , ,,yyyy[/TAG][/VAR]
|
||||
|
||||
[VAR name="tipologiaRichiesta" type="string"][TAG]GETVALUEBYTAG,TIPOLOGIA_RICHIESTA,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="impresaAppaltatrice" type="string"][TAG]GETVALUEBYTAG,IMPRESA_APPALTATRICE,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="lavori" type="string"][TAG]GETVALUEBYTAG,RICHIESTA_OGGETTO_LAVORI,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="cig" type="string"][TAG]GETVALUEBYTAG,RICHIESTA_OGGETTO_CIG,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="cup" type="string"][TAG]GETVALUEBYTAG,RICHIESTA_OGGETTO_CUP,REQUEST,IUQOID[/TAG][/VAR]
|
||||
|
||||
[VAR name="riapertureIter" type="iterable"][SPLIT regex="\|" emptyIfBlank="true"][TAG]SCHEMAID,198,COL0001,IUQOID,,|[/TAG][/SPLIT][/VAR]
|
||||
|
||||
Date inoltro prima della riapertura: [TAG]SCHEMAID,198,COL0003,IUQOID,,|[/TAG]
|
||||
Date conferma prima della riapertura: [TAG]SCHEMAID,198,COL0004,IUQOID,,|[/TAG]
|
||||
Data ultimo inoltro: [TAG]SCHEMAID,17,COL0013,IUQOID, , [/TAG]
|
||||
|
||||
[VAR name="dataCompletamento" type="string"][TAG]SCHEMAID,17,COL0013,IUQOID, , [/TAG][/VAR]
|
||||
[VAR name="confermePrecedenti" type="string"][TAG]SCHEMAID,198,COL0004,IUQOID,,|[/TAG][/VAR]
|
||||
|
||||
[VAR name="integrazione"][% integrazione = ""; %][/VAR]
|
||||
[IF][CONDITION][% confermePrecedenti != "" %][/CONDITION][THEN][% integrazione = " (INTEGRAZIONE del " + dataCompletamento + ")"; %][/THEN][/IF]
|
||||
|
||||
[VAR name="nomeDocumento" type="string"][% nomeDocumento = tipologiaRichiesta + " " + impresaAppaltatrice + " - Commessa: " + lavori + " (CIG: " + cig + " - CUP: " + cup + ")" + integrazione; %][/VAR]
|
||||
|
||||
Nome documento: [%= nomeDocumento %]
|
||||
IF: [IF][CONDITION][ISEMPTY][TAG]SCHEMAID,198,COL0004,IUQOID,,|[/TAG][/ISEMPTY][/CONDITION][THEN][%= " (INTEGRAZIONE del " + dataCompletamento + ")" %][/THEN][/IF]
|
||||
|
||||
Test:
|
||||
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
+61
@@ -0,0 +1,61 @@
|
||||
info:
|
||||
name: TEST ordine GetValueByTag
|
||||
type: http
|
||||
seq: 21
|
||||
|
||||
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: "23258"
|
||||
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="lastUpdatedNominativo" type="string"][TAG]GETVALUEBYTAG,PARTECIPANTE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/VAR]
|
||||
[VAR name="lastUpdatedImporto" type="string"][TAG]GETVALUEBYTAG,IMPORTO_RIPARTIZIONE,REQUEST,IUQOID,UPDATED_LAST[/TAG][/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]
|
||||
|
||||
[%= lastUpdatedNominativoCF + ":" + lastUpdatedImporto %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
@@ -0,0 +1,52 @@
|
||||
info:
|
||||
name: Test Errore 406
|
||||
type: http
|
||||
seq: 30
|
||||
|
||||
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: "32873"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"fairWarning": "ATTENZIONE: la keyword 'style' all'interno degli elementi HTML produce un errore 406 di richiesta sospetta (!), per testare lo script sostituirla con qualcos'altro!",
|
||||
"startRow": "\u003ctr\u003e\u003ctd\u003e",
|
||||
"endRow": "\u003c/td\u003e\u003c/tr\u003e",
|
||||
"test": "<td style='' colspan='2'>"
|
||||
// , "test2": "\r\n \u003ctr\u003e \u003c td style='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;'\u003e"
|
||||
// , "test3": "\r\n\u003ctr\u003e\u003ctd style='padding: 0 1em 10px 0; font-family: Arial,Sans-serif; font-size: 13px; color:#888; white-space: nowrap; vertical-align: top;' colspan='2'\u003e"
|
||||
}
|
||||
}
|
||||
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" /]
|
||||
[%= startRow %]
|
||||
VALORE: _[%= test %]_
|
||||
[%= endRow %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
@@ -0,0 +1,86 @@
|
||||
info:
|
||||
name: Test vari
|
||||
type: http
|
||||
seq: 2
|
||||
|
||||
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: "22748"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22705"
|
||||
disabled: true
|
||||
- name: x-ef-request-id
|
||||
value: "22842"
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"userDocument": "{{elixBase64EftlDocument}}", // see the pre-request script
|
||||
"userContext": {
|
||||
"lang": "IT",
|
||||
"crlf": "\r\n",
|
||||
"qualificheDocenti": ";Docente;Ricercatore;",
|
||||
"complex": {
|
||||
"antani": "tapioca",
|
||||
"array": [
|
||||
1, 2, 4
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
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="newLine" type="string"][VALUE_OF varname="crlf" /][/VAR]
|
||||
[VAR name="stringSeparated" type="string"][% stringSeparated = "xyz#abc#def"; %][/VAR]
|
||||
[VAR name="stringIterable" type="iterable"][SPLIT regex="#"][VALUE_OF varname="stringSeparated" /][/SPLIT][/VAR]
|
||||
|
||||
[VAR name="stringJson" type="string"][TAG]SCHEMAID,405,COL0017,IUQOID, , [/TAG][/VAR]
|
||||
|
||||
[VAR name="valoreT" type="string"][TAG]GETVALUEBYTAG,TEXTAREA_TAG,REQUEST,IUQOID[/TAG][/VAR]
|
||||
[VAR name="valoreS" type="string"][TAG]SCHEMAID,405,COL0003,IUQOID, , [/TAG][/VAR]
|
||||
|
||||
[VAR name="valoreTag" type="number"][TAG]GETVALUEBYTAG,TEXTAREA_TAG,REQUEST,IUQOID,LAST,,0.00[/TAG][/VAR]
|
||||
[VAR name="valoreSch" type="number"][TAG]SCHEMAID,405,COL0003,IUQOID,,,,0.00[/TAG][/VAR]
|
||||
|
||||
[VAR name="prodottoTag" type="number"][% prodotto = valoreTag * 0.20; %][/VAR]
|
||||
[VAR name="prodottoSch" type="number"][% prodotto = valoreSch * 0.20; %][/VAR]
|
||||
|
||||
[%= valoreT " : " valoreS %]
|
||||
[%= newLine %]
|
||||
[%= valoreTag " : " valoreSch %]
|
||||
[%= newLine %]
|
||||
[%= prodottoTag " : " prodottoSch %]
|
||||
[%= newLine %]
|
||||
[%= stringIterable %]
|
||||
[%= newLine %]
|
||||
[%= complex %]
|
||||
[/EFTL]
|
||||
`);
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
@@ -0,0 +1,7 @@
|
||||
info:
|
||||
name: Test vari
|
||||
type: folder
|
||||
seq: 5
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
@@ -0,0 +1,13 @@
|
||||
info:
|
||||
name: EFTL processing
|
||||
type: folder
|
||||
seq: 5
|
||||
|
||||
request:
|
||||
auth: inherit
|
||||
scripts:
|
||||
- type: after-response
|
||||
code: |-
|
||||
const { logResponseToConsole } = require("./elixFormsJs.js")
|
||||
|
||||
logResponseToConsole(res);
|
||||
@@ -0,0 +1,368 @@
|
||||
info:
|
||||
name: Get ExportTags
|
||||
type: http
|
||||
seq: 5
|
||||
|
||||
http:
|
||||
method: GET
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/view/:view_name/exportTags/get/v1?moduleTag=RIPARTIZIONE_CCT_DSAN&exportGroup=ReportOre"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
disabled: true
|
||||
- name: moduleTag
|
||||
value: RIPARTIZIONE_CCT_DSAN
|
||||
type: query
|
||||
- name: exportGroup
|
||||
value: API
|
||||
type: query
|
||||
disabled: true
|
||||
- name: exportGroup
|
||||
value: ReportOre
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "31470"
|
||||
type: path
|
||||
- name: view_name
|
||||
value: _DEFAULT
|
||||
type: path
|
||||
auth: inherit
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Get ExportTags - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/view/:view_name/exportTags/get/v1?username={{elixFormsApiUsername}}&moduleTag=PROPOSTA_CCT_DOCENTE&exportGroup=PROPOSTA_CCT_DOCENTE_GROUP"
|
||||
method: GET
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: moduleTag
|
||||
value: PROPOSTA_CCT_DOCENTE
|
||||
type: query
|
||||
- name: exportGroup
|
||||
value: PROPOSTA_CCT_DOCENTE_GROUP
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "7007"
|
||||
type: path
|
||||
- name: view_name
|
||||
value: _DEFAULT
|
||||
type: path
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "79ac308f-da1a-48ff-90f0-49f5f21a65e8",
|
||||
"version": "3.9.2.17",
|
||||
"exportTags": [
|
||||
{
|
||||
"name": "contratto.Titolo",
|
||||
"value": "Titolo"
|
||||
},
|
||||
{
|
||||
"name": "contratto.corrispettivo",
|
||||
"value": "12500"
|
||||
},
|
||||
{
|
||||
"name": "contratto.durataInMesi",
|
||||
"value": "17"
|
||||
}
|
||||
],
|
||||
"requestSize": 3
|
||||
}
|
||||
}
|
||||
- name: Get ExportTags - Not Found
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/view/:view_name/exportTags/get/v1?username={{elixFormsApiUsername}}&moduleTag=xyz&exportGroup=API"
|
||||
method: GET
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: moduleTag
|
||||
value: xyz
|
||||
type: query
|
||||
- name: exportGroup
|
||||
value: API
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "6502"
|
||||
type: path
|
||||
- name: view_name
|
||||
value: _DEFAULT
|
||||
type: path
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "WARNING",
|
||||
"description": "Nessuna pratica trovata per l'id 6502",
|
||||
"complete": true,
|
||||
"globalStatus": "WARNING",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "WARNING",
|
||||
"description": "Nessuna pratica trovata per l'id 6502",
|
||||
"detailStatus": "WARNING"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "dbd5d36e-0663-4446-99ba-26a119c7aad6",
|
||||
"version": "3.9.2.17",
|
||||
"requestSize": 0
|
||||
}
|
||||
}
|
||||
- name: Get ExportTags - Success
|
||||
request:
|
||||
url: "{{elixFormsApiUrl}}/request/:request_id/view/:view_name/exportTags/get/v1?username={{elixFormsApiUsername}}&moduleTag=PROPOSTA_CCT_OPERATORE&exportGroup=PROPOSTA_CCT_OPERATORE"
|
||||
method: GET
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
- name: moduleTag
|
||||
value: PROPOSTA_CCT_OPERATORE
|
||||
type: query
|
||||
- name: exportGroup
|
||||
value: PROPOSTA_CCT_OPERATORE
|
||||
type: query
|
||||
- name: request_id
|
||||
value: "7792"
|
||||
type: path
|
||||
- name: view_name
|
||||
value: _DEFAULT
|
||||
type: path
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/json;charset=UTF-8
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
- name: transfer-encoding
|
||||
value: chunked
|
||||
- name: vary
|
||||
value: Accept-Encoding
|
||||
- name: content-encoding
|
||||
value: gzip
|
||||
body:
|
||||
type: json
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"complete": true,
|
||||
"globalStatus": "OK",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.0.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "OK",
|
||||
"description": "OK",
|
||||
"detailStatus": "OK"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "25b4ed59-0a3d-43d3-8f7e-e26ba6b81a94",
|
||||
"version": "3.9.2.17",
|
||||
"exportTags": [
|
||||
{
|
||||
"name": "contratto.titolo",
|
||||
"value": "Qualifica di software esistente per l’applicazione in \nsistemi critici in conformità ai principali standard di functional safety e cybersecurity"
|
||||
},
|
||||
{
|
||||
"name": "contratto.contraenti",
|
||||
"value": "BUGSENG S.R.L., CF/PIVA: 02592690347, Sede: Via Marco dell’Arpa, 8/B 43121 PARMA (PR) ITALIA"
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.struttura",
|
||||
"value": "Dipartimento di Scienze Matematiche, Fisiche e Informatiche"
|
||||
},
|
||||
{
|
||||
"name": "contratto.altriPartecipanti",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"name": "contratto.struttura",
|
||||
"value": "Dipartimento di Scienze Matematiche, Fisiche e Informatiche"
|
||||
},
|
||||
{
|
||||
"name": "contratto.altriResponsabiliScientifici",
|
||||
"value": "Prof. ARCERI Vincenzo, CF: RCRVCN92S06D284C, Qualifica: Ricercatore, Struttura di afferenza: Dipartimento di Scienze Matematiche, Fisiche e Informatiche, Data di inizio: 20/12/2024, Data di fine: -"
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.nome",
|
||||
"value": "Vincenzo"
|
||||
},
|
||||
{
|
||||
"name": "contratto.IdContratto",
|
||||
"value": "ARCE_V_24_CRCT_RA_01"
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.titoloAccademico",
|
||||
"value": "Prof."
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.qualifica",
|
||||
"value": "Ricercatore"
|
||||
},
|
||||
{
|
||||
"name": "contratto.tipologia",
|
||||
"value": "Contratti di ricerca conto terzi - ricerca applicata"
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.codiceFiscale",
|
||||
"value": "RCRVCN92S06D284C"
|
||||
},
|
||||
{
|
||||
"name": "responsabileScientifico.cognome",
|
||||
"value": "ARCERI"
|
||||
},
|
||||
{
|
||||
"name": "contratto.corrispettivo",
|
||||
"value": "42000"
|
||||
},
|
||||
{
|
||||
"name": "contratto.durataInMesi",
|
||||
"value": "12"
|
||||
}
|
||||
],
|
||||
"requestSize": 15
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,145 @@
|
||||
info:
|
||||
name: Get Request Identifier
|
||||
type: http
|
||||
seq: 3
|
||||
|
||||
http:
|
||||
method: GET
|
||||
url: "{{elixFormsApiUrl_Default}}/request/get-id?qrCode=123456"
|
||||
headers:
|
||||
- name: x-requested-with
|
||||
value: XMLHttpRequest
|
||||
- name: x-api-username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
description: lo username con cui si è effettuato il login
|
||||
disabled: true
|
||||
- name: qrCode
|
||||
value: "123456"
|
||||
type: query
|
||||
body:
|
||||
type: form-urlencoded
|
||||
auth: inherit
|
||||
|
||||
runtime:
|
||||
scripts:
|
||||
- type: after-response
|
||||
code: |-
|
||||
function findBinaryColumns(obj) {
|
||||
let binaryColumns = [];
|
||||
|
||||
if (Array.isArray(obj)) {
|
||||
obj.forEach(item => {
|
||||
binaryColumns = binaryColumns.concat(findBinaryColumns(item));
|
||||
});
|
||||
} else if (typeof obj === "object" && obj !== null) {
|
||||
Object.keys(obj).forEach(key => {
|
||||
if (key === "columns" && Array.isArray(obj[key])) {
|
||||
obj[key].forEach(column => {
|
||||
if (column.columnType === "BINARY") {
|
||||
binaryColumns.push(column);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
binaryColumns = binaryColumns.concat(findBinaryColumns(obj[key]));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return binaryColumns;
|
||||
}
|
||||
|
||||
// Carica il file JSON (sostituisci con il tuo oggetto JSON)
|
||||
const jsonData = res.getBody();
|
||||
|
||||
// Esegui la ricerca
|
||||
const binaryColumns = findBinaryColumns(jsonData);
|
||||
|
||||
// Stampa i risultati solo se ne abbiamo trovati (bisogna abilitare la visualizzazione dei Warning nella console Postman)
|
||||
if (binaryColumns.length > 0) {
|
||||
console.warn("Allegati trovati:", binaryColumns);
|
||||
}
|
||||
|
||||
settings:
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
followRedirects: true
|
||||
maxRedirects: 5
|
||||
|
||||
examples:
|
||||
- name: Get Request Identifier - Invalid QRCode
|
||||
request:
|
||||
url: "{{elixFormsApiUrl_Default}}/request/get-id?username={{elixFormsApiUsername}}&qrCode=123456"
|
||||
method: GET
|
||||
params:
|
||||
- name: username
|
||||
value: "{{elixFormsApiUsername}}"
|
||||
type: query
|
||||
description: lo username con cui si è effettuato il login
|
||||
- name: qrCode
|
||||
value: "123456"
|
||||
type: query
|
||||
body:
|
||||
type: form-urlencoded
|
||||
response:
|
||||
statusText: "200"
|
||||
headers:
|
||||
- name: cache-control
|
||||
value: no-cache, no-store, must-revalidate
|
||||
- name: pragma
|
||||
value: no-cache
|
||||
- name: proxy-connection
|
||||
value: Keep-Alive
|
||||
- name: x-content-security-policy
|
||||
value: default-src 'self'; connect-src 'self'; font-src 'none'; img-src 'self'; media-src 'self'; object-src 'self'; plugin-types application/pdf audio/x-wav; referrer no-referrer; reflected-xss block; script-src 'self'; style-src 'self'
|
||||
- name: content-type
|
||||
value: application/it.elixforms.api.v1.2+json;charset=UTF-8
|
||||
- name: content-length
|
||||
value: "441"
|
||||
- name: strict-transport-security
|
||||
value: max-age=63072000;includeSubDomains
|
||||
- name: content-security-policy
|
||||
value: "default-src https: data: 'unsafe-inline' 'unsafe-eval'"
|
||||
- name: x-frame-options
|
||||
value: SAMEORIGIN
|
||||
- name: x-xss-protection
|
||||
value: 1;mode=block
|
||||
- name: x-content-type-options
|
||||
value: nosniff
|
||||
- name: referrer-policy
|
||||
value: unsafe-url
|
||||
body:
|
||||
type: text
|
||||
data: |-
|
||||
{
|
||||
"value": {
|
||||
"code": "WARNING",
|
||||
"description": "Il qrCode fornito non è valido",
|
||||
"complete": true,
|
||||
"globalStatus": "WARNING",
|
||||
"serviceInformationList": {
|
||||
"serviceInformation": [
|
||||
{
|
||||
"ITSystemName": "EF-CORE",
|
||||
"complete": true,
|
||||
"serviceVersion": "1.2.0",
|
||||
"statusDetailList": {
|
||||
"statusDetail": [
|
||||
{
|
||||
"code": "WARNING",
|
||||
"description": "Il qrCode fornito non è valido",
|
||||
"detailStatus": "WARNING"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"uuid": "52de6c90-8b75-4cab-ba37-4d81c567cb86",
|
||||
"version": "3.9.2.17",
|
||||
"size": 0
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user