diff --git a/collections/elixForms API v2/Authorization/folder.yml b/collections/elixForms API v2/Authorization/folder.yml index 60abf3f..344abe5 100644 --- a/collections/elixForms API v2/Authorization/folder.yml +++ b/collections/elixForms API v2/Authorization/folder.yml @@ -1,7 +1,7 @@ info: name: Authorization type: folder - seq: 5 + seq: 6 request: auth: inherit diff --git a/collections/elixForms API v2/Calendar 2.0/folder.yml b/collections/elixForms API v2/Calendar 2.0/folder.yml index 7cfb3e7..72612aa 100644 --- a/collections/elixForms API v2/Calendar 2.0/folder.yml +++ b/collections/elixForms API v2/Calendar 2.0/folder.yml @@ -1,7 +1,7 @@ info: name: Calendar 2.0 type: folder - seq: 11 + seq: 12 request: auth: inherit diff --git a/collections/elixForms API v2/Cambio stato e-o integrazione/folder.yml b/collections/elixForms API v2/Cambio stato e-o integrazione/folder.yml index 60d1180..6ae425f 100644 --- a/collections/elixForms API v2/Cambio stato e-o integrazione/folder.yml +++ b/collections/elixForms API v2/Cambio stato e-o integrazione/folder.yml @@ -1,7 +1,7 @@ info: name: Cambio stato e/o integrazione type: folder - seq: 9 + seq: 10 request: auth: inherit diff --git a/collections/elixForms API v2/Comunicazioni formali/folder.yml b/collections/elixForms API v2/Comunicazioni formali/folder.yml index 055fdc0..40f2669 100644 --- a/collections/elixForms API v2/Comunicazioni formali/folder.yml +++ b/collections/elixForms API v2/Comunicazioni formali/folder.yml @@ -1,7 +1,7 @@ info: name: Comunicazioni formali type: folder - seq: 10 + seq: 11 request: auth: inherit diff --git a/collections/elixForms API v2/EFTL processing/folder.yml b/collections/elixForms API v2/EFTL processing/folder.yml index a132871..338322c 100644 --- a/collections/elixForms API v2/EFTL processing/folder.yml +++ b/collections/elixForms API v2/EFTL processing/folder.yml @@ -1,7 +1,7 @@ info: name: EFTL processing type: folder - seq: 3 + seq: 5 request: auth: inherit diff --git a/collections/elixForms API v2/Request details/folder.yml b/collections/elixForms API v2/Request details/folder.yml index d28d67f..4e2ccf6 100644 --- a/collections/elixForms API v2/Request details/folder.yml +++ b/collections/elixForms API v2/Request details/folder.yml @@ -1,7 +1,7 @@ info: name: Request details type: folder - seq: 7 + seq: 8 request: auth: inherit diff --git a/collections/elixForms API v2/Requests lookup/folder.yml b/collections/elixForms API v2/Requests lookup/folder.yml index bf9a859..d5dd1c2 100644 --- a/collections/elixForms API v2/Requests lookup/folder.yml +++ b/collections/elixForms API v2/Requests lookup/folder.yml @@ -1,7 +1,7 @@ info: name: Requests lookup type: folder - seq: 6 + seq: 7 request: auth: inherit diff --git a/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Get request details.yml b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Get request details.yml new file mode 100644 index 0000000..5a3a7e0 --- /dev/null +++ b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Get request details.yml @@ -0,0 +1,899 @@ +info: + name: Get request details + type: http + seq: 6 + +http: + method: GET + url: "{{elixFormsApiUrl_Default}}/request/:request_id/get" + 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: recordOrder + value: NONE + type: query + description: case sensitive + disabled: true + - name: request_id + value: REPLACE + type: path + body: + type: form-urlencoded + auth: inherit + +runtime: + scripts: + - type: before-request + code: |- + if (!bru.hasVar("elixFormsQueryRequestIds")) + { + console.error("Pre: NO RequestIds FOUND!"); + } + const requestIds = bru.getVar("elixFormsQueryRequestIds"); + if (!bru.hasVar("elixFormsQueryRequestIndex")) + { + console.error("Pre: NO RequestIndex FOUND!"); + } + const requestIndex = bru.getVar("elixFormsQueryRequestIndex"); + const requestId = requestIds[requestIndex]; + + if (requestId === undefined) + { + console.log(bru.getVar("elixFormsQueryOutput")); + console.log("Undefined"); + } + else + { + console.log("Calling method with requestId: " + requestId); + req.setUrl(req.getUrl().replace(":request_id", requestId)); + } + - type: after-response + code: |- + if (!bru.hasVar("elixFormsQueryRequestIds")) + { + console.error("Pre: NO elixFormsQueryRequestIds FOUND!"); + } + const requestIds = bru.getVar("elixFormsQueryRequestIds"); + if (!bru.hasVar("elixFormsQueryRequestIndex")) + { + console.error("Post: NO elixFormsQueryRequestIndex FOUND!"); + } + const requestIndex = bru.getVar("elixFormsQueryRequestIndex"); + if (!bru.hasVar("elixFormsQueryOutput")) + { + console.error("Post: NO elixFormsQueryOutput FOUND!"); + } + const jsonOutput = JSON.parse(bru.getVar("elixFormsQueryOutput")); + + // Get response data + const request = res.getBody().value.request; + const recordId = request.steps?.find(s => s.stepHeader == "Dati generali")?.schemas?.find(s => s.schemaId == "341")?.records?.[0]?.recordId ?? ""; + + if (recordId != "") + { + const contraenti = request.steps?.find(s => s.stepHeader == "Dati generali")?.schemas?.find(s => s.schemaId == "341")?.records?.[0]?.sections?.find(s => s.sectionKey == "SEC_0001")?.columns?.find(c => c.columnKey == "COL0004")?.columnValue ?? ""; + const responsabili = request.steps?.find(s => s.stepHeader == "Dati generali")?.schemas?.find(s => s.schemaId == "341")?.records?.[0]?.sections?.find(s => s.sectionKey == "SEC_0003")?.columns?.find(c => c.columnKey == "COL0017")?.columnValue ?? ""; + + // Now prepare values as needed + const contraentiCsv = contraenti.split("\n").map(c => c.split(", CF/PIVA: ")[0]).join(", "); + const responsabiliCsv = responsabili.split("\n").map(r => r.split(", CF: ")[0]).join(", "); + + const stringElement = '{ "S_341_'+recordId+'_COL0118": "' + responsabiliCsv + '", "S_341_'+recordId+'_COL0119": "' + contraentiCsv + '" }'; + const jsonElement = JSON.parse(stringElement); + + jsonOutput.push(jsonElement); + + bru.setVar("elixFormsQueryOutput", JSON.stringify(jsonOutput)); + } + else + { + console.log("Cannot retrieve recordId from request"); + }; + + // Set next request if needed + if (requestIndex < requestIds.length - 1) + { + bru.setVar("elixFormsQueryRequestIndex", requestIndex + 1); + bru.runner.setNextRequest("Get request details"); + } + else + { + console.log(JSON.stringify(jsonOutput)); + } + +settings: + encodeUrl: true + timeout: 0 + followRedirects: true + maxRedirects: 5 + +examples: + - name: Get Request - Success + request: + url: "{{elixFormsApiUrl_Default}}/request/:request_id/get?username={{elixFormsApiUsername}}" + method: GET + params: + - name: username + value: "{{elixFormsApiUsername}}" + type: query + description: lo username con cui si è effettuato il login + - name: recordOrder + value: NONE + type: query + description: case sensitive + disabled: true + - name: request_id + value: "7007" + 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: transfer-encoding + value: chunked + - 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": "1d889f27-cf95-487b-9523-84033df41391", + "version": "3.9.2.17", + "request": { + "idRequest": 7007, + "moduleCategoryTag": "ASI-RIC, CONTO_TERZI", + "moduleTag": "PROPOSTA_CCT_DOCENTE", + "moduleUrl": "https://unipr.elixforms.it/rwe2/forms/recap.jsp?IUQOID=7007&RWE2_TAB_REL=14900&IURTLGY=schemadata&ELANG=it&IATL=it", + "requestTitle": "RWE2 - Request", + "attributes": [ + { + "columnKey": "COL0008", + "columnTitle": "Created", + "columnValue": "true" + }, + { + "columnKey": "COL0009", + "columnTitle": "Created date", + "columnValue": "16-04-2025 15:39" + }, + { + "columnKey": "COL0010", + "columnTitle": "Confirmed", + "columnValue": "true" + }, + { + "columnKey": "COL0011", + "columnTitle": "Confirmed date", + "columnValue": "16-04-2025 15:41" + }, + { + "columnKey": "COL0012", + "columnTitle": "Complete", + "columnValue": "true" + }, + { + "columnKey": "COL0013", + "columnTitle": "Complete date", + "columnValue": "16-04-2025 15:41" + }, + { + "columnKey": "COL0035", + "columnTitle": "Complete (first time)", + "columnValue": "true" + }, + { + "columnKey": "COL0036", + "columnTitle": "Complete date (first time)", + "columnValue": "16-04-2025 15:41" + }, + { + "columnKey": "COL0037", + "columnTitle": "Evasa", + "columnValue": "true" + }, + { + "columnKey": "COL0038", + "columnTitle": "Data di evasione", + "columnValue": "16-04-2025 16:10" + }, + { + "columnKey": "COL0039", + "columnTitle": "Archiviata", + "columnValue": "" + }, + { + "columnKey": "COL0040", + "columnTitle": "Data di archiviazione", + "columnValue": "" + } + ], + "steps": [ + { + "conditionalForm": false, + "moduleTabGenId": 14906, + "multipleForms": false, + "stepHeader": "Richiedente", + "schemas": [ + { + "recordSize": 1, + "schemaId": 327, + "tag": "", + "title": "PROPOSTA_CCT_DOCENTE_Richiedente", + "records": [ + { + "columnSize": 4, + "recordId": 23629, + "recordNum": 1, + "sections": [ + { + "sectionKey": "SEC_0001", + "sectionTitle": "Richiedente", + "columns": [ + { + "columnKey": "COL0003", + "columnName": "COL0003", + "columnTitle": "Cognome", + "columnType": "STRING", + "columnValue": "" + }, + { + "columnKey": "COL0004", + "columnName": "COL0004", + "columnTitle": "Nome", + "columnType": "STRING", + "columnValue": "" + }, + { + "columnKey": "COL0001", + "columnName": "COL0001", + "columnTitle": "Codice Fiscale", + "columnType": "STRING", + "columnValue": "MMMPPL74T17E463A" + }, + { + "columnKey": "COL0005", + "columnName": "COL0005", + "columnTitle": "Email", + "columnType": "STRING", + "columnValue": "" + } + ] + } + ] + } + ] + } + ] + }, + { + "conditionalForm": false, + "moduleTabGenId": 18917, + "multipleForms": false, + "stepHeader": "Dati generali e Costi", + "schemas": [ + { + "recordSize": 1, + "schemaId": 326, + "tag": "", + "title": "PROPOSTA_CCT_DOCENTE_Dati_generali", + "records": [ + { + "columnSize": 20, + "recordId": 23630, + "recordNum": 1, + "sections": [ + { + "sectionKey": "SEC_0001", + "sectionTitle": "Dati del contratto", + "columns": [ + { + "exportTag": { + "exportGroup": "API;PROPOSTA_CCT_DOCENTE_GROUP", + "exportTag": "contratto.Titolo" + }, + "columnKey": "COL0005", + "columnName": "COL0005", + "columnTitle": "Titolo", + "columnType": "TEXTAREA", + "columnValue": "Titolo" + }, + { + "columnKey": "COL0006", + "columnName": "COL0006", + "columnTitle": "Struttura principale", + "columnType": "STRING", + "columnValue": "U.O. Sistemi Applicativi" + }, + { + "columnKey": "COL0007", + "columnName": "COL0007", + "columnTitle": "Codice struttura", + "columnType": "STRING", + "columnValue": "" + }, + { + "exportTag": { + "exportGroup": "API;PROPOSTA_CCT_DOCENTE_GROUP", + "exportTag": "contratto.durataInMesi" + }, + "columnKey": "COL0008", + "columnName": "COL0008", + "columnTitle": "Durata (mesi)", + "columnType": "STRING", + "columnValue": "17" + }, + { + "exportTag": { + "exportGroup": "API;PROPOSTA_CCT_DOCENTE_GROUP", + "exportTag": "contratto.corrispettivo" + }, + "columnKey": "COL0009", + "columnName": "COL0009", + "columnTitle": "Corrispettivo / contributo € (IVA esclusa)", + "columnType": "STRING", + "columnValue": "12500" + } + ] + }, + { + "sectionKey": "SEC_0002", + "sectionTitle": "Responsabile Scientifico proponente", + "columns": [ + { + "columnKey": "COL0012", + "columnName": "COL0012", + "columnTitle": "Nome", + "columnType": "STRING", + "columnValue": "Pier Paolo" + }, + { + "columnKey": "COL0013", + "columnName": "COL0013", + "columnTitle": "Cognome", + "columnType": "STRING", + "columnValue": "MAMMI" + }, + { + "columnKey": "COL0038", + "columnName": "COL0038", + "columnTitle": "Email", + "columnType": "STRING", + "columnValue": "pierpaolo.mammi@unipr.it" + }, + { + "columnKey": "COL0014", + "columnName": "COL0014", + "columnTitle": "Codice fiscale", + "columnType": "STRING", + "columnValue": "MMMPPL74T17E463A" + }, + { + "columnKey": "COL0015", + "columnName": "COL0015", + "columnTitle": "Struttura", + "columnType": "STRING", + "columnValue": "U.O. Sistemi Applicativi" + }, + { + "columnKey": "COL0016", + "columnName": "COL0016", + "columnTitle": "Codice struttura", + "columnType": "STRING", + "columnValue": "106143" + }, + { + "columnKey": "COL0046", + "columnName": "COL0046", + "columnTitle": "Titolo accademico (nascosto)", + "columnType": "STRING", + "columnValue": "" + } + ] + }, + { + "sectionKey": "SEC_0008", + "sectionTitle": "Costi", + "columns": [ + { + "columnKey": "COL0053", + "columnName": "COL0053", + "columnTitle": "Dettaglio dei costi", + "columnType": "TEXTAREA", + "columnValue": "dettaglio" + } + ] + }, + { + "sectionKey": "SEC_0009", + "sectionTitle": "Altro", + "columns": [ + { + "columnKey": "COL0054", + "columnName": "COL0054", + "columnTitle": "Note aggiuntive", + "columnType": "TEXTAREA", + "columnValue": "" + } + ] + }, + { + "sectionKey": "SEC_0006", + "sectionTitle": "", + "columns": [ + { + "columnKey": "COL0020", + "columnName": "COL0020", + "columnTitle": "UUID", + "columnType": "STRING", + "columnValue": "e116f677-a115-45eb-b51b-66f8dd754b6b" + }, + { + "columnKey": "COL0002", + "columnName": "COL0002", + "columnTitle": "JSON", + "columnType": "TEXTAREA", + "columnValue": "{"value":{"code":"OK","description":"","complete":true,"globalStatus":"OK","serviceInformationList":{"serviceInformation":[{"ITSystemName":"EF-PROXY","complete":true,"serviceVersion":"1.0.0","statusDetailList":{"statusDetail":[{"code":"OK","detailStatus":"OK"}]}}]},"uuid":"e116f677-a115-45eb-b51b-66f8dd754b6b","version":"3.0.0","json":{"idAb":"269139","matricola":"050713","nome":"Pier Paolo","cognome":"MAMMI","dataFineRapporto":null,"dataInizioRapporto":"2025-01-20","codice_attivita":"0001","descrizione_attivita":"In servizio","emailAteneo":"pierpaolo.mammi@unipr.it","cellulare_servizio":null,"ruolo":"ND","profilo":"SETTORE_10","inquadramento":"FU0","genere":"M","cod_fis":"MMMPPL74T17E463A","codice_struttura":"106143","nome_struttura":"U.O. Sistemi Applicativi","codice_struttura_padre":"106139","nome_struttura_padre":"Area - Sistemi Informativi","telefono":"0521 904145","comitato":null,"codiceSsd":"000000000000","area_disciplinare":"00","nome_sup_diretto":"Simona","cognome_sup_diretto":"BERTE'","cf_sup_diretto":"BRTSMN69B65G337A","mail_sup_diretto":"simona.berte@unipr.it","matricola_sup_diretto":"005603","nome_sup_apicale":"Candeloro","cognome_sup_apicale":"BELLANTONI","matricola_sup_apicale":"028973","cf_sup_apicale":"BLLCDL60C28H224V","mail_sup_apicale":"candeloro.bellantoni@unipr.it","pt_tipo":null,"pt_ds_tipo":null,"perc_pt":"100","descrizione_ruolo":null,"descrizione_profilo":"Settore tecnico - informatico","descrizione_inquadramento":"Area dei Funzionari","id_fascicolo_titulus":"5404836"}}}" + }, + { + "columnKey": "COL0021", + "columnName": "COL0021", + "columnTitle": "Messaggio", + "columnType": "STRING", + "columnValue": "" + }, + { + "columnKey": "COL0022", + "columnName": "COL0022", + "columnTitle": "Errore", + "columnType": "STRING", + "columnValue": "" + } + ] + }, + { + "sectionKey": "SEC_0007", + "sectionTitle": "Valori calcolati (nascosti)", + "columns": [ + { + "columnKey": "COL0052", + "columnName": "COL0052", + "columnTitle": "Docente", + "columnType": "STRING", + "columnValue": "MAMMI Pier Paolo" + }, + { + "columnKey": "COL0055", + "columnName": "COL0055", + "columnTitle": "Corrispettivo formattato", + "columnType": "STRING", + "columnValue": "12.500,00" + } + ] + } + ] + } + ] + } + ] + }, + { + "conditionalForm": false, + "moduleTabGenId": 22115, + "multipleForms": false, + "stepHeader": "Contraenti e Partecipanti", + "schemas": [ + { + "recordSize": 1, + "schemaId": 374, + "tag": "", + "title": "PROPOSTA_CCT_DOCENTE_Contraenti_Partecipanti", + "records": [ + { + "columnSize": 2, + "recordId": 23634, + "recordNum": 1, + "sections": [ + { + "sectionKey": "SEC_0001", + "sectionTitle": "Contraenti", + "columns": [ + { + "columnKey": "COL0001", + "columnName": "COL0001", + "columnTitle": "Elenco dei contraenti", + "columnType": "TEXTAREA", + "columnValue": "Contraenti" + } + ] + }, + { + "sectionKey": "SEC_0002", + "sectionTitle": "Partecipanti", + "columns": [ + { + "columnKey": "COL0002", + "columnName": "COL0002", + "columnTitle": "Elenco dei partecipanti", + "columnType": "TEXTAREA", + "columnValue": "Partecipanti" + } + ] + } + ] + } + ] + } + ] + }, + { + "conditionalForm": false, + "moduleTabGenId": 14904, + "multipleForms": false, + "stepHeader": "Dichiarazioni", + "schemas": [ + { + "recordSize": 1, + "schemaId": 325, + "tag": "", + "title": "PROPOSTA_CCT_DOCENTE_Dichiarazioni", + "records": [ + { + "columnSize": 15, + "recordId": 23635, + "recordNum": 1, + "sections": [ + { + "sectionKey": "SEC_0001", + "sectionTitle": "Dichiarazioni", + "columns": [ + { + "columnKey": "COL0001", + "columnName": "COL0001", + "columnTitle": "La/Il Prof.ssa/Prof./Dott.ssa/Dott. DICHIARA", + "columnType": "CHECKBOX", + "columnValueList": { + "columnValue": [ + { + "1": "di conoscere il testo dell'Accordo e gli adempimenti a proprio carico previsti nello stesso;" + } + ] + }, + "columnValue": null + }, + { + "columnKey": "COL0002", + "columnName": "COL0002", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValueList": { + "columnValue": [ + { + "2": "di accettare e impegnarsi a rispettare gli obblighi di segretezza e confidenzialità, la disciplina dei \"Risultati\" e/o della \"Proprietà Intellettuale\" e delle \"Pubblicazioni\", nonché tutti i termini e condizioni previsti nell'Accordo;" + } + ] + }, + "columnValue": null + }, + { + "columnKey": "COL0003", + "columnName": "COL0003", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValueList": { + "columnValue": [ + { + "3": "che le attività di cui all'Accordo non determinano alcuna violazione degli obblighi in materia di proprietà intellettuale già assunti dall'Università nei confronti di altri contraenti con i quali l'Ateneo ha sottoscritto specifici contratti/convenzioni nell'ambito dei quali il dichiarante è stato/a individuato/a come \"responsabile scientifico\";" + } + ] + }, + "columnValue": null + } + ] + }, + { + "sectionKey": "SEC_0005", + "sectionTitle": "Attività oggetto dell'accordo", + "columns": [ + { + "columnKey": "COL0018", + "columnName": "COL0018", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValueList": { + "columnValue": [ + { + "12": "che l'attività oggetto dell'accordo consiste nell'esecuzione di contratti di ricerca e/o la fornitura di servizi svolti nell'interesse di terzi;" + } + ] + }, + "columnValue": null + }, + { + "columnKey": "COL0019", + "columnName": "COL0019", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValue": null + }, + { + "columnKey": "COL0020", + "columnName": "COL0020", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValueList": { + "columnValue": [ + { + "14": "che l'attività oggetto dell'accordo consiste in attività di formazione svolta nell'interesse di terzi;" + } + ] + }, + "columnValue": null + }, + { + "columnKey": "COL0021", + "columnName": "COL0021", + "columnTitle": "", + "columnType": "CHECKBOX", + "columnValue": null + } + ] + }, + { + "sectionKey": "SEC_0006", + "sectionTitle": "Utilizzo proprietà intellettuali", + "columns": [ + { + "columnKey": "COL0005", + "columnName": "COL0005", + "columnTitle": "", + "columnType": "RADIO", + "columnValueList": { + "columnValue": [ + { + "9": "che nello svolgimento delle attività dell'Accordo VERRÀ impiegata proprietà intellettuale titolata (domanda di brevetto/brevetto avente ad oggetto invenzioni, modelli di utilità, marchi registrati, software, opere dell'ingegno) di cui l'Università è proprietaria/titolare e/o comproprietaria/contitolare secondo la normativa vigente, avente tipologia indicata nel seguito:" + } + ] + }, + "columnValue": "che nello svolgimento delle attività dell'Accordo VERRÀ impiegata proprietà intellettuale titolata (domanda di brevetto/brevetto avente ad oggetto invenzioni, modelli di utilità, marchi registrati, software, opere dell'ingegno) di cui l'Università è proprietaria/titolare e/o comproprietaria/contitolare secondo la normativa vigente, avente tipologia indicata nel seguito:" + }, + { + "columnKey": "COL0006", + "columnName": "COL0006", + "columnTitle": "", + "columnType": "TEXTAREA", + "columnValue": "sdasdasd" + } + ] + }, + { + "sectionKey": "SEC_0007", + "sectionTitle": "Presenza conflitto d'interessi", + "columns": [ + { + "columnKey": "COL0007", + "columnName": "COL0007", + "columnTitle": "", + "columnType": "RADIO", + "columnValueList": { + "columnValue": [ + { + "11": "di TROVARSI in situazioni e/o in condizioni di conflitto di interessi, anche potenziale, con riferimento all'Accordo di cui alla presente proposta secondo quanto previsto dalle disposizioni di cui alla normativa in materia inerente status giuridico, nonché dalle disposizioni contenute nel Codice di comportamento dell'Università degli Studi di Parma, avente motivazione indicata nel seguito:" + } + ] + }, + "columnValue": "di TROVARSI in situazioni e/o in condizioni di conflitto di interessi, anche potenziale, con riferimento all'Accordo di cui alla presente proposta secondo quanto previsto dalle disposizioni di cui alla normativa in materia inerente status giuridico, nonché dalle disposizioni contenute nel Codice di comportamento dell'Università degli Studi di Parma, avente motivazione indicata nel seguito:" + }, + { + "columnKey": "COL0008", + "columnName": "COL0008", + "columnTitle": "", + "columnType": "TEXTAREA", + "columnValue": "swerr523w4r5dfsdf" + } + ] + }, + { + "sectionKey": "SEC_0003", + "sectionTitle": "", + "columns": [ + { + "columnKey": "COL0012", + "columnName": "COL0012", + "columnTitle": "Luogo", + "columnType": "STRING", + "columnValue": "Parma" + }, + { + "columnKey": "COL0013", + "columnName": "COL0013", + "columnTitle": "Data", + "columnType": "STRING", + "columnValue": "16-04-2025" + } + ] + }, + { + "sectionKey": "SEC_0002", + "sectionTitle": "Valori calcolati (nascosti)", + "columns": [ + { + "columnKey": "COL0010", + "columnName": "COL0010", + "columnTitle": "Valore utilizzo brevetti", + "columnType": "STRING", + "columnValue": "" + }, + { + "columnKey": "COL0011", + "columnName": "COL0011", + "columnTitle": "Valore conflitto interessi", + "columnType": "STRING", + "columnValue": "" + } + ] + } + ] + } + ] + } + ] + }, + { + "conditionalForm": false, + "moduleTabGenId": 18920, + "multipleForms": true, + "stepHeader": "Allegati", + "schemas": [] + }, + { + "conditionalForm": false, + "moduleTabGenId": 0, + "multipleForms": false, + "stepHeader": "Riepilogo", + "schemas": [] + }, + { + "conditionalForm": false, + "moduleTabGenId": 0, + "multipleForms": false, + "stepHeader": "Convalida", + "schemas": [] + }, + { + "conditionalForm": false, + "moduleTabGenId": 0, + "multipleForms": false, + "stepHeader": "Inoltro", + "schemas": [] + } + ], + "exported_schemas": [] + }, + "requestSize": 1 + } + } + - name: Get Request - Not Found + request: + url: "{{elixFormsApiUrl_Default}}/request/:request_id/get?username={{elixFormsApiUsername}}" + method: GET + params: + - name: username + value: "{{elixFormsApiUsername}}" + type: query + description: lo username con cui si è effettuato il login + - name: request_id + value: "12" + 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: "456" + - 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": "Nessuna pratica trovata per l'id 12", + "complete": true, + "globalStatus": "WARNING", + "serviceInformationList": { + "serviceInformation": [ + { + "ITSystemName": "EF-CORE", + "complete": true, + "serviceVersion": "1.2.0", + "statusDetailList": { + "statusDetail": [ + { + "code": "WARNING", + "description": "Nessuna pratica trovata per l'id 12", + "detailStatus": "WARNING" + } + ] + } + } + ] + }, + "uuid": "05aea0b0-921c-4304-ab9c-7254ebb6cded", + "version": "3.9.2.17", + "requestSize": 0 + } + } diff --git a/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Login once.yml b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Login once.yml new file mode 100644 index 0000000..f2ee4a1 --- /dev/null +++ b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Login once.yml @@ -0,0 +1,255 @@ +info: + name: Login once + type: http + seq: 3 + +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: |- + + + + Payara Server 6.2025.1 #badassfish - Error report + + + +

HTTP Status 401 - Unauthorized

+
+

+ type Status report +

+

+ messageUnauthorized +

+

+ descriptionThis request requires HTTP authentication. +

+
+

Payara Server 6.2025.1 #badassfish

+ + + - 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=" + } + } diff --git a/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Lookup requests.yml b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Lookup requests.yml new file mode 100644 index 0000000..81a0ac0 --- /dev/null +++ b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/Lookup requests.yml @@ -0,0 +1,270 @@ +info: + name: Lookup requests + type: http + seq: 5 + +http: + method: GET + url: "{{elixFormsApiUrl_Default}}/request/lookup/by-status?requestStatus=SUBMITTED&requestStatus=IN_PROGRESS&moduleTag=PROPOSTA_CCT_OPERATORE" + headers: + - name: x-requested-with + value: XMLHttpRequest + - name: x-api-username + value: "{{elixFormsApiUsername}}" + params: + - name: requestStatus + value: SUBMITTED + type: query + description: |- + Valori possibili: + - IN_PROGRESS + - SUBMITTED + - PROCESSED + possibile selezionare valori multipli + - name: requestStatus + value: IN_PROGRESS + type: query + - name: moduleTag + value: PROPOSTA_CCT_OPERATORE + type: query + description: Possibile specificare valori multipli + - name: moduleTag + value: PROPOSTA_CCT_DOCENTE + type: query + disabled: true + - name: swfOptionKey + value: "1" + type: query + disabled: true + - name: swfOptionMode + value: IN + type: query + disabled: true + auth: inherit + +runtime: + scripts: + - type: after-response + code: |- + bru.deleteVar("elixFormsQueryRequestIds"); + bru.deleteVar("elixFormsQueryRequestIndex"); + bru.deleteVar("elixFormsQueryOutput"); + + // Carica il file JSON (sostituisci con il tuo oggetto JSON) + const jsonData = res.getBody(); + const requests = jsonData.value.requests; + const requestIds = []; + for (const r of requests) + { + requestIds.push(r.requestId); + } + console.log(requestIds); + bru.setVar("elixFormsQueryRequestIds", requestIds); + bru.setVar("elixFormsQueryRequestIndex", 0); + bru.setVar("elixFormsQueryOutput", JSON.stringify(JSON.parse("[]"))); + +settings: + encodeUrl: true + timeout: 0 + followRedirects: true + maxRedirects: 5 + +examples: + - name: Lookup By Status (w SWF) - Success + request: + url: "{{elixFormsApiUrl_Default}}/request/lookup/by-status" + method: POST + headers: + - name: x-requested-with + value: XMLHttpRequest + body: + type: form-urlencoded + data: + - name: username + value: "{{elixFormsApiUsername}}" + - name: requestStatus + value: PROCESSED + description: |- + Valori possibili: + - IN_PROGRESS + - SUBMITTED + - PROCESSED + + possibile selezionare valori multipli + - name: moduleTag + value: PROPOSTA_CCT_OPERATORE + disabled: true + - name: moduleTag + value: PROPOSTA_CCT_DOCENTE + description: |- + Per restringere il risultato alle sole richieste del/i modulo/i aventi tag specificato + + Possibile selezionare valori multipli + - name: swfOptionKey + value: "1" + - name: swfOptionMode + value: IN + 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+json;charset=UTF-8 + - name: content-length + value: "787" + - 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": "88b0ea46-f1c2-4ed3-a5f2-1a43c6e1fd58", + "version": "3.10.0.23", + "requests": [ + { + "moduleTag": "PROPOSTA_CCT_DOCENTE", + "requestId": 10699, + "step": "Inoltrata, senza stato di workflow semplice disponibile per il modulo" + }, + { + "moduleTag": "PROPOSTA_CCT_DOCENTE", + "requestId": 10728, + "step": "Inoltrata, senza stato di workflow semplice disponibile per il modulo" + }, + { + "moduleTag": "PROPOSTA_CCT_DOCENTE", + "requestId": 10868, + "step": "Inoltrata, senza stato di workflow semplice disponibile per il modulo" + } + ], + "requestsSize": 3 + } + } + - name: Lookup By Status - Error + request: + url: "{{elixFormsApiUrl_Default}}/request/lookup/by-status" + method: POST + body: + type: form-urlencoded + data: + - name: username + value: "{{elixFormsApiUsername}}" + - name: requestStatus + value: IN_PROGRESS + description: |- + Valori possibili: + - IN_PROGRESS + - SUBMITTED + - PROCESSED + + possibile selezionare valori multipli + - name: moduleTag + value: PROPOSTA_CCT_OPERATORE + - name: moduleTag + value: PROPOSTA_CCT_DOCENTE + description: |- + Per restringere il risultato alle sole richieste del/i modulo/i aventi tag specificato + + Possibile selezionare valori multipli + disabled: true + - name: swfOptionKey + value: "1" + 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+json;charset=UTF-8 + - name: content-length + value: "925" + - 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": "ERROR", + "description": "Il modulo identificato dal tag \"PROPOSTA_CCT_OPERATORE\" NON contiene un workflow semplice (la scheda modulo 10 contiene un valore nullo o 0 nella colonna S_10_COL0051), ma è stato richiesto di filtrare i risultati per il valore INOLTRATA (uno stato di workflow semplice)", + "complete": true, + "globalStatus": "ERROR", + "serviceInformationList": { + "serviceInformation": [ + { + "ITSystemName": "EF-CORE", + "complete": true, + "serviceVersion": "1.2.0", + "statusDetailList": { + "statusDetail": [ + { + "code": "ERROR", + "description": "Il modulo identificato dal tag \"PROPOSTA_CCT_OPERATORE\" NON contiene un workflow semplice (la scheda modulo 10 contiene un valore nullo o 0 nella colonna S_10_COL0051), ma è stato richiesto di filtrare i risultati per il valore INOLTRATA (uno stato di workflow semplice)", + "detailStatus": "ERROR" + } + ] + } + } + ] + }, + "uuid": "ed18681c-a40e-458e-8f70-0b982a19ab0b", + "version": "3.9.2.17", + "requestsSize": 0 + } + } diff --git a/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/folder.yml b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/folder.yml new file mode 100644 index 0000000..c14a4a4 --- /dev/null +++ b/collections/elixForms API v2/Runner- Get all requests by ModuleTag and status/folder.yml @@ -0,0 +1,7 @@ +info: + name: Runner- Get all requests by ModuleTag and status + type: folder + seq: 1 + +request: + auth: inherit diff --git a/collections/elixForms API v2/Set Request Status- Incomplete.yml b/collections/elixForms API v2/Set Request Status- Incomplete.yml index 2893363..39960f2 100644 --- a/collections/elixForms API v2/Set Request Status- Incomplete.yml +++ b/collections/elixForms API v2/Set Request Status- Incomplete.yml @@ -1,7 +1,7 @@ info: name: "Set Request Status: Incomplete" type: http - seq: 12 + seq: 13 http: method: POST diff --git a/collections/elixForms API v2/User info/folder.yml b/collections/elixForms API v2/User info/folder.yml index 010d375..2e25b28 100644 --- a/collections/elixForms API v2/User info/folder.yml +++ b/collections/elixForms API v2/User info/folder.yml @@ -1,7 +1,7 @@ info: name: User info type: folder - seq: 8 + seq: 9 request: auth: inherit diff --git a/collections/elixForms API v2/_HACKS/folder.yml b/collections/elixForms API v2/_HACKS/folder.yml index a9bfb60..ce35725 100644 --- a/collections/elixForms API v2/_HACKS/folder.yml +++ b/collections/elixForms API v2/_HACKS/folder.yml @@ -1,7 +1,7 @@ info: name: _HACKS type: folder - seq: 2 + seq: 4 request: auth: inherit diff --git a/collections/elixForms API v2/_Untested/folder.yml b/collections/elixForms API v2/_Untested/folder.yml index 5a7afe6..0f306ec 100644 --- a/collections/elixForms API v2/_Untested/folder.yml +++ b/collections/elixForms API v2/_Untested/folder.yml @@ -1,7 +1,7 @@ info: name: _Untested type: folder - seq: 1 + seq: 2 request: auth: inherit