diff --git a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Reopen Request (OLD).yml b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Reopen Request (OLD).yml similarity index 99% rename from bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Reopen Request (OLD).yml rename to bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Reopen Request (OLD).yml index fb242e7..dec7d0a 100644 --- a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Reopen Request (OLD).yml +++ b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Reopen Request (OLD).yml @@ -1,7 +1,7 @@ info: name: Reopen Request (OLD) type: http - seq: 4 + seq: 6 http: method: POST diff --git a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Set Request Status (OLD).yml b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Set Request Status (OLD).yml similarity index 100% rename from bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Set Request Status (OLD).yml rename to bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Set Request Status (OLD).yml diff --git a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Set Request Status- Register result (OLD).yml b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Set Request Status- Register result (OLD).yml similarity index 99% rename from bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Set Request Status- Register result (OLD).yml rename to bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Set Request Status- Register result (OLD).yml index f64bfd1..5ef0a63 100644 --- a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/Set Request Status- Register result (OLD).yml +++ b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/Set Request Status- Register result (OLD).yml @@ -1,7 +1,7 @@ info: name: "Set Request Status: Register result (OLD)" type: http - seq: 3 + seq: 6 http: method: POST diff --git a/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/folder.yml b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/folder.yml new file mode 100644 index 0000000..01e3d2c --- /dev/null +++ b/bruno/collections/elixForms API v2/Cambio stato e-o integrazione/OLD/folder.yml @@ -0,0 +1,7 @@ +info: + name: OLD + type: folder + seq: 6 + +request: + auth: inherit diff --git a/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Get request details.yml b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Get request details.yml new file mode 100644 index 0000000..5566cb8 --- /dev/null +++ b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Get request details.yml @@ -0,0 +1,933 @@ +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("Undefined, printing vars:"); + //console.log(bru.getVar("elixFormsQueryOutput")); + console.log(bru.getVar("elixFormsWebKitFormOutput")); + } + 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")); + + // -------------------------------------------------------------------------------- + if (!bru.hasVar("elixFormsWebKitFormOutput")) + { + console.error("Post: NO elixFormsWebKitFormOutput FOUND!"); + } + var webKitFormOutput = bru.getVar("elixFormsWebKitFormOutput"); + // -------------------------------------------------------------------------------- + + // Get response data + const request = res.getBody().value.request; + const idRequest = request.idRequest ?? 0; + 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 = '{ "idRequest": ' + idRequest + ', "S_341_'+recordId+'_COL0118": "' + responsabiliCsv + '", "S_341_'+recordId+'_COL0119": "' + contraentiCsv + '" }'; + const jsonElement = JSON.parse(stringElement); + + jsonOutput.push(jsonElement); + + bru.setVar("elixFormsQueryOutput", JSON.stringify(jsonOutput)); + + // -------------------------------------------------------------------------------- + webKitFormOutput += "------WebKitFormBoundary0123456789abcdef\r\n"; + webKitFormOutput += "Content-Disposition: form-data; name=\"S_341_" + recordId + "_COL0118\"\r\n"; + webKitFormOutput += "\r\n"; + webKitFormOutput += responsabiliCsv + "\r\n"; + webKitFormOutput += "------WebKitFormBoundary0123456789abcdef\r\n"; + webKitFormOutput += "Content-Disposition: form-data; name=\"S_341_" + recordId + "_COL0119\"\r\n"; + webKitFormOutput += "\r\n"; + webKitFormOutput += contraentiCsv + "\r\n"; + + bru.setVar("elixFormsWebKitFormOutput", webKitFormOutput); + // -------------------------------------------------------------------------------- + } + else + { + console.log("Cannot retrieve recordId from request " + idRequest); + }; + + // Set next request if needed + if (requestIndex < requestIds.length - 1 && requestIndex < 3) + { + bru.setVar("elixFormsQueryRequestIndex", requestIndex + 1); + bru.runner.setNextRequest("Get request details"); + } + else + { + console.log("JSON object:"); + console.log(JSON.stringify(jsonOutput)); + + // -------------------------------------------------------------------------------- + webKitFormOutput += "------WebKitFormBoundary0123456789abcdef--\r\n"; + + bru.setVar("elixFormsWebKitFormOutput", webKitFormOutput); + + console.log("--------------------------------------------------------------------------------"); + console.log("WebKitForm:"); + console.log(JSON.stringify(webKitFormOutput)); + // -------------------------------------------------------------------------------- + } + +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/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Login once.yml b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Login once.yml new file mode 100644 index 0000000..f2ee4a1 --- /dev/null +++ b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/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/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Lookup requests.yml b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Lookup requests.yml new file mode 100644 index 0000000..fcbda72 --- /dev/null +++ b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/Lookup requests.yml @@ -0,0 +1,276 @@ +info: + name: Lookup requests + type: http + seq: 5 + +http: + method: GET + url: "{{elixFormsApiUrl_Default}}/request/lookup/by-status?requestStatus=PROCESSED&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 + disabled: true + - name: requestStatus + value: PROCESSED + 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("ef_request_cct_ids"); + // -------------------------------------------------------------------------------- + bru.deleteVar("elixFormsWebKitFormOutput"); + // -------------------------------------------------------------------------------- + + // 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("[]"))); + + // -------------------------------------------------------------------------------- + bru.setVar("elixFormsWebKitFormOutput", ""); + // -------------------------------------------------------------------------------- + +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/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/folder.yml b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/folder.yml new file mode 100644 index 0000000..43cac65 --- /dev/null +++ b/bruno/collections/elixForms API v2/Runner- Get Proposta CCT matching contract IDs/folder.yml @@ -0,0 +1,7 @@ +info: + name: Runner- Get Proposta CCT matching contract IDs + type: folder + seq: 2 + +request: + auth: inherit