{
	"openapi": "3.0.3",
	"info": {
		"title": "MyTown — ws_spring_cmp",
		"version": "0.2.0",
		"description": "Nucleo gestionale delle imprese: anagrafiche, servizi, fatture e scadenziario, fornitori, cantieri, banche, messaggistica, recensioni e cruscotti.\n\nDocumentazione generata automaticamente dal codice sorgente da `platform/tools/openapi-gen`.\nNon modificare a mano: le modifiche vanno fatte nei controller e la specifica va rigenerata.\n\nAutenticazione: token JWT nell’header `Authorization: Bearer <token>`, ottenuto da\n`POST /ws_spring_portal_login/api/login`. Gli endpoint marcati come pubblici non richiedono il token.",
		"license": {
			"name": "AGPL-3.0-or-later",
			"url": "https://www.gnu.org/licenses/agpl-3.0.html"
		}
	},
	"servers": [
		{
			"url": "/ws_spring_cmp/api",
			"description": "Stesso host, servizi esposti alla radice (Tomcat diretto)"
		},
		{
			"url": "/api/ws_spring_cmp/api",
			"description": "Stesso host, servizi dietro reverse proxy montato su /api (vedi platform/INSTALL.md)"
		},
		{
			"url": "{host}/ws_spring_cmp/api",
			"description": "Host esplicito",
			"variables": {
				"host": {
					"default": "http://localhost:8080",
					"description": "Schema e host del server applicativo"
				}
			}
		}
	],
	"tags": [
		{
			"name": "Assemblee",
			"description": "Endpoint di AssembleeController (src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java)"
		},
		{
			"name": "AttachmentTypes",
			"description": "Endpoint di AttachmentTypesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java)"
		},
		{
			"name": "Banks",
			"description": "Endpoint di BanksController (src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java)"
		},
		{
			"name": "Categories",
			"description": "Endpoint di CategoriesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java)"
		},
		{
			"name": "Cel",
			"description": "Endpoint di CelController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java)"
		},
		{
			"name": "CertPayment",
			"description": "Endpoint di CertPaymentController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java)"
		},
		{
			"name": "CertPaymentCategories",
			"description": "Endpoint di CertPaymentCategoriesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java)"
		},
		{
			"name": "CertPaymentContract",
			"description": "Endpoint di CertPaymentContractController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java)"
		},
		{
			"name": "Collaborators",
			"description": "Endpoint di CollaboratorsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java)"
		},
		{
			"name": "Companies",
			"description": "Endpoint di CompaniesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java)"
		},
		{
			"name": "CompanyGallery",
			"description": "Endpoint di CompanyGalleryController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java)"
		},
		{
			"name": "CompanyServices",
			"description": "Endpoint di CompanyServicesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java)"
		},
		{
			"name": "Components",
			"description": "Endpoint di ComponentsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java)"
		},
		{
			"name": "CondoUnits",
			"description": "Endpoint di CondoUnitsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java)"
		},
		{
			"name": "ContrattoCantiereQuota",
			"description": "Endpoint di ContrattoCantiereQuotaController (src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java)"
		},
		{
			"name": "CustomerAttachments",
			"description": "Endpoint di CustomerAttachmentsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java)"
		},
		{
			"name": "CustomerCommunications",
			"description": "Endpoint di CustomerCommunicationsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java)"
		},
		{
			"name": "Customers",
			"description": "Endpoint di CustomersController (src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java)"
		},
		{
			"name": "DailyReport",
			"description": "Endpoint di DailyReportController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java)"
		},
		{
			"name": "Detached",
			"description": "Endpoint di DetachedController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java)"
		},
		{
			"name": "DisabilityTypes",
			"description": "Endpoint di DisabilityTypesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java)"
		},
		{
			"name": "Doctors",
			"description": "Endpoint di DoctorsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java)"
		},
		{
			"name": "DocumentaryDownload",
			"description": "Endpoint di DocumentaryDownloadController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentaryDownloadController.java)"
		},
		{
			"name": "DocumentiCatalogo",
			"description": "Endpoint di DocumentiCatalogoController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java)"
		},
		{
			"name": "DocumentiGeneratore",
			"description": "Endpoint di DocumentiGeneratoreController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java)"
		},
		{
			"name": "DocumentiTemplate",
			"description": "Endpoint di DocumentiTemplateController (src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java)"
		},
		{
			"name": "Employees",
			"description": "Endpoint di EmployeesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java)"
		},
		{
			"name": "ExportJob",
			"description": "Endpoint di ExportJobController (src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java)"
		},
		{
			"name": "Favorites",
			"description": "Endpoint di FavoritesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java)"
		},
		{
			"name": "Gare",
			"description": "Endpoint di GareController (src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java)"
		},
		{
			"name": "Locations",
			"description": "Endpoint di LocationsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java)"
		},
		{
			"name": "Messaging",
			"description": "Endpoint di MessagingController (src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java)"
		},
		{
			"name": "Pdf",
			"description": "Endpoint di PdfController (src/main/java/com/kondorcs/ws_spring_cmp/controller/PdfController.java)"
		},
		{
			"name": "PvInverter",
			"description": "Endpoint di PvInverterController (src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java)"
		},
		{
			"name": "PvMonitor",
			"description": "Endpoint di PvMonitorController (src/main/java/com/kondorcs/ws_spring_cmp/controller/PvMonitorController.java)"
		},
		{
			"name": "PvPlant",
			"description": "Endpoint di PvPlantController (src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java)"
		},
		{
			"name": "Reviews",
			"description": "Endpoint di ReviewsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java)"
		},
		{
			"name": "RiepilogoGenerale",
			"description": "Endpoint di RiepilogoGeneraleController (src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java)"
		},
		{
			"name": "Roles",
			"description": "Endpoint di RolesController (src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java)"
		},
		{
			"name": "Ruoli",
			"description": "Endpoint di RuoliController (src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java)"
		},
		{
			"name": "Sal",
			"description": "Endpoint di SalController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java)"
		},
		{
			"name": "SalPassivo",
			"description": "Endpoint di SalPassivoController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java)"
		},
		{
			"name": "SalPassivoOrdine",
			"description": "Endpoint di SalPassivoOrdineController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java)"
		},
		{
			"name": "ScadenziarioFatture",
			"description": "Endpoint di ScadenziarioFattureController (src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java)"
		},
		{
			"name": "SchedeCantier",
			"description": "Endpoint di SchedeCantierController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java)"
		},
		{
			"name": "Sopralluoghi",
			"description": "Endpoint di SopralluoghiController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java)"
		},
		{
			"name": "SubAff",
			"description": "Endpoint di SubAffController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java)"
		},
		{
			"name": "Suppliers",
			"description": "Endpoint di SuppliersController (src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java)"
		},
		{
			"name": "TransportDocument",
			"description": "Endpoint di TransportDocumentController (src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java)"
		},
		{
			"name": "WarehouseItemCategory",
			"description": "Endpoint di WarehouseItemCategoryController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WarehouseItemCategoryController.java)"
		},
		{
			"name": "Workflows",
			"description": "Endpoint di WorkflowsController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java)"
		},
		{
			"name": "Worksite",
			"description": "Endpoint di WorksiteController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java)"
		},
		{
			"name": "WorksiteCost",
			"description": "Endpoint di WorksiteCostController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java)"
		},
		{
			"name": "WorksiteProduzione",
			"description": "Endpoint di WorksiteProduzioneController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java)"
		},
		{
			"name": "WorksiteReport",
			"description": "Endpoint di WorksiteReportController (src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java)"
		}
	],
	"paths": {
		"/api/assemblee/add": {
			"post": {
				"tags": [
					"Assemblee"
				],
				"summary": "Insert Assemblea",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:59` — `AssembleeController.InsertAssemblea()`.",
				"operationId": "AssembleeController.InsertAssemblea",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:59",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Assemblea"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/del/{asm_id}": {
			"delete": {
				"tags": [
					"Assemblee"
				],
				"summary": "Delete Assemblea",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:75` — `AssembleeController.DeleteAssemblea()`.",
				"operationId": "AssembleeController.DeleteAssemblea",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:75",
				"parameters": [
					{
						"name": "asm_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/get": {
			"get": {
				"tags": [
					"Assemblee"
				],
				"summary": "Get Assemblea",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:51` — `AssembleeController.GetAssemblea()`.",
				"operationId": "AssembleeController.GetAssemblea",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:51",
				"parameters": [
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Assemblea"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/list": {
			"get": {
				"tags": [
					"Assemblee"
				],
				"summary": "Get Assemblee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:37` — `AssembleeController.GetAssemblee()`.",
				"operationId": "AssembleeController.GetAssemblee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:37",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Assemblea"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/mycustomer": {
			"get": {
				"tags": [
					"Assemblee"
				],
				"summary": "Get My Customer",
				"description": "cst_id del condomino associato all'utente loggato (0 se l'utente non e' un condomino)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:122` — `AssembleeController.GetMyCustomer()`.",
				"operationId": "AssembleeController.GetMyCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:122",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/partecipanti": {
			"get": {
				"tags": [
					"Assemblee"
				],
				"summary": "Get Partecipanti",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:83` — `AssembleeController.GetPartecipanti()`.",
				"operationId": "AssembleeController.GetPartecipanti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:83",
				"parameters": [
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/AssembleaPartecipante"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/rsvp": {
			"post": {
				"tags": [
					"Assemblee"
				],
				"summary": "Update Rsvp",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:91` — `AssembleeController.UpdateRsvp()`.",
				"operationId": "AssembleeController.UpdateRsvp",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:91",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/AssembleaPartecipante"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/setfolder": {
			"post": {
				"tags": [
					"Assemblee"
				],
				"summary": "Set Folder",
				"description": "Collega la cartella documentale dell'assemblea (verbali)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:111` — `AssembleeController.SetFolder()`.",
				"operationId": "AssembleeController.SetFolder",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:111",
				"parameters": [
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "folder_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/setstatus": {
			"post": {
				"tags": [
					"Assemblee"
				],
				"summary": "Set Status",
				"description": "Cambio stato assemblea: programmata | conclusa | annullata\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:100` — `AssembleeController.SetStatus()`.",
				"operationId": "AssembleeController.SetStatus",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:100",
				"parameters": [
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/assemblee/upd": {
			"post": {
				"tags": [
					"Assemblee"
				],
				"summary": "Update Assemblea",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:67` — `AssembleeController.UpdateAssemblea()`.",
				"operationId": "AssembleeController.UpdateAssemblea",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AssembleeController.java:67",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Assemblea"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/attachment-types/add/{cmp_id}": {
			"post": {
				"tags": [
					"AttachmentTypes"
				],
				"summary": "Insert Attachment Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:45` — `AttachmentTypesController.InsertAttachmentType()`.",
				"operationId": "AttachmentTypesController.InsertAttachmentType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:45",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/AttachmentType"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/attachment-types/del/{at_id}": {
			"delete": {
				"tags": [
					"AttachmentTypes"
				],
				"summary": "Delete Attachment Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:63` — `AttachmentTypesController.DeleteAttachmentType()`.",
				"operationId": "AttachmentTypesController.DeleteAttachmentType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:63",
				"parameters": [
					{
						"name": "at_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/attachment-types/list": {
			"get": {
				"tags": [
					"AttachmentTypes"
				],
				"summary": "Get Attachment Types",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:35` — `AttachmentTypesController.GetAttachmentTypes()`.",
				"operationId": "AttachmentTypesController.GetAttachmentTypes",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:35",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/AttachmentType"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/attachment-types/upd/{at_id}": {
			"put": {
				"tags": [
					"AttachmentTypes"
				],
				"summary": "Update Attachment Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:54` — `AttachmentTypesController.UpdateAttachmentType()`.",
				"operationId": "AttachmentTypesController.UpdateAttachmentType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/AttachmentTypesController.java:54",
				"parameters": [
					{
						"name": "at_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/AttachmentType"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/banks/add": {
			"post": {
				"tags": [
					"Banks"
				],
				"summary": "Insert Bank",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:79` — `BanksController.InsertBank()`.",
				"operationId": "BanksController.InsertBank",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:79",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Bank"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/banks/del/{cb_id}": {
			"delete": {
				"tags": [
					"Banks"
				],
				"summary": "Delete Bank",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:91` — `BanksController.DeleteBank()`.",
				"operationId": "BanksController.DeleteBank",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:91",
				"parameters": [
					{
						"name": "cb_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/banks/get": {
			"get": {
				"tags": [
					"Banks"
				],
				"summary": "Get Bank",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:56` — `BanksController.GetBank()`.",
				"operationId": "BanksController.GetBank",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:56",
				"parameters": [
					{
						"name": "cb_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Bank"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/banks/list": {
			"get": {
				"tags": [
					"Banks"
				],
				"summary": "Get Banks",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:40` — `BanksController.GetBanks()`.",
				"operationId": "BanksController.GetBanks",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:40",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Bank"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/banks/upd": {
			"post": {
				"tags": [
					"Banks"
				],
				"summary": "Update Bank",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:67` — `BanksController.UpdateBank()`.",
				"operationId": "BanksController.UpdateBank",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/BanksController.java:67",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Bank"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/add/{cmp_id}": {
			"post": {
				"tags": [
					"Categories"
				],
				"summary": "insert Categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:90` — `CategoriesController.insertCategories()`.",
				"operationId": "CategoriesController.insertCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:90",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Category"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/del/{wfct_id}": {
			"delete": {
				"tags": [
					"Categories"
				],
				"summary": "Delete Categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:102` — `CategoriesController.DeleteCategories()`.",
				"operationId": "CategoriesController.DeleteCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:102",
				"parameters": [
					{
						"name": "wfct_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/get/{wfct_id}": {
			"get": {
				"tags": [
					"Categories"
				],
				"summary": "Get Categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:67` — `CategoriesController.GetCategories()`.",
				"operationId": "CategoriesController.GetCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:67",
				"parameters": [
					{
						"name": "wfct_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Category"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/list": {
			"get": {
				"tags": [
					"Categories"
				],
				"summary": "Get Workflows",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:36` — `CategoriesController.GetWorkflows()`.",
				"operationId": "CategoriesController.GetWorkflows",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:36",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Category"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/listall": {
			"get": {
				"tags": [
					"Categories"
				],
				"summary": "Get List Categories All",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:51` — `CategoriesController.GetListCategoriesAll()`.",
				"operationId": "CategoriesController.GetListCategoriesAll",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:51",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Category"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/categories/upd/{wfct_id}": {
			"put": {
				"tags": [
					"Categories"
				],
				"summary": "Update Categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:78` — `CategoriesController.UpdateCategories()`.",
				"operationId": "CategoriesController.UpdateCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CategoriesController.java:78",
				"parameters": [
					{
						"name": "wfct_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Category"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/add": {
			"post": {
				"tags": [
					"Cel"
				],
				"summary": "Add Cel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:97` — `CelController.AddCel()`.",
				"operationId": "CelController.AddCel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:97",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Cel"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/awardee-types": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Get Awardee Types",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:135` — `CelController.GetAwardeeTypes()`.",
				"operationId": "CelController.GetAwardeeTypes",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:135",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/AwardeeType"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/contractor-roles": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Get Contractor Roles",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:129` — `CelController.GetContractorRoles()`.",
				"operationId": "CelController.GetContractorRoles",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:129",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ContractorRole"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/del/{cel_id}": {
			"delete": {
				"tags": [
					"Cel"
				],
				"summary": "Del Cel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:118` — `CelController.DelCel()`.",
				"operationId": "CelController.DelCel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:118",
				"parameters": [
					{
						"name": "cel_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/exist-protocollo": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Exist Protocollo",
				"description": "Verifica univocità protocollo CEL (replica DNN case \"ExistProtocollo\").\r Ritorna { exists: true|false }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:145` — `CelController.ExistProtocollo()`.",
				"operationId": "CelController.ExistProtocollo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:145",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "protocollo",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cel_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/get/{cel_id}": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Get Cel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:86` — `CelController.GetCel()`.",
				"operationId": "CelController.GetCel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:86",
				"parameters": [
					{
						"name": "cel_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Cel"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/list": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Get Cel List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:56` — `CelController.GetCelList()`.",
				"operationId": "CelController.GetCelList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:56",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "protocolDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "protocolDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "settore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "protocollo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rcl",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "stazione_appaltante_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "workStartDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workStartDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workEndDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workEndDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Cel"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/pdf/list": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Pdf List",
				"description": "Genera PDF lista CEL filtrata. Stesso set di filtri dell'endpoint /list.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:173` — `CelController.PdfList()`.",
				"operationId": "CelController.PdfList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:173",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "protocolDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "protocolDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "settore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "protocollo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rcl",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "stazione_appaltante_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "workStartDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workStartDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workEndDateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "workEndDateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/pdf/single/{cel_id}": {
			"get": {
				"tags": [
					"Cel"
				],
				"summary": "Pdf Single",
				"description": "Genera PDF singolo CEL. Ritorna { res: filename } salvato in pathTemp.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:157` — `CelController.PdfSingle()`.",
				"operationId": "CelController.PdfSingle",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:157",
				"parameters": [
					{
						"name": "cel_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cel/upd/{cel_id}": {
			"put": {
				"tags": [
					"Cel"
				],
				"summary": "Upd Cel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:107` — `CelController.UpdCel()`.",
				"operationId": "CelController.UpdCel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CelController.java:107",
				"parameters": [
					{
						"name": "cel_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Cel"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-categories/add": {
			"post": {
				"tags": [
					"CertPaymentCategories"
				],
				"summary": "insert",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:59` — `CertPaymentCategoriesController.insert()`.",
				"operationId": "CertPaymentCategoriesController.insert",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:59",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CertPaymentCategory"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-categories/del/{cat_id}": {
			"delete": {
				"tags": [
					"CertPaymentCategories"
				],
				"summary": "delete",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:75` — `CertPaymentCategoriesController.delete()`.",
				"operationId": "CertPaymentCategoriesController.delete",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:75",
				"parameters": [
					{
						"name": "cat_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-categories/get/{cat_id}": {
			"get": {
				"tags": [
					"CertPaymentCategories"
				],
				"summary": "get By Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:51` — `CertPaymentCategoriesController.getById()`.",
				"operationId": "CertPaymentCategoriesController.getById",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:51",
				"parameters": [
					{
						"name": "cat_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CertPaymentCategory"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-categories/list": {
			"get": {
				"tags": [
					"CertPaymentCategories"
				],
				"summary": "get List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:35` — `CertPaymentCategoriesController.getList()`.",
				"operationId": "CertPaymentCategoriesController.getList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:35",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CertPaymentCategory"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-categories/upd/{cat_id}": {
			"put": {
				"tags": [
					"CertPaymentCategories"
				],
				"summary": "update",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:67` — `CertPaymentCategoriesController.update()`.",
				"operationId": "CertPaymentCategoriesController.update",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentCategoriesController.java:67",
				"parameters": [
					{
						"name": "cat_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CertPaymentCategory"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-contracts/{cnt_id}/prefill": {
			"get": {
				"tags": [
					"CertPaymentContract"
				],
				"summary": "get Prefill Bundle",
				"description": "Bundle di prefill per i form SAL / CEL / CertPayment partendo dal contratto.\r Se {@code ws_id} è valorizzato, la risposta contiene la quote/contacts di quel\r cantiere; altrimenti tutte le quote sono ritornate per consentire al FE di\r far scegliere all'utente (caso multi-cantiere sullo stesso contratto).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:65` — `CertPaymentContractController.getPrefillBundle()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CertPaymentContractController.getPrefillBundle",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:65",
				"parameters": [
					{
						"name": "cnt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-contracts/get/{cnt_id}": {
			"get": {
				"tags": [
					"CertPaymentContract"
				],
				"summary": "get By Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:54` — `CertPaymentContractController.getById()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CertPaymentContractController.getById",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:54",
				"parameters": [
					{
						"name": "cnt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment-contracts/list": {
			"get": {
				"tags": [
					"CertPaymentContract"
				],
				"summary": "get List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:42` — `CertPaymentContractController.getList()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CertPaymentContractController.getList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentContractController.java:42",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20000"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/add": {
			"post": {
				"tags": [
					"CertPayment"
				],
				"summary": "Add Cert Payment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:101` — `CertPaymentController.AddCertPayment()`.",
				"operationId": "CertPaymentController.AddCertPayment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:101",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CertPayment"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/associa/{origin}/{ctp_id}": {
			"put": {
				"tags": [
					"CertPayment"
				],
				"summary": "Associa",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:148` — `CertPaymentController.Associa()`.",
				"operationId": "CertPaymentController.Associa",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:148",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/del/{origin}/{ctp_id}": {
			"delete": {
				"tags": [
					"CertPayment"
				],
				"summary": "Del Cert Payment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:122` — `CertPaymentController.DelCertPayment()`.",
				"operationId": "CertPaymentController.DelCertPayment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:122",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/firma/{origin}/{ctp_id}": {
			"put": {
				"tags": [
					"CertPayment"
				],
				"summary": "Firma",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:132` — `CertPaymentController.Firma()`.",
				"operationId": "CertPaymentController.Firma",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:132",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/get/{origin}/{ctp_id}": {
			"get": {
				"tags": [
					"CertPayment"
				],
				"summary": "Get Cert Payment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:74` — `CertPaymentController.GetCertPayment()`.",
				"operationId": "CertPaymentController.GetCertPayment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:74",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CertPayment"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/invia/{origin}/{ctp_id}": {
			"put": {
				"tags": [
					"CertPayment"
				],
				"summary": "Invia",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:140` — `CertPaymentController.Invia()`.",
				"operationId": "CertPaymentController.Invia",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:140",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/list": {
			"get": {
				"tags": [
					"CertPayment"
				],
				"summary": "Get Cert Payment List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:51` — `CertPaymentController.GetCertPaymentList()`.",
				"operationId": "CertPaymentController.GetCertPaymentList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:51",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sal_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cnt_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "origin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CertPayment"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/pdf-blob/{origin}/{ctp_id}": {
			"get": {
				"tags": [
					"CertPayment"
				],
				"summary": "Pdf Blob",
				"description": "Restituisce il PDF del Certificato di Pagamento come binary (application/pdf).\r Usato dal frontend per allegarlo al FormData del modulo mail per l'invio.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:168` — `CertPaymentController.PdfBlob()`.",
				"operationId": "CertPaymentController.PdfBlob",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:168",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/precedente/{origin}/{ctp_id}": {
			"get": {
				"tags": [
					"CertPayment"
				],
				"summary": "Get Cert Payment Precedente",
				"description": "Recupera il CdP \"precedente\" allo stesso cantiere (max cpt_date < current.cpt_date).\r Usato dal frontend \"Genera Fattura\" per calcolare le voci del CdP corrente come\r differenza tra i progressivi (cumulativi) del CdP attuale e del precedente.\r Ritorna 204 No Content se non esiste un CdP precedente (è il primo del cantiere).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:90` — `CertPaymentController.GetCertPaymentPrecedente()`.",
				"operationId": "CertPaymentController.GetCertPaymentPrecedente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:90",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"204": {
						"description": "Nessun contenuto",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CertPayment"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/reset/{origin}/{ctp_id}": {
			"put": {
				"tags": [
					"CertPayment"
				],
				"summary": "Reset",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:156` — `CertPaymentController.Reset()`.",
				"operationId": "CertPaymentController.Reset",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:156",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/svincola/{ctp_id}": {
			"post": {
				"tags": [
					"CertPayment"
				],
				"summary": "Svincola",
				"description": "Svincolo Ritenute (replica DNN svincolaCert).\r Solo per CertPag general di tipologia CERTIFICATO non già svincolato.\r Crea automaticamente nuovo SAL + nuovo CertPag di tipologia SVINCOLO,\r aggrega le ritenute dei certificati precedenti dello stesso SAL/fornitore,\r marca tutti come svincolati.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:190` — `CertPaymentController.Svincola()`.",
				"operationId": "CertPaymentController.Svincola",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:190",
				"parameters": [
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/cert-payment/upd/{origin}/{ctp_id}": {
			"put": {
				"tags": [
					"CertPayment"
				],
				"summary": "Upd Cert Payment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:109` — `CertPaymentController.UpdCertPayment()`.",
				"operationId": "CertPaymentController.UpdCertPayment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CertPaymentController.java:109",
				"parameters": [
					{
						"name": "origin",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ctp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CertPayment"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/add": {
			"post": {
				"tags": [
					"Collaborators"
				],
				"summary": "Insert Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:77` — `CollaboratorsController.InsertCollaborator()`.",
				"operationId": "CollaboratorsController.InsertCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:77",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Collaborator"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/del/{col_id}": {
			"delete": {
				"tags": [
					"Collaborators"
				],
				"summary": "Delete Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:89` — `CollaboratorsController.DeleteCollaborator()`.",
				"operationId": "CollaboratorsController.DeleteCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:89",
				"parameters": [
					{
						"name": "col_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/get/{col_id}": {
			"get": {
				"tags": [
					"Collaborators"
				],
				"summary": "Get Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:54` — `CollaboratorsController.GetCollaborator()`.",
				"operationId": "CollaboratorsController.GetCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:54",
				"parameters": [
					{
						"name": "col_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Collaborator"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/list": {
			"get": {
				"tags": [
					"Collaborators"
				],
				"summary": "Get Collaborators",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:37` — `CollaboratorsController.GetCollaborators()`.",
				"operationId": "CollaboratorsController.GetCollaborators",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:37",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cst_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Collaborator"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/listaworksitecollaborator": {
			"get": {
				"tags": [
					"Collaborators"
				],
				"summary": "Get View Worksite Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:111` — `CollaboratorsController.GetViewWorksiteCollaborator()`.",
				"operationId": "CollaboratorsController.GetViewWorksiteCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:111",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/saveassworksitecollaborator": {
			"post": {
				"tags": [
					"Collaborators"
				],
				"summary": "Insert Worksite Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:122` — `CollaboratorsController.InsertWorksiteCollaborator()`.",
				"operationId": "CollaboratorsController.InsertWorksiteCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:122",
				"parameters": [
					{
						"name": "col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Worksite"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/setuser/{usr_id}/{col_id}": {
			"get": {
				"tags": [
					"Collaborators"
				],
				"summary": "Set Collaborator User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:100` — `CollaboratorsController.SetCollaboratorUser()`.",
				"operationId": "CollaboratorsController.SetCollaboratorUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:100",
				"parameters": [
					{
						"name": "usr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "col_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/collaborators/upd": {
			"post": {
				"tags": [
					"Collaborators"
				],
				"summary": "Update Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:65` — `CollaboratorsController.UpdateCollaborator()`.",
				"operationId": "CollaboratorsController.UpdateCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CollaboratorsController.java:65",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Collaborator"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/add": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Insert Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:208` — `CompaniesController.InsertCompany()`.",
				"operationId": "CompaniesController.InsertCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:208",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Company"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/add_appuntamento/{cmp_id}": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "add Appuntamento",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:274` — `CompaniesController.addAppuntamento()`.",
				"operationId": "CompaniesController.addAppuntamento",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:274",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyAppointment"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/branding": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Branding",
				"description": "GET /companies/branding?cmp_id= - Sfondi personalizzati azienda (JSON, stringa vuota se assenti)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:145` — `CompaniesController.GetBranding()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetBranding",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:145",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Set Branding",
				"description": "POST /companies/branding - body { cmp_id, branding } - imposta gli sfondi personalizzati (JSON, vuoto per rimuoverli)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:153` — `CompaniesController.SetBranding()`.",
				"operationId": "CompaniesController.SetBranding",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:153",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/chatmode": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Chat Mode",
				"description": "GET /companies/chatmode?cmp_id= - Modalita' chat azienda (DIRECT | COMPANY)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:98` — `CompaniesController.GetChatMode()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetChatMode",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:98",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Set Chat Mode",
				"description": "POST /companies/chatmode - body { cmp_id, mode } - imposta la modalita' chat azienda\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:108` — `CompaniesController.SetChatMode()`.",
				"operationId": "CompaniesController.SetChatMode",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:108",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/contratti": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get Contratti",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:373` — `CompaniesController.getContratti()`.",
				"operationId": "CompaniesController.getContratti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:373",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Contratto"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/del": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Delete Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:233` — `CompaniesController.DeleteCompany()`.",
				"operationId": "CompaniesController.DeleteCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:233",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "integer",
								"format": "int32"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/get": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:78` — `CompaniesController.GetCompany()`.",
				"operationId": "CompaniesController.GetCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:78",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Company"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/get_ccnl": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get CCNL",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:361` — `CompaniesController.getCCNL()`.",
				"operationId": "CompaniesController.getCCNL",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:361",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CCNL"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/get_natura_impresa": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get Natura Impresa",
				"description": "accessibile anche ai non registrati. L'utente loggato è risolto dal token, se presente.\n\n**Endpoint pubblico**: la catena di sicurezza dichiara `security=\"none\"` per `/api/companies/get_natura_impresa`, quindi non richiede autenticazione.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:338` — `CompaniesController.getNaturaImpresa()`.",
				"operationId": "CompaniesController.getNaturaImpresa",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:338",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/NatureCompany"
									}
								}
							}
						}
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				},
				"security": []
			}
		},
		"/api/companies/get_settings_cmp_appointment/{cmp_id}": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get Settings Company Appointment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:254` — `CompaniesController.getSettingsCompanyAppointment()`.",
				"operationId": "CompaniesController.getSettingsCompanyAppointment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:254",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CompanyCalendar"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/get_tipologia_impresa": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get Tipologia Impresa",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:349` — `CompaniesController.getTipologiaImpresa()`.",
				"operationId": "CompaniesController.getTipologiaImpresa",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:349",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TypeCompany"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/getdetail": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Company Detail",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:196` — `CompaniesController.GetCompanyDetail()`.",
				"operationId": "CompaniesController.GetCompanyDetail",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:196",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Company"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/getgroup": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Company Group",
				"description": "Gruppo funzionale dell'azienda (standard | condominio): pilota campi extra e label del portale\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:321` — `CompaniesController.GetCompanyGroup()`.",
				"operationId": "CompaniesController.GetCompanyGroup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:321",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/groups": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Company Groups",
				"description": "Elenco gruppi funzionali disponibili (lookup cmp_groups)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:315` — `CompaniesController.GetCompanyGroups()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetCompanyGroups",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:315",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/list/{cmp_id}": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Companies",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:49` — `CompaniesController.GetCompanies()`.",
				"operationId": "CompaniesController.GetCompanies",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:49",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Company"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/lista_appuntamenti": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "get Lista Appuntamenti",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:264` — `CompaniesController.getListaAppuntamenti()`.",
				"operationId": "CompaniesController.getListaAppuntamenti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:264",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyFilter"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyAppointment"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/lista_stati_appuntamenti": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "get Lista Stati Appuntamenti",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:244` — `CompaniesController.getListaStatiAppuntamenti()`.",
				"operationId": "CompaniesController.getListaStatiAppuntamenti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:244",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Stato"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/listall": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get All Companies",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:66` — `CompaniesController.GetAllCompanies()`.",
				"operationId": "CompaniesController.GetAllCompanies",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:66",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Company"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/logo/{cmp_id}": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Company Logo",
				"description": "GET /companies/logo/{cmp_id} - Logo azienda base64 on-demand (escluso dalle liste per peso)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:90` — `CompaniesController.GetCompanyLogo()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetCompanyLogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:90",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/menulayout": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Menu Layout",
				"description": "GET /companies/menulayout?cmp_id= - Posizione menu portale (left | top)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:122` — `CompaniesController.GetMenuLayout()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetMenuLayout",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:122",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Set Menu Layout",
				"description": "POST /companies/menulayout - body { cmp_id, layout } - imposta la posizione menu portale.\r  'top-center' = menu in alto con voci centrate nell'header.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:131` — `CompaniesController.SetMenuLayout()`.",
				"operationId": "CompaniesController.SetMenuLayout",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:131",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/menuorg": {
			"get": {
				"tags": [
					"Companies"
				],
				"summary": "Get Menu Org",
				"description": "GET /companies/menuorg?cmp_id= - Organizzazione menu personalizzata azienda (JSON, stringa vuota se assente)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:171` — `CompaniesController.GetMenuOrg()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompaniesController.GetMenuOrg",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:171",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Set Menu Org",
				"description": "POST /companies/menuorg - body { cmp_id, menuorg } - imposta l'organizzazione menu (JSON, vuoto per ripristinare lo standard)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:179` — `CompaniesController.SetMenuOrg()`.",
				"operationId": "CompaniesController.SetMenuOrg",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:179",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/save_calendar/{cmp_id}": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "save Company Calendar",
				"description": "public ResponseEntity<?> getCompanyCalendar(Authentication authentication, @PathVariable int cmp_id) throws Exception { AuthenticatedUser UserAuth = authentication != null ? (AuthenticatedUser) authentication.getPrincipal() : null; List<String> data = null; CompanyCalendar res = mMapper.getCompanyCalendar(cmp_id); LogServices.AddLog(false, UserAuth.getPt_id(), UserAuth.getId(), cmp_id, this.mAppname + \".getCompanyCalendar\", cmp_id); return new ResponseEntity<CompanyCalendar>(res, HttpStatus.OK); }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:304` — `CompaniesController.saveCompanyCalendar()`.",
				"operationId": "CompaniesController.saveCompanyCalendar",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:304",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyCalendar"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/setgroup": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Set Company Group",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:327` — `CompaniesController.SetCompanyGroup()`.",
				"operationId": "CompaniesController.SetCompanyGroup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:327",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_group",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/upd": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "Update Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:221` — `CompaniesController.UpdateCompany()`.",
				"operationId": "CompaniesController.UpdateCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:221",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Company"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/companies/upd_appuntamento/{cmp_id}": {
			"post": {
				"tags": [
					"Companies"
				],
				"summary": "upd Appuntamento",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:284` — `CompaniesController.updAppuntamento()`.",
				"operationId": "CompaniesController.updAppuntamento",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompaniesController.java:284",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyAppointment"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/get_companies_service_lst": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "Get Companies Service Lst",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:47` — `CompanyServicesController.GetCompaniesServiceLst()`.",
				"operationId": "CompanyServicesController.GetCompaniesServiceLst",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:47",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyService"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager": {
			"post": {
				"tags": [
					"CompanyServices"
				],
				"summary": "add Service",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:73` — `CompanyServicesController.addService()`.",
				"operationId": "CompanyServicesController.addService",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:73",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyService"
							}
						}
					}
				},
				"responses": {
					"201": {
						"description": "Creato",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/{srv_id}": {
			"put": {
				"tags": [
					"CompanyServices"
				],
				"summary": "update Service",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:86` — `CompanyServicesController.updateService()`.",
				"operationId": "CompanyServicesController.updateService",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:86",
				"parameters": [
					{
						"name": "srv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CompanyService"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"CompanyServices"
				],
				"summary": "delete Service",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:94` — `CompanyServicesController.deleteService()`.",
				"operationId": "CompanyServicesController.deleteService",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:94",
				"parameters": [
					{
						"name": "srv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/{srv_id}/category": {
			"put": {
				"tags": [
					"CompanyServices"
				],
				"summary": "assign Service Category",
				"description": "Assegna (o sgancia, con csc_id null) la categoria a una istanza di servizio\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:204` — `CompanyServicesController.assignServiceCategory()`.",
				"operationId": "CompanyServicesController.assignServiceCategory",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:204",
				"parameters": [
					{
						"name": "srv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/categories": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get Service Categories",
				"description": "─── Categorie servizi (macrogruppi) ──────────────────────────\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:163` — `CompanyServicesController.getServiceCategories()`.",
				"operationId": "CompanyServicesController.getServiceCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:163",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ServiceCategory"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"CompanyServices"
				],
				"summary": "create Service Category",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:179` — `CompanyServicesController.createServiceCategory()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompanyServicesController.createServiceCategory",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:179",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ServiceCategory"
							}
						}
					}
				},
				"responses": {
					"201": {
						"description": "Creato"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/categories/{cscId}": {
			"put": {
				"tags": [
					"CompanyServices"
				],
				"summary": "update Service Category",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:187` — `CompanyServicesController.updateServiceCategory()`.",
				"operationId": "CompanyServicesController.updateServiceCategory",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:187",
				"parameters": [
					{
						"name": "cscId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ServiceCategory"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"CompanyServices"
				],
				"summary": "delete Service Category",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:195` — `CompanyServicesController.deleteServiceCategory()`.",
				"operationId": "CompanyServicesController.deleteServiceCategory",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:195",
				"parameters": [
					{
						"name": "cscId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/list": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get Services",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:57` — `CompanyServicesController.getServices()`.",
				"operationId": "CompanyServicesController.getServices",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:57",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyService"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/list-by-user": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get Services By User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:65` — `CompanyServicesController.getServicesByUser()`.",
				"operationId": "CompanyServicesController.getServicesByUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:65",
				"parameters": [
					{
						"name": "userId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyService"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/presets": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get Service Presets",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:102` — `CompanyServicesController.getServicePresets()`.",
				"operationId": "CompanyServicesController.getServicePresets",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:102",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ServicePreset"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/presets/{presetId}": {
			"put": {
				"tags": [
					"CompanyServices"
				],
				"summary": "update Service Preset",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:144` — `CompanyServicesController.updateServicePreset()`.",
				"operationId": "CompanyServicesController.updateServicePreset",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:144",
				"parameters": [
					{
						"name": "presetId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ServicePreset"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/presets/{presetId}/pages": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get Pages By Preset Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:110` — `CompanyServicesController.getPagesByPresetId()`.",
				"operationId": "CompanyServicesController.getPagesByPresetId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:110",
				"parameters": [
					{
						"name": "presetId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ServicePage"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"put": {
				"tags": [
					"CompanyServices"
				],
				"summary": "update Preset Pages",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:118` — `CompanyServicesController.updatePresetPages()`.",
				"operationId": "CompanyServicesController.updatePresetPages",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:118",
				"parameters": [
					{
						"name": "presetId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PresetPagesRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/manager/services-all": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "get All Services Basic",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:171` — `CompanyServicesController.getAllServicesBasic()`.",
				"operationId": "CompanyServicesController.getAllServicesBasic",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:171",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyService"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/service-presets/associate": {
			"post": {
				"tags": [
					"CompanyServices"
				],
				"summary": "associate Preset To Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:126` — `CompanyServicesController.associatePresetToCompany()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompanyServicesController.associatePresetToCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:126",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/service-presets/company/{companyId}": {
			"get": {
				"tags": [
					"CompanyServices"
				],
				"summary": "Get Service Presets By Company Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:41` — `CompanyServicesController.GetServicePresetsByCompanyId()`.",
				"operationId": "CompanyServicesController.GetServicePresetsByCompanyId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:41",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ServicePreset"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/service-presets/create": {
			"post": {
				"tags": [
					"CompanyServices"
				],
				"summary": "create Service Preset",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:136` — `CompanyServicesController.createServicePreset()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "CompanyServicesController.createServicePreset",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:136",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ServicePreset"
							}
						}
					}
				},
				"responses": {
					"201": {
						"description": "Creato"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company_service/service-presets/disassociate": {
			"post": {
				"tags": [
					"CompanyServices"
				],
				"summary": "disassociate Preset From Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:152` — `CompanyServicesController.disassociatePresetFromCompany()`.",
				"operationId": "CompanyServicesController.disassociatePresetFromCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyServicesController.java:152",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company-gallery/add/{cmp_id}": {
			"post": {
				"tags": [
					"CompanyGallery"
				],
				"summary": "add Gallery Photo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:44` — `CompanyGalleryController.addGalleryPhoto()`.",
				"operationId": "CompanyGalleryController.addGalleryPhoto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:44",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company-gallery/caption/{cg_id}": {
			"patch": {
				"tags": [
					"CompanyGallery"
				],
				"summary": "update Gallery Caption",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:78` — `CompanyGalleryController.updateGalleryCaption()`.",
				"operationId": "CompanyGalleryController.updateGalleryCaption",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:78",
				"parameters": [
					{
						"name": "cg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company-gallery/del/{cg_id}": {
			"delete": {
				"tags": [
					"CompanyGallery"
				],
				"summary": "delete Gallery Photo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:58` — `CompanyGalleryController.deleteGalleryPhoto()`.",
				"operationId": "CompanyGalleryController.deleteGalleryPhoto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:58",
				"parameters": [
					{
						"name": "cg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company-gallery/list/{cmp_id}": {
			"get": {
				"tags": [
					"CompanyGallery"
				],
				"summary": "list Gallery",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:35` — `CompanyGalleryController.listGallery()`.",
				"operationId": "CompanyGalleryController.listGallery",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:35",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CompanyGallery"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/company-gallery/reorder/{cg_id}": {
			"patch": {
				"tags": [
					"CompanyGallery"
				],
				"summary": "reorder Gallery Photo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:67` — `CompanyGalleryController.reorderGalleryPhoto()`.",
				"operationId": "CompanyGalleryController.reorderGalleryPhoto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CompanyGalleryController.java:67",
				"parameters": [
					{
						"name": "cg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/components/add/{wf_id}": {
			"post": {
				"tags": [
					"Components"
				],
				"summary": "Insert Component",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:75` — `ComponentsController.InsertComponent()`.",
				"operationId": "ComponentsController.InsertComponent",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:75",
				"parameters": [
					{
						"name": "wf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Component"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/components/del/{cmp_id}": {
			"delete": {
				"tags": [
					"Components"
				],
				"summary": "Delete Component",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:87` — `ComponentsController.DeleteComponent()`.",
				"operationId": "ComponentsController.DeleteComponent",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:87",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/components/get/{cmp_id}": {
			"get": {
				"tags": [
					"Components"
				],
				"summary": "Get Component",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:52` — `ComponentsController.GetComponent()`.",
				"operationId": "ComponentsController.GetComponent",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:52",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Component"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/components/list": {
			"get": {
				"tags": [
					"Components"
				],
				"summary": "Get Components",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:36` — `ComponentsController.GetComponents()`.",
				"operationId": "ComponentsController.GetComponents",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:36",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Component"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/components/upd": {
			"post": {
				"tags": [
					"Components"
				],
				"summary": "Update Coponent",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:63` — `ComponentsController.UpdateCoponent()`.",
				"operationId": "ComponentsController.UpdateCoponent",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ComponentsController.java:63",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Component"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/add": {
			"post": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Insert Condo Unit",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:54` — `CondoUnitsController.InsertCondoUnit()`.",
				"operationId": "CondoUnitsController.InsertCondoUnit",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:54",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CondoUnit"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/bycustomer": {
			"get": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Get Condo Units By Customer",
				"description": "Unità di un condomino (riquadro nel form cliente)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:117` — `CondoUnitsController.GetCondoUnitsByCustomer()`.",
				"operationId": "CondoUnitsController.GetCondoUnitsByCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:117",
				"parameters": [
					{
						"name": "cst_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CondoUnit"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/del/{unit_id}": {
			"delete": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Delete Condo Unit",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:70` — `CondoUnitsController.DeleteCondoUnit()`.",
				"operationId": "CondoUnitsController.DeleteCondoUnit",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:70",
				"parameters": [
					{
						"name": "unit_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/get": {
			"get": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Get Condo Unit",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:48` — `CondoUnitsController.GetCondoUnit()`.",
				"operationId": "CondoUnitsController.GetCondoUnit",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:48",
				"parameters": [
					{
						"name": "unit_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CondoUnit"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/list": {
			"get": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Get Condo Units",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:36` — `CondoUnitsController.GetCondoUnits()`.",
				"operationId": "CondoUnitsController.GetCondoUnits",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:36",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CondoUnit"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/members": {
			"get": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Get Condo Unit Members",
				"description": "Membri di una unità (per dialog e scelta referente)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:79` — `CondoUnitsController.GetCondoUnitMembers()`.",
				"operationId": "CondoUnitsController.GetCondoUnitMembers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:79",
				"parameters": [
					{
						"name": "unit_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CondoUnitMember"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/referenti": {
			"get": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Get Condo Referenti",
				"description": "Referenti dell'azienda (per filtrare gli invitati delle assemblee)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:96` — `CondoUnitsController.GetCondoReferenti()`.",
				"operationId": "CondoUnitsController.GetCondoReferenti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:96",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "integer",
										"format": "int32"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/setreferente": {
			"post": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Set Condo Unit Referente",
				"description": "Cambio referente (anche lato condomino): il referente rappresenta l'unità in assemblea\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:86` — `CondoUnitsController.SetCondoUnitReferente()`.",
				"operationId": "CondoUnitsController.SetCondoUnitReferente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:86",
				"parameters": [
					{
						"name": "unit_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cst_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/condounits/upd": {
			"post": {
				"tags": [
					"CondoUnits"
				],
				"summary": "Update Condo Unit",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:62` — `CondoUnitsController.UpdateCondoUnit()`.",
				"operationId": "CondoUnitsController.UpdateCondoUnit",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CondoUnitsController.java:62",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CondoUnit"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/by_contract/{contract_id}": {
			"get": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "get By Contract",
				"description": "Tutti i cantieri associati a un contratto.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:51` — `ContrattoCantiereQuotaController.getByContract()`.",
				"operationId": "ContrattoCantiereQuotaController.getByContract",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:51",
				"parameters": [
					{
						"name": "contract_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ContrattoCantiereQuota"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/by_worksite/{ws_id}": {
			"get": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "get By Worksite",
				"description": "Contratto associato al cantiere (null se non associato).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:42` — `ContrattoCantiereQuotaController.getByWorksite()`.",
				"operationId": "ContrattoCantiereQuotaController.getByWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:42",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ContrattoCantiereQuota"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/del_by_worksite/{ws_id}": {
			"delete": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "delete By Worksite",
				"description": "Elimina l'associazione di un cantiere (per sostituire il contratto).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:100` — `ContrattoCantiereQuotaController.deleteByWorksite()`.",
				"operationId": "ContrattoCantiereQuotaController.deleteByWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:100",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/del/{ccq_id}": {
			"delete": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "delete Quota",
				"description": "Elimina un'associazione per id.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:91` — `ContrattoCantiereQuotaController.deleteQuota()`.",
				"operationId": "ContrattoCantiereQuotaController.deleteQuota",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:91",
				"parameters": [
					{
						"name": "ccq_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/save": {
			"post": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "save Quota",
				"description": "Crea o aggiorna l'associazione cantiere-contratto.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:81` — `ContrattoCantiereQuotaController.saveQuota()`.",
				"operationId": "ContrattoCantiereQuotaController.saveQuota",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:81",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/ContrattoCantiereQuota"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/sum_by_contract/{contract_id}": {
			"get": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "sum By Contract",
				"description": "Somma importi assegnati a un contratto.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:60` — `ContrattoCantiereQuotaController.sumByContract()`.",
				"operationId": "ContrattoCantiereQuotaController.sumByContract",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:60",
				"parameters": [
					{
						"name": "contract_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/sum_figli_nipoti/{ws_level_id}": {
			"get": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "sum Figli Nipoti",
				"description": "Somma importi contratti figli/nipoti di un cantiere principale.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:71` — `ContrattoCantiereQuotaController.sumFigliNipoti()`.",
				"operationId": "ContrattoCantiereQuotaController.sumFigliNipoti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:71",
				"parameters": [
					{
						"name": "ws_level_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/contratto_quota/validate": {
			"post": {
				"tags": [
					"ContrattoCantiereQuota"
				],
				"summary": "validate",
				"description": "Endpoint di validazione: chiamato dal FE prima di salvare per verificare\r sia la somma quote del contratto, sia il vincolo gerarchia figli/nipoti.\r Body: {ccq_ws_id, ccq_contract_id, ccq_importo_assegnato, totaleContratto, importoContrattoPrincipale}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:113` — `ContrattoCantiereQuotaController.validate()`.",
				"operationId": "ContrattoCantiereQuotaController.validate",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ContrattoCantiereQuotaController.java:113",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-attachments/del/{caId}": {
			"delete": {
				"tags": [
					"CustomerAttachments"
				],
				"summary": "Delete Attachment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:114` — `CustomerAttachmentsController.DeleteAttachment()`.",
				"operationId": "CustomerAttachmentsController.DeleteAttachment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:114",
				"parameters": [
					{
						"name": "caId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-attachments/download/{caId}": {
			"get": {
				"tags": [
					"CustomerAttachments"
				],
				"summary": "Download Attachment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:81` — `CustomerAttachmentsController.DownloadAttachment()`.",
				"operationId": "CustomerAttachmentsController.DownloadAttachment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:81",
				"parameters": [
					{
						"name": "caId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-attachments/list/{cstId}": {
			"get": {
				"tags": [
					"CustomerAttachments"
				],
				"summary": "Get Attachments",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:46` — `CustomerAttachmentsController.GetAttachments()`.",
				"operationId": "CustomerAttachmentsController.GetAttachments",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:46",
				"parameters": [
					{
						"name": "cstId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CustomerAttachment"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-attachments/upload/{cstId}": {
			"post": {
				"tags": [
					"CustomerAttachments"
				],
				"summary": "Upload Attachment",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:55` — `CustomerAttachmentsController.UploadAttachment()`.",
				"operationId": "CustomerAttachmentsController.UploadAttachment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerAttachmentsController.java:55",
				"parameters": [
					{
						"name": "cstId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CustomerAttachment"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-communications/add/{cstId}": {
			"post": {
				"tags": [
					"CustomerCommunications"
				],
				"summary": "Add Communication",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:62` — `CustomerCommunicationsController.AddCommunication()`.",
				"operationId": "CustomerCommunicationsController.AddCommunication",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:62",
				"parameters": [
					{
						"name": "cstId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CustomerCommunication"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-communications/all/{cmpId}": {
			"get": {
				"tags": [
					"CustomerCommunications"
				],
				"summary": "Get All Communications",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:35` — `CustomerCommunicationsController.GetAllCommunications()`.",
				"operationId": "CustomerCommunicationsController.GetAllCommunications",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:35",
				"parameters": [
					{
						"name": "cmpId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "date_from",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "date_to",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CustomerCommunication"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-communications/del/{ccId}": {
			"delete": {
				"tags": [
					"CustomerCommunications"
				],
				"summary": "Delete Communication",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:95` — `CustomerCommunicationsController.DeleteCommunication()`.",
				"operationId": "CustomerCommunicationsController.DeleteCommunication",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:95",
				"parameters": [
					{
						"name": "ccId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-communications/list/{cstId}": {
			"get": {
				"tags": [
					"CustomerCommunications"
				],
				"summary": "Get Communications",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:53` — `CustomerCommunicationsController.GetCommunications()`.",
				"operationId": "CustomerCommunicationsController.GetCommunications",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:53",
				"parameters": [
					{
						"name": "cstId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CustomerCommunication"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customer-communications/upd/{ccId}": {
			"put": {
				"tags": [
					"CustomerCommunications"
				],
				"summary": "Update Communication",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:79` — `CustomerCommunicationsController.UpdateCommunication()`.",
				"operationId": "CustomerCommunicationsController.UpdateCommunication",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomerCommunicationsController.java:79",
				"parameters": [
					{
						"name": "ccId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/CustomerCommunication"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/add": {
			"post": {
				"tags": [
					"Customers"
				],
				"summary": "Insert Customer",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:66` — `CustomersController.InsertCustomer()`.",
				"operationId": "CustomersController.InsertCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:66",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Customer"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/del": {
			"post": {
				"tags": [
					"Customers"
				],
				"summary": "Delete Customer",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:88` — `CustomersController.DeleteCustomer()`.",
				"operationId": "CustomersController.DeleteCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:88",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "integer",
								"format": "int32"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/export-excel": {
			"get": {
				"tags": [
					"Customers"
				],
				"summary": "Export Excel",
				"description": "GET /customers/export-excel - Esporta i clienti in Excel (.xlsx)\r Se cst_type è specificato, esporta solo quel tipo con colonne specifiche.\r Tipo 11 = Persona trasportata (colonne diverse)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:104` — `CustomersController.ExportExcel()`.",
				"operationId": "CustomersController.ExportExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:104",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "cst_type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string",
									"format": "byte"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/get": {
			"get": {
				"tags": [
					"Customers"
				],
				"summary": "Get Customer",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:55` — `CustomersController.GetCustomer()`.",
				"operationId": "CustomersController.GetCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:55",
				"parameters": [
					{
						"name": "cst_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Customer"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/list": {
			"get": {
				"tags": [
					"Customers"
				],
				"summary": "Get Customers",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:38` — `CustomersController.GetCustomers()`.",
				"operationId": "CustomersController.GetCustomers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:38",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Customer"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/customers/upd": {
			"post": {
				"tags": [
					"Customers"
				],
				"summary": "Update Customer",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:77` — `CustomersController.UpdateCustomer()`.",
				"operationId": "CustomersController.UpdateCustomer",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/CustomersController.java:77",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Customer"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/calendar/{ws_id}/{cmp_id}": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Get Daily Report Calendar",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:104` — `DailyReportController.GetDailyReportCalendar()`.",
				"operationId": "DailyReportController.GetDailyReportCalendar",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:104",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "year",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "month",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/DailyReportCalendar"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/del/{wsrerp_id}": {
			"delete": {
				"tags": [
					"DailyReport"
				],
				"summary": "Delete Daily Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:92` — `DailyReportController.DeleteDailyReport()`.",
				"operationId": "DailyReportController.DeleteDailyReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:92",
				"parameters": [
					{
						"name": "wsrerp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/export/excel": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Export Excel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:142` — `DailyReportController.ExportExcel()`.",
				"operationId": "DailyReportController.ExportExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:142",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date_from",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "date_to",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/export/pdf": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Export Pdf",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:167` — `DailyReportController.ExportPdf()`.",
				"operationId": "DailyReportController.ExportPdf",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:167",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date_from",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "date_to",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/find": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Find Daily Report By Key",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:133` — `DailyReportController.FindDailyReportByKey()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DailyReportController.FindDailyReportByKey",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:133",
				"parameters": [
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "date",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/get/{wsrerp_id}": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Get Daily Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:66` — `DailyReportController.GetDailyReport()`.",
				"operationId": "DailyReportController.GetDailyReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:66",
				"parameters": [
					{
						"name": "wsrerp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DailyReport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/list": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Get Daily Report List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:45` — `DailyReportController.GetDailyReportList()`.",
				"operationId": "DailyReportController.GetDailyReportList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:45",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date_from",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "date_to",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/DailyReport"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/prefill/{ws_id}/{cmp_id}": {
			"get": {
				"tags": [
					"DailyReport"
				],
				"summary": "Get Daily Report Prefill",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:119` — `DailyReportController.GetDailyReportPrefill()`.",
				"operationId": "DailyReportController.GetDailyReportPrefill",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:119",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "date",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/DailyReport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/daily-report/save/{cmp_id}": {
			"post": {
				"tags": [
					"DailyReport"
				],
				"summary": "Save Daily Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:78` — `DailyReportController.SaveDailyReport()`.",
				"operationId": "DailyReportController.SaveDailyReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DailyReportController.java:78",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DailyReport"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/detached/add": {
			"post": {
				"tags": [
					"Detached"
				],
				"summary": "Insert Detached",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:82` — `DetachedController.InsertDetached()`.",
				"operationId": "DetachedController.InsertDetached",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:82",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Detached"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/detached/del/{cmp_ws_col_id}": {
			"delete": {
				"tags": [
					"Detached"
				],
				"summary": "Delete Detached",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:96` — `DetachedController.DeleteDetached()`.",
				"operationId": "DetachedController.DeleteDetached",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:96",
				"parameters": [
					{
						"name": "cmp_ws_col_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/detached/get": {
			"get": {
				"tags": [
					"Detached"
				],
				"summary": "Get Detached",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:58` — `DetachedController.GetDetached()`.",
				"operationId": "DetachedController.GetDetached",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:58",
				"parameters": [
					{
						"name": "cmp_ws_col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Detached"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/detached/list": {
			"get": {
				"tags": [
					"Detached"
				],
				"summary": "Get Detached",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:42` — `DetachedController.GetDetached()`.",
				"operationId": "DetachedController.GetDetached.2",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:42",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Detached"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/detached/upd": {
			"post": {
				"tags": [
					"Detached"
				],
				"summary": "Update Detached",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:70` — `DetachedController.UpdateDetached()`.",
				"operationId": "DetachedController.UpdateDetached",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DetachedController.java:70",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Detached"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/disability-types/add/{cmp_id}": {
			"post": {
				"tags": [
					"DisabilityTypes"
				],
				"summary": "Insert Disability Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:45` — `DisabilityTypesController.InsertDisabilityType()`.",
				"operationId": "DisabilityTypesController.InsertDisabilityType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:45",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DisabilityType"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/disability-types/del/{dt_id}": {
			"delete": {
				"tags": [
					"DisabilityTypes"
				],
				"summary": "Delete Disability Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:63` — `DisabilityTypesController.DeleteDisabilityType()`.",
				"operationId": "DisabilityTypesController.DeleteDisabilityType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:63",
				"parameters": [
					{
						"name": "dt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/disability-types/list": {
			"get": {
				"tags": [
					"DisabilityTypes"
				],
				"summary": "Get Disability Types",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:35` — `DisabilityTypesController.GetDisabilityTypes()`.",
				"operationId": "DisabilityTypesController.GetDisabilityTypes",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:35",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/DisabilityType"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/disability-types/upd/{dt_id}": {
			"put": {
				"tags": [
					"DisabilityTypes"
				],
				"summary": "Update Disability Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:54` — `DisabilityTypesController.UpdateDisabilityType()`.",
				"operationId": "DisabilityTypesController.UpdateDisabilityType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DisabilityTypesController.java:54",
				"parameters": [
					{
						"name": "dt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DisabilityType"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/add": {
			"post": {
				"tags": [
					"Doctors"
				],
				"summary": "Insert Doctor",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:76` — `DoctorsController.InsertDoctor()`.",
				"operationId": "DoctorsController.InsertDoctor",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:76",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Doctor"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/del/{dc_id}": {
			"delete": {
				"tags": [
					"Doctors"
				],
				"summary": "Delete Doctor",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:88` — `DoctorsController.DeleteDoctor()`.",
				"operationId": "DoctorsController.DeleteDoctor",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:88",
				"parameters": [
					{
						"name": "dc_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/get": {
			"get": {
				"tags": [
					"Doctors"
				],
				"summary": "Get Doctor",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:53` — `DoctorsController.GetDoctor()`.",
				"operationId": "DoctorsController.GetDoctor",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:53",
				"parameters": [
					{
						"name": "dc_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Doctor"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/list": {
			"get": {
				"tags": [
					"Doctors"
				],
				"summary": "Get Doctors",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:37` — `DoctorsController.GetDoctors()`.",
				"operationId": "DoctorsController.GetDoctors",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:37",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Doctor"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/setuser/{usr_id}/{dc_id}": {
			"get": {
				"tags": [
					"Doctors"
				],
				"summary": "Set Doctor User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:98` — `DoctorsController.SetDoctorUser()`.",
				"operationId": "DoctorsController.SetDoctorUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:98",
				"parameters": [
					{
						"name": "usr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dc_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/doctors/upd": {
			"post": {
				"tags": [
					"Doctors"
				],
				"summary": "Update Doctor",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:64` — `DoctorsController.UpdateDoctor()`.",
				"operationId": "DoctorsController.UpdateDoctor",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DoctorsController.java:64",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Doctor"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documentary-download/async": {
			"get": {
				"tags": [
					"DocumentaryDownload"
				],
				"summary": "download Async",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentaryDownloadController.java:42` — `DocumentaryDownloadController.downloadAsync()`.",
				"operationId": "DocumentaryDownloadController.downloadAsync",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentaryDownloadController.java:42",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "drflId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mode",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "file"
						}
					},
					{
						"name": "cmpId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "label",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/{wsd_id}/archive": {
			"put": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "archive Document",
				"description": "Archivia (active=false) o ripristina (active=true) un documento.\r Modifica solo il flag wsd_active; il file fisico resta nella documentary.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:96` — `DocumentiGeneratoreController.archiveDocument()`.",
				"operationId": "DocumentiGeneratoreController.archiveDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:96",
				"parameters": [
					{
						"name": "wsd_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "active",
						"in": "query",
						"required": true,
						"schema": {
							"type": "boolean"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/aziendali/carica": {
			"post": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "carica Aziendale",
				"description": "Upload di un documento aziendale (Carta Intestata / SOA / Camera Commercio / DURC).\r Multipart: cmp_id, wsdty_id, date_document, valid_until?, soa_categories?, file.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:208` — `DocumentiGeneratoreController.caricaAziendale()`.",
				"operationId": "DocumentiGeneratoreController.caricaAziendale",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:208",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "date_document",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "valid_until",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "soa_categories",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GeneraDocumentoResponse"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/aziendali/classifiche": {
			"get": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "classifiche",
				"description": "Lookup classifiche (ga_classifiche).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:172` — `DocumentiGeneratoreController.classifiche()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiGeneratoreController.classifiche",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:172",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/aziendali/soa/categorie": {
			"get": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "soa Categorie Azienda",
				"description": "Categorie SOA dell'azienda con classifica corrente (per popolare il form upload SOA).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:160` — `DocumentiGeneratoreController.soaCategorieAzienda()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiGeneratoreController.soaCategorieAzienda",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:160",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/cantieri/carte-disponibili": {
			"get": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "carte Intestate Disponibili",
				"description": "Carte intestate caricate per l'azienda (per dropdown 'Applica carta intestata' nel wizard cantiere).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:166` — `DocumentiGeneratoreController.carteIntestateDisponibili()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiGeneratoreController.carteIntestateDisponibili",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:166",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/carica": {
			"post": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "carica",
				"description": "Carica un documento gia' pronto (no template, no conversione).\r Multipart: file + parametri metadati. Restituisce wsd_id + drfl_id.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:108` — `DocumentiGeneratoreController.carica()`.",
				"operationId": "DocumentiGeneratoreController.carica",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:108",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "date_document",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "amount",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number"
						}
					},
					{
						"name": "amount_security",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number"
						}
					},
					{
						"name": "description",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "input_values",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GeneraDocumentoResponse"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/categorie": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:40` — `DocumentiCatalogoController.categories()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.categories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:40",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/placeholder": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "placeholders",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:70` — `DocumentiCatalogoController.placeholders()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.placeholders",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:70",
				"parameters": [
					{
						"name": "category",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/ruoli": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "roles",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:55` — `DocumentiCatalogoController.roles()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.roles",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:55",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/tipi": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "types",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:45` — `DocumentiCatalogoController.types()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.types",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:45",
				"parameters": [
					{
						"name": "wsdc_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/tipi/{wsdty_id}": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "type By Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:50` — `DocumentiCatalogoController.typeById()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.typeById",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:50",
				"parameters": [
					{
						"name": "wsdty_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/tipi/{wsdty_id}/categorie": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "categories By Type",
				"description": "Sezioni placeholder (categorie editor) ammesse per una tipologia documento. Vuoto = tutte.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:77` — `DocumentiCatalogoController.categoriesByType()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.categoriesByType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:77",
				"parameters": [
					{
						"name": "wsdty_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/tipi/{wsdty_id}/input-fields": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "input Fields By Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:65` — `DocumentiCatalogoController.inputFieldsByType()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.inputFieldsByType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:65",
				"parameters": [
					{
						"name": "wsdty_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/catalogo/tipi/{wsdty_id}/ruoli": {
			"get": {
				"tags": [
					"DocumentiCatalogo"
				],
				"summary": "roles By Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:60` — `DocumentiCatalogoController.rolesByType()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiCatalogoController.rolesByType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiCatalogoController.java:60",
				"parameters": [
					{
						"name": "wsdty_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/committente/carica": {
			"post": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "carica Committente",
				"description": "Upload documento dal committente (categoria 3, legato a cantiere).\r Multipart: cmp_id, ws_id, wsdty_id, date_document, amount?, amount_security?, extras?, file.\r Salvato in documentary sotto Cantiere/Documenti dal Committente/{tipo}.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:182` — `DocumentiGeneratoreController.caricaCommittente()`.",
				"operationId": "DocumentiGeneratoreController.caricaCommittente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:182",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "date_document",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "amount",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number"
						}
					},
					{
						"name": "amount_security",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number"
						}
					},
					{
						"name": "extras",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GeneraDocumentoResponse"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/convocazioni": {
			"get": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "list Convocazioni",
				"description": "Lettere di convocazione attive di un'assemblea (per download).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:150` — `DocumentiGeneratoreController.listConvocazioni()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiGeneratoreController.listConvocazioni",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:150",
				"parameters": [
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/convocazioni/genera": {
			"post": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "genera Convocazioni",
				"description": "Genera/rigenera le lettere di convocazione per tutti i referenti dell'assemblea. Ritorna il numero di lettere.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:137` — `DocumentiGeneratoreController.generaConvocazioni()`.",
				"operationId": "DocumentiGeneratoreController.generaConvocazioni",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:137",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "asm_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/genera": {
			"post": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "genera",
				"description": "Genera il documento (e gli eventuali allegati + lettera) per il tipo richiesto.\r Body: GeneraDocumentoRequest. Ritorna GeneraDocumentoResponse.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:49` — `DocumentiGeneratoreController.genera()`.",
				"operationId": "DocumentiGeneratoreController.genera",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:49",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/GeneraDocumentoRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/GeneraDocumentoResponse"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/lista": {
			"get": {
				"tags": [
					"DocumentiGeneratore"
				],
				"summary": "list",
				"description": "Lista documenti con filtri opzionali (tutti gestiti BE via PG function ws_doc_list).\r Senza filtri = tutti i documenti della company.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:70` — `DocumentiGeneratoreController.list()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiGeneratoreController.list",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiGeneratoreController.java:70",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "data_da",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "data_a",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "wsdc_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_archived",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "wsd_data_ins"
						}
					},
					{
						"name": "order_dir",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "desc"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/template": {
			"get": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "list",
				"description": "Elenco template di un'impresa, filtrabile per tipo/ruolo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:46` — `DocumentiTemplateController.list()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiTemplateController.list",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:46",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdtr_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/template/{wsdt_id}": {
			"get": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "by Id",
				"description": "Template singolo per id.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:56` — `DocumentiTemplateController.byId()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiTemplateController.byId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:56",
				"parameters": [
					{
						"name": "wsdt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"put": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "update",
				"description": "Update mirato di un template esistente per id.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:85` — `DocumentiTemplateController.update()`.",
				"operationId": "DocumentiTemplateController.update",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:85",
				"parameters": [
					{
						"name": "wsdt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WsDocTemplate"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "delete",
				"description": "Soft delete (wsdt_active = FALSE).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:98` — `DocumentiTemplateController.delete()`.",
				"operationId": "DocumentiTemplateController.delete",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:98",
				"parameters": [
					{
						"name": "wsdt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/template/by_keys": {
			"get": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "by Keys",
				"description": "Template attivo per (impresa, tipo, ruolo) — null se non esiste.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:62` — `DocumentiTemplateController.byKeys()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "DocumentiTemplateController.byKeys",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:62",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdty_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsdtr_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/documenti/template/save": {
			"post": {
				"tags": [
					"DocumentiTemplate"
				],
				"summary": "save",
				"description": "Salva (insert o update) un template.\r Se esiste gia' un template attivo per la stessa coppia (cmp_id, wsdty_id, wsdtr_id),\r lo aggiorna. La conferma di sovrascrittura va gestita dal FE prima della chiamata.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:75` — `DocumentiTemplateController.save()`.",
				"operationId": "DocumentiTemplateController.save",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/DocumentiTemplateController.java:75",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WsDocTemplate"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/add": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Insert Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:85` — `EmployeesController.InsertEmployee()`.",
				"operationId": "EmployeesController.InsertEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:85",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/EmployeeWorkRelationship"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/del/{emp_id}": {
			"delete": {
				"tags": [
					"Employees"
				],
				"summary": "Delete Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:99` — `EmployeesController.DeleteEmployee()`.",
				"operationId": "EmployeesController.DeleteEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:99",
				"parameters": [
					{
						"name": "emp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/get": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:61` — `EmployeesController.GetEmployee()`.",
				"operationId": "EmployeesController.GetEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:61",
				"parameters": [
					{
						"name": "emp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Employee"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/list": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Employees",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:43` — `EmployeesController.GetEmployees()`.",
				"operationId": "EmployeesController.GetEmployees",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:43",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "filter_wr_status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "filter_role_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Employee"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/listalocationemployee": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get View Location Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:250` — `EmployeesController.GetViewLocationEmployee()`.",
				"operationId": "EmployeesController.GetViewLocationEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:250",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Location"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/listaworksiteemployee": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get View Worksite Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:273` — `EmployeesController.GetViewWorksiteEmployee()`.",
				"operationId": "EmployeesController.GetViewWorksiteEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:273",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/printlivel": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Print Livel",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:296` — `EmployeesController.PrintLivel()`.",
				"operationId": "EmployeesController.PrintLivel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:296",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PrintLivelRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StringObject"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/saveasslocationemployee": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Insert Location Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:261` — `EmployeesController.InsertLocationEmployee()`.",
				"operationId": "EmployeesController.InsertLocationEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:261",
				"parameters": [
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Location"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/saveassworksiteemployee": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Insert Worksite Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:284` — `EmployeesController.InsertWorksiteEmployee()`.",
				"operationId": "EmployeesController.InsertWorksiteEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:284",
				"parameters": [
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Worksite"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/setfolderid/{emp_id}/{folder_id}": {
			"put": {
				"tags": [
					"Employees"
				],
				"summary": "Set Employee Folder Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:121` — `EmployeesController.SetEmployeeFolderId()`.",
				"operationId": "EmployeesController.SetEmployeeFolderId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:121",
				"parameters": [
					{
						"name": "emp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "folder_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/setuser/{usr_id}/{emp_id}": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Set Employee User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:110` — `EmployeesController.SetEmployeeUser()`.",
				"operationId": "EmployeesController.SetEmployeeUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:110",
				"parameters": [
					{
						"name": "usr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "emp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/upd": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Update Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:73` — `EmployeesController.UpdateEmployee()`.",
				"operationId": "EmployeesController.UpdateEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:73",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/EmployeeWorkRelationship"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships_level/add": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Add Work Relationship Level",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:215` — `EmployeesController.AddWorkRelationshipLevel()`.",
				"operationId": "EmployeesController.AddWorkRelationshipLevel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:215",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorkRelationshipLevel"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships_level/del/{cwrl_id}": {
			"delete": {
				"tags": [
					"Employees"
				],
				"summary": "Delete Work Relationship Level",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:231` — `EmployeesController.DeleteWorkRelationshipLevel()`.",
				"operationId": "EmployeesController.DeleteWorkRelationshipLevel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:231",
				"parameters": [
					{
						"name": "cwrl_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "boolean"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships_level/list": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Work Relationship Level",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:196` — `EmployeesController.GetWorkRelationshipLevel()`.",
				"operationId": "EmployeesController.GetWorkRelationshipLevel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:196",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorkRelationshipLevel"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships_level/list/{cmp_id}": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Work Relationship Level By Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:207` — `EmployeesController.GetWorkRelationshipLevelByCompany()`.",
				"operationId": "EmployeesController.GetWorkRelationshipLevelByCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:207",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorkRelationshipLevel"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships_level/upd": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Update Work Relationship Level",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:223` — `EmployeesController.UpdateWorkRelationshipLevel()`.",
				"operationId": "EmployeesController.UpdateWorkRelationshipLevel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:223",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorkRelationshipLevel"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/add": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Insert Employee Work Relationship",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:184` — `EmployeesController.InsertEmployeeWorkRelationship()`.",
				"operationId": "EmployeesController.InsertEmployeeWorkRelationship",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:184",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorkRelationship"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/close/{em_id}": {
			"delete": {
				"tags": [
					"Employees"
				],
				"summary": "Chiudi Rapporto",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:239` — `EmployeesController.ChiudiRapporto()`.",
				"operationId": "EmployeesController.ChiudiRapporto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:239",
				"parameters": [
					{
						"name": "em_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/get_active/{em_id}": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Employee Work Relationship Active",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:160` — `EmployeesController.GetEmployeeWorkRelationshipActive()`.",
				"operationId": "EmployeesController.GetEmployeeWorkRelationshipActive",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:160",
				"parameters": [
					{
						"name": "em_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorkRelationship"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/get/{cwr_id}": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Employee Work Relationship",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:148` — `EmployeesController.GetEmployeeWorkRelationship()`.",
				"operationId": "EmployeesController.GetEmployeeWorkRelationship",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:148",
				"parameters": [
					{
						"name": "cwr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorkRelationship"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/list": {
			"get": {
				"tags": [
					"Employees"
				],
				"summary": "Get Employee Work Relationships",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:132` — `EmployeesController.GetEmployeeWorkRelationships()`.",
				"operationId": "EmployeesController.GetEmployeeWorkRelationships",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:132",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorkRelationship"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/employees/work_relationships/upd": {
			"post": {
				"tags": [
					"Employees"
				],
				"summary": "Update Employee Work Relationship",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:172` — `EmployeesController.UpdateEmployeeWorkRelationship()`.",
				"operationId": "EmployeesController.UpdateEmployeeWorkRelationship",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/EmployeesController.java:172",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorkRelationship"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/export-jobs/{id}": {
			"get": {
				"tags": [
					"ExportJob"
				],
				"summary": "get Job",
				"description": "Stato di un singolo job (solo se appartiene all'utente).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:55` — `ExportJobController.getJob()`.",
				"operationId": "ExportJobController.getJob",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:55",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"ExportJob"
				],
				"summary": "delete Job",
				"description": "Elimina un job e il relativo file (solo se appartiene all'utente).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:66` — `ExportJobController.deleteJob()`.",
				"operationId": "ExportJobController.deleteJob",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:66",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/export-jobs/Accept=application/json": {
			"get": {
				"tags": [
					"ExportJob"
				],
				"summary": "list My Jobs",
				"description": "Job dell'utente autenticato per l'azienda indicata, dal piu` recente.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:46` — `ExportJobController.listMyJobs()`.",
				"operationId": "ExportJobController.listMyJobs",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ExportJobController.java:46",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ExportJob"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/favorites/services": {
			"get": {
				"tags": [
					"Favorites"
				],
				"summary": "get Favorites",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:38` — `FavoritesController.getFavorites()`.",
				"operationId": "FavoritesController.getFavorites",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:38",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ServiceFavorite"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Favorites"
				],
				"summary": "add Favorite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:45` — `FavoritesController.addFavorite()`.",
				"operationId": "FavoritesController.addFavorite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:45",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"201": {
						"description": "Creato"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"Favorites"
				],
				"summary": "remove Favorite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:52` — `FavoritesController.removeFavorite()`.",
				"operationId": "FavoritesController.removeFavorite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/FavoritesController.java:52",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/add/{cmp_id}": {
			"post": {
				"tags": [
					"Gare"
				],
				"summary": "Insert Gara",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:91` — `GareController.InsertGara()`.",
				"operationId": "GareController.InsertGara",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:91",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Gara"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/anni_gare/{cmp_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Anni Gare",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:119` — `GareController.GetAnniGare()`.",
				"operationId": "GareController.GetAnniGare",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:119",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "integer",
										"format": "int32"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/categorie_list/{cmp_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Categorie List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:179` — `GareController.GetCategorieList()`.",
				"operationId": "GareController.GetCategorieList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:179",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Categoria"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/classifiche_list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Classifiche List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:169` — `GareController.GetClassificheList()`.",
				"operationId": "GareController.GetClassificheList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:169",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Classifica"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/del/{lot_id}": {
			"delete": {
				"tags": [
					"Gare"
				],
				"summary": "Delete Lotto",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:105` — `GareController.DeleteLotto()`.",
				"operationId": "GareController.DeleteLotto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:105",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "lot_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/forma_partecipazione_list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Forma Partecipazione List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:149` — `GareController.GetFormaPartecipazioneList()`.",
				"operationId": "GareController.GetFormaPartecipazioneList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:149",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FormaPartecipazione"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/gare_a_riferimento_list/{cmp_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Garea Riferimento List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:191` — `GareController.GetGareaRiferimentoList()`.",
				"operationId": "GareController.GetGareaRiferimentoList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:191",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Gara"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/genera_pdf_gara_dettaglio/{lot_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Gara Dettaglio PDF",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:252` — `GareController.GetGaraDettaglioPDF()`.",
				"operationId": "GareController.GetGaraDettaglioPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:252",
				"parameters": [
					{
						"name": "lot_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmpId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "label",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/get_last_info_gara/{cmp_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Last Info Gara",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:241` — `GareController.GetLastInfoGara()`.",
				"operationId": "GareController.GetLastInfoGara",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:241",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/get/{lot_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Gara",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:79` — `GareController.GetGara()`.",
				"operationId": "GareController.GetGara",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:79",
				"parameters": [
					{
						"name": "lot_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Gara"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/inviti_a_riferimento_list/{cmp_id}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Invitia Riferimento List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:203` — `GareController.GetInvitiaRiferimentoList()`.",
				"operationId": "GareController.GetInvitiaRiferimentoList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:203",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Gara"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Gare List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:48` — `GareController.GetGareList()`.",
				"operationId": "GareController.GetGareList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:48",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataAggDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataAggA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "tipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "customer",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "indirizzoStazione",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "importoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number",
							"format": "double",
							"default": "-1"
						}
					},
					{
						"name": "importoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number",
							"format": "double",
							"default": "-1"
						}
					},
					{
						"name": "categoria",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Gara"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/modalita_aggiudicazione_list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Modalita Aggiudicazione List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:139` — `GareController.GetModalitaAggiudicazioneList()`.",
				"operationId": "GareController.GetModalitaAggiudicazioneList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:139",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ModalitaAggiudicazione"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/next_step/{cmp_id}/{lot_id}/{lot_stato}/{action}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Next Step",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:215` — `GareController.NextStep()`.",
				"operationId": "GareController.NextStep",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:215",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "lot_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "lot_stato",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "action",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/previous_step/{lot_id}/{lot_stato}": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Previous Step",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:228` — `GareController.PreviousStep()`.",
				"operationId": "GareController.PreviousStep",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:228",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "lot_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "lot_stato",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/tipo_gara_list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Tipo Gara List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:129` — `GareController.GetTipoGaraList()`.",
				"operationId": "GareController.GetTipoGaraList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:129",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TipoGara"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/tipo_partecipazione_list": {
			"get": {
				"tags": [
					"Gare"
				],
				"summary": "Get Tipo Partecipazione List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:159` — `GareController.GetTipoPartecipazioneList()`.",
				"operationId": "GareController.GetTipoPartecipazioneList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:159",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TipoPartecipazione"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/gare/upd_note_gara/{gr_id}": {
			"post": {
				"tags": [
					"Gare"
				],
				"summary": "Upd Note Gara",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:270` — `GareController.UpdNoteGara()`.",
				"operationId": "GareController.UpdNoteGara",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/GareController.java:270",
				"parameters": [
					{
						"name": "gr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/add": {
			"post": {
				"tags": [
					"Locations"
				],
				"summary": "Insert Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:82` — `LocationsController.InsertLocation()`.",
				"operationId": "LocationsController.InsertLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:82",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Location"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/check-protocol": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Check Protocol Exists",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:226` — `LocationsController.CheckProtocolExists()`.",
				"operationId": "LocationsController.CheckProtocolExists",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:226",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "protocol",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object",
									"additionalProperties": {
										"type": "boolean"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/del/{of_id}": {
			"delete": {
				"tags": [
					"Locations"
				],
				"summary": "Delete Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:94` — `LocationsController.DeleteLocation()`.",
				"operationId": "LocationsController.DeleteLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:94",
				"parameters": [
					{
						"name": "of_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/get": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:59` — `LocationsController.GetLocation()`.",
				"operationId": "LocationsController.GetLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:59",
				"parameters": [
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Location"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/get_comuni": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Comuni",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:105` — `LocationsController.GetComuni()`.",
				"operationId": "LocationsController.GetComuni",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:105",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Comune"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/get_comuniselect": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Comuni Select",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:114` — `LocationsController.GetComuniSelect()`.",
				"operationId": "LocationsController.GetComuniSelect",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:114",
				"parameters": [
					{
						"name": "filterValue",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "codiceProvincia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Comune"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/list": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Locations",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:43` — `LocationsController.GetLocations()`.",
				"operationId": "LocationsController.GetLocations",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:43",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Location"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/listaemployeelocation": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get View Employee Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:184` — `LocationsController.GetViewEmployeeLocation()`.",
				"operationId": "LocationsController.GetViewEmployeeLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:184",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Employee"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/listaemployeeonlocation": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get View Employeeon Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:207` — `LocationsController.GetViewEmployeeonLocation()`.",
				"operationId": "LocationsController.GetViewEmployeeonLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:207",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Employee"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/listaworksitelocation": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get View Worksite Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:161` — `LocationsController.GetViewWorksiteLocation()`.",
				"operationId": "LocationsController.GetViewWorksiteLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:161",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/next-protocol": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Next Protocol",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:218` — `LocationsController.GetNextProtocol()`.",
				"operationId": "LocationsController.GetNextProtocol",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:218",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/org_type/{cmp_id}": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "get Org Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:126` — `LocationsController.getOrgType()`.",
				"operationId": "LocationsController.getOrgType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:126",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/OrgType"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/recordlist_web": {
			"get": {
				"tags": [
					"Locations"
				],
				"summary": "Get Org Unit Record List Web",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:136` — `LocationsController.GetOrgUnitRecordList_Web()`.",
				"operationId": "LocationsController.GetOrgUnitRecordList_Web",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:136",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "data_da",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "data_a",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "org_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Location"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/saveassemployeelocation": {
			"post": {
				"tags": [
					"Locations"
				],
				"summary": "Insert Employee Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:195` — `LocationsController.InsertEmployeeLocation()`.",
				"operationId": "LocationsController.InsertEmployeeLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:195",
				"parameters": [
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Employee"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/saveassworksitelocation": {
			"post": {
				"tags": [
					"Locations"
				],
				"summary": "Insert Worksite Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:172` — `LocationsController.InsertWorksiteLocation()`.",
				"operationId": "LocationsController.InsertWorksiteLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:172",
				"parameters": [
					{
						"name": "of_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Worksite"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/locations/upd": {
			"post": {
				"tags": [
					"Locations"
				],
				"summary": "Update Location",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:70` — `LocationsController.UpdateLocation()`.",
				"operationId": "LocationsController.UpdateLocation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/LocationsController.java:70",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Location"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/attachments/{att_id}": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Attachment",
				"description": "GET /messaging/attachments/{att_id} - Scarica/visualizza un allegato (solo partecipanti)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:243` — `MessagingController.GetAttachment()`.",
				"operationId": "MessagingController.GetAttachment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:243",
				"parameters": [
					{
						"name": "att_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Conversations",
				"description": "GET /messaging/conversations - Lista conversazioni utente corrente\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:56` — `MessagingController.GetConversations()`.",
				"operationId": "MessagingController.GetConversations",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:56",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CmpConversation"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations/{conv_id}": {
			"delete": {
				"tags": [
					"Messaging"
				],
				"summary": "Hide Conversation",
				"description": "DELETE /messaging/conversations/{conv_id} - Nasconde la conversazione per l'utente corrente\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:406` — `MessagingController.HideConversation()`.",
				"operationId": "MessagingController.HideConversation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:406",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations/{conv_id}/mute": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Set Conversation Muted",
				"description": "POST /messaging/conversations/{conv_id}/mute - Silenzia/riattiva la conversazione\r per l'utente corrente. Body: { \"muted\": true }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:489` — `MessagingController.SetConversationMuted()`.",
				"operationId": "MessagingController.SetConversationMuted",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:489",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "boolean"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations/find-or-create": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Find Or Create Conversation",
				"description": "POST /messaging/conversations/find-or-create - Trova o crea conversazione\r Body: { \"other_usr_id\": 123, \"cmp_id\": 16 } (cmp_id opzionale: azienda attiva,\r tagga la conversazione per lo scoping per-azienda)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:75` — `MessagingController.FindOrCreateConversation()`.",
				"operationId": "MessagingController.FindOrCreateConversation",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:75",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations/find-or-create-by-company": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Find Or Create Conversation By Company",
				"description": "POST /messaging/conversations/find-or-create-by-company - Trova o crea conversazione con l'admin di una company\r Body: { \"cmp_id\": 123 }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:98` — `MessagingController.FindOrCreateConversationByCompany()`.",
				"operationId": "MessagingController.FindOrCreateConversationByCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:98",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/conversations/find-or-create-company-client": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Find Or Create Company Conversation For Client",
				"description": "POST /messaging/conversations/find-or-create-company-client\r Trova o crea la conversazione di gruppo azienda<->cliente per una coppia\r (cmp_id, client_usr_id) specifica. Usato dal contesto appuntamenti.\r Body: { \"cmp_id\": 123, \"client_usr_id\": 456 }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:126` — `MessagingController.FindOrCreateCompanyConversationForClient()`.",
				"operationId": "MessagingController.FindOrCreateCompanyConversationForClient",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:126",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/group-users": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Search Group Users",
				"description": "GET /messaging/group-users?txtsearch= - Cerca peer per i gruppi (tutte le aziende, qualsiasi modalita')\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:504` — `MessagingController.SearchGroupUsers()`.",
				"operationId": "MessagingController.SearchGroupUsers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:504",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/groups": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Create Group",
				"description": "POST /messaging/groups - crea un gruppo. Body: { title, member_ids:[...] }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:294` — `MessagingController.CreateGroup()`.",
				"operationId": "MessagingController.CreateGroup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:294",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/groups/{conv_id}": {
			"put": {
				"tags": [
					"Messaging"
				],
				"summary": "Rename Group",
				"description": "PUT /messaging/groups/{conv_id} - rinomina il gruppo (admin). Body: { title }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:357` — `MessagingController.RenameGroup()`.",
				"operationId": "MessagingController.RenameGroup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:357",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/groups/{conv_id}/leave": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Leave Group",
				"description": "POST /messaging/groups/{conv_id}/leave - abbandona il gruppo\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:349` — `MessagingController.LeaveGroup()`.",
				"operationId": "MessagingController.LeaveGroup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:349",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/groups/{conv_id}/members": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Group Members",
				"description": "GET /messaging/groups/{conv_id}/members - membri del gruppo\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:315` — `MessagingController.GetGroupMembers()`.",
				"operationId": "MessagingController.GetGroupMembers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:315",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Add Group Member",
				"description": "POST /messaging/groups/{conv_id}/members - aggiunge un membro (solo admin). Body: { usr_id }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:325` — `MessagingController.AddGroupMember()`.",
				"operationId": "MessagingController.AddGroupMember",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:325",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/groups/{conv_id}/members/{usr_id}": {
			"delete": {
				"tags": [
					"Messaging"
				],
				"summary": "Remove Group Member",
				"description": "DELETE /messaging/groups/{conv_id}/members/{usr_id} - rimuove un membro (admin)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:338` — `MessagingController.RemoveGroupMember()`.",
				"operationId": "MessagingController.RemoveGroupMember",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:338",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "usr_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/{conv_id}": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Messages",
				"description": "GET /messaging/messages/{conv_id} - Lista messaggi di una conversazione\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:155` — `MessagingController.GetMessages()`.",
				"operationId": "MessagingController.GetMessages",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:155",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"delete": {
				"tags": [
					"Messaging"
				],
				"summary": "Delete Message",
				"description": "DELETE /messaging/messages/{msg_id} - Elimina (soft) un proprio messaggio\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:389` — `MessagingController.DeleteMessage()`.",
				"operationId": "MessagingController.DeleteMessage",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:389",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/edit/{msg_id}": {
			"put": {
				"tags": [
					"Messaging"
				],
				"summary": "Edit Message",
				"description": "PUT /messaging/messages/edit/{msg_id} - Modifica testo di un proprio messaggio\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:203` — `MessagingController.EditMessage()`.",
				"operationId": "MessagingController.EditMessage",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:203",
				"parameters": [
					{
						"name": "msg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/read/{conv_id}": {
			"put": {
				"tags": [
					"Messaging"
				],
				"summary": "Mark As Read",
				"description": "PUT /messaging/messages/read/{conv_id} - Segna come letti\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:273` — `MessagingController.MarkAsRead()`.",
				"operationId": "MessagingController.MarkAsRead",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:273",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/search": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Search Messages",
				"description": "GET /messaging/messages/search?txtsearch= - Ricerca full-text nei contenuti dei messaggi\r delle conversazioni dell'utente. Ritorna [{ conv_id, snippet }] (snippet del match piu' recente).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:446` — `MessagingController.SearchMessages()`.",
				"operationId": "MessagingController.SearchMessages",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:446",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/send-media/{conv_id}": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Send Message With Media",
				"description": "POST /messaging/messages/send-media/{conv_id} - Invia messaggio con allegati (multipart)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:223` — `MessagingController.SendMessageWithMedia()`.",
				"operationId": "MessagingController.SendMessageWithMedia",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:223",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "text",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"files": {
										"type": "array",
										"items": {
											"type": "string",
											"format": "binary"
										}
									}
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/messages/send/{conv_id}": {
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Send Message",
				"description": "POST /messaging/messages/send/{conv_id} - Invia messaggio\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:176` — `MessagingController.SendMessage()`.",
				"operationId": "MessagingController.SendMessage",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:176",
				"parameters": [
					{
						"name": "conv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "text",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/settings": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Chat Settings",
				"description": "GET /messaging/settings - Impostazioni chat dell'utente corrente\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:463` — `MessagingController.GetChatSettings()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "MessagingController.GetChatSettings",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:463",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"Messaging"
				],
				"summary": "Save Chat Settings",
				"description": "POST /messaging/settings - Salva impostazioni chat. Body: { \"email_notify\": true }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:472` — `MessagingController.SaveChatSettings()`.",
				"operationId": "MessagingController.SaveChatSettings",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:472",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "boolean"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/unread-count": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Get Unread Count",
				"description": "GET /messaging/unread-count - Conteggio non letti\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:372` — `MessagingController.GetUnreadCount()`.",
				"operationId": "MessagingController.GetUnreadCount",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:372",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/messaging/users": {
			"get": {
				"tags": [
					"Messaging"
				],
				"summary": "Search Users",
				"description": "GET /messaging/users?txtsearch=&cmp_id= - Cerca utenti per nuova conversazione.\r Utente normale: membri delle sue aziende in modalita' DIRECT.\r ADMIN portale: membri dell'azienda attiva (cmp_id) in modalita' DIRECT,\r anche se l'admin non ne e' dipendente/collaboratore.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:426` — `MessagingController.SearchUsers()`.",
				"operationId": "MessagingController.SearchUsers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/MessagingController.java:426",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pdf/worksite_qrcode/{id}": {
			"get": {
				"tags": [
					"Pdf"
				],
				"summary": "Get Worksite Qrcode",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PdfController.java:37` — `PdfController.GetWorksiteQrcode()`.",
				"operationId": "PdfController.GetWorksiteQrcode",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PdfController.java:37",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StringObject"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-inverter/add": {
			"post": {
				"tags": [
					"PvInverter"
				],
				"summary": "Insert Inverter",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:51` — `PvInverterController.InsertInverter()`.",
				"operationId": "PvInverterController.InsertInverter",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:51",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PvInverter"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-inverter/del/{inv_id}": {
			"delete": {
				"tags": [
					"PvInverter"
				],
				"summary": "Delete Inverter",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:71` — `PvInverterController.DeleteInverter()`.",
				"operationId": "PvInverterController.DeleteInverter",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:71",
				"parameters": [
					{
						"name": "inv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-inverter/get": {
			"get": {
				"tags": [
					"PvInverter"
				],
				"summary": "Get Inverter",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:46` — `PvInverterController.GetInverter()`.",
				"operationId": "PvInverterController.GetInverter",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:46",
				"parameters": [
					{
						"name": "inv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PvInverter"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-inverter/list": {
			"get": {
				"tags": [
					"PvInverter"
				],
				"summary": "Get Inverters",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:40` — `PvInverterController.GetInverters()`.",
				"operationId": "PvInverterController.GetInverters",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:40",
				"parameters": [
					{
						"name": "pv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/PvInverter"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-inverter/upd": {
			"post": {
				"tags": [
					"PvInverter"
				],
				"summary": "Update Inverter",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:61` — `PvInverterController.UpdateInverter()`.",
				"operationId": "PvInverterController.UpdateInverter",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvInverterController.java:61",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PvInverter"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-monitor/dashboard": {
			"get": {
				"tags": [
					"PvMonitor"
				],
				"summary": "Dashboard",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvMonitorController.java:60` — `PvMonitorController.Dashboard()`.",
				"operationId": "PvMonitorController.Dashboard",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvMonitorController.java:60",
				"parameters": [
					{
						"name": "pv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "day",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-monitor/ingest": {
			"post": {
				"tags": [
					"PvMonitor"
				],
				"summary": "Ingest",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvMonitorController.java:43` — `PvMonitorController.Ingest()`.",
				"operationId": "PvMonitorController.Ingest",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvMonitorController.java:43",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PvIngestRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/add": {
			"post": {
				"tags": [
					"PvPlant"
				],
				"summary": "Insert Pv Plant",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:57` — `PvPlantController.InsertPvPlant()`.",
				"operationId": "PvPlantController.InsertPvPlant",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:57",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PvPlant"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/del/{pv_id}": {
			"delete": {
				"tags": [
					"PvPlant"
				],
				"summary": "Delete Pv Plant",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:73` — `PvPlantController.DeletePvPlant()`.",
				"operationId": "PvPlantController.DeletePvPlant",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:73",
				"parameters": [
					{
						"name": "pv_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/get": {
			"get": {
				"tags": [
					"PvPlant"
				],
				"summary": "Get Pv Plant",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:51` — `PvPlantController.GetPvPlant()`.",
				"operationId": "PvPlantController.GetPvPlant",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:51",
				"parameters": [
					{
						"name": "pv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/PvPlant"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/layout": {
			"get": {
				"tags": [
					"PvPlant"
				],
				"summary": "Get Pv Plant Layout",
				"description": "── layout mappa (poligoni pannelli) ──\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:82` — `PvPlantController.GetPvPlantLayout()`.",
				"operationId": "PvPlantController.GetPvPlantLayout",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:82",
				"parameters": [
					{
						"name": "pv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"PvPlant"
				],
				"summary": "Update Pv Plant Layout",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:87` — `PvPlantController.UpdatePvPlantLayout()`.",
				"operationId": "PvPlantController.UpdatePvPlantLayout",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:87",
				"parameters": [
					{
						"name": "pv_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/list": {
			"get": {
				"tags": [
					"PvPlant"
				],
				"summary": "Get Pv Plants",
				"description": "Lista impianti FV. ws_id>0 = solo quel cantiere; cmp_id = scoping azienda.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:36` — `PvPlantController.GetPvPlants()`.",
				"operationId": "PvPlantController.GetPvPlants",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:36",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/PvPlant"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/pv-plant/upd": {
			"post": {
				"tags": [
					"PvPlant"
				],
				"summary": "Update Pv Plant",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:65` — `PvPlantController.UpdatePvPlant()`.",
				"operationId": "PvPlantController.UpdatePvPlant",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/PvPlantController.java:65",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/PvPlant"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/add/{cmp_id}": {
			"post": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Insert Worksite Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:66` — `WorksiteReportController.InsertWorksiteReport()`.",
				"operationId": "WorksiteReportController.InsertWorksiteReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:66",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteReport"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/compila_report/{wsre_out_id}": {
			"post": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Compila Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:90` — `WorksiteReportController.CompilaReport()`.",
				"operationId": "WorksiteReportController.CompilaReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:90",
				"parameters": [
					{
						"name": "wsre_out_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteReport"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/del/{wsrp_id}": {
			"delete": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Delete Worksite Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:78` — `WorksiteReportController.DeleteWorksiteReport()`.",
				"operationId": "WorksiteReportController.DeleteWorksiteReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:78",
				"parameters": [
					{
						"name": "wsrp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/get_by_type/{id}/{type}/{cmp_id}": {
			"get": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Get Reportby Type",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:114` — `WorksiteReportController.GetReportbyType()`.",
				"operationId": "WorksiteReportController.GetReportbyType",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:114",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteReport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/get_report_by_worksite/{ws_id}/{cmp_id}": {
			"get": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Get Reportby Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:102` — `WorksiteReportController.GetReportbyWorksite()`.",
				"operationId": "WorksiteReportController.GetReportbyWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:102",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteReport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/get/{wsrp_id}": {
			"get": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Get Worksite Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:54` — `WorksiteReportController.GetWorksiteReport()`.",
				"operationId": "WorksiteReportController.GetWorksiteReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:54",
				"parameters": [
					{
						"name": "wsrp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteReport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/report/list": {
			"get": {
				"tags": [
					"WorksiteReport"
				],
				"summary": "Get Report List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:37` — `WorksiteReportController.GetReportList()`.",
				"operationId": "WorksiteReportController.GetReportList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteReportController.java:37",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorksiteReport"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/{rev_id}/moderate": {
			"put": {
				"tags": [
					"Reviews"
				],
				"summary": "Moderate Review",
				"description": "PUT /reviews/{rev_id}/moderate - Nascondi/ripristina. Body: { status: NASCOSTA|PUBBLICATA }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:213` — `ReviewsController.ModerateReview()`.",
				"operationId": "ReviewsController.ModerateReview",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:213",
				"parameters": [
					{
						"name": "rev_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/{rev_id}/report": {
			"post": {
				"tags": [
					"Reviews"
				],
				"summary": "Report Review",
				"description": "POST /reviews/{rev_id}/report - Segnala una recensione. Body: { reason, notes }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:161` — `ReviewsController.ReportReview()`.",
				"operationId": "ReviewsController.ReportReview",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:161",
				"parameters": [
					{
						"name": "rev_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/add": {
			"post": {
				"tags": [
					"Reviews"
				],
				"summary": "Insert Review",
				"description": "POST /reviews/add - Crea una recensione certificata (body con rev_source/rev_source_id).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:66` — `ReviewsController.InsertReview()`.",
				"operationId": "ReviewsController.InsertReview",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:66",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Review"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/eligible": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Eligible",
				"description": "GET /reviews/eligible?source=&source_id= - Il chiamante puo recensire la transazione?\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:48` — `ReviewsController.Eligible()`.",
				"operationId": "ReviewsController.Eligible",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:48",
				"parameters": [
					{
						"name": "source",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "source_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/list": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Get List",
				"description": "GET /reviews/list?cmp_id=&source=&service_type_id=&order_by=&limit=&offset= - Recensioni visibili.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:80` — `ReviewsController.GetList()`.",
				"operationId": "ReviewsController.GetList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:80",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "source",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "service_type_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "date_desc"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/list-place": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Get Place List",
				"description": "GET /reviews/list-place?plc_id=&limit=&offset= - Recensioni pubblicate di un luogo turismo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:121` — `ReviewsController.GetPlaceList()`.",
				"operationId": "ReviewsController.GetPlaceList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:121",
				"parameters": [
					{
						"name": "plc_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/reports": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Get Reports",
				"description": "GET /reviews/reports?cmp_id=&status=&limit=&offset= - Coda di moderazione (solo staff impresa).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:181` — `ReviewsController.GetReports()`.",
				"operationId": "ReviewsController.GetReports",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:181",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/reports/{rrp_id}/resolve": {
			"put": {
				"tags": [
					"Reviews"
				],
				"summary": "Resolve Report",
				"description": "PUT /reviews/reports/{rrp_id}/resolve - Risolvi/respingi. Body: { status: RISOLTA|RESPINTA }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:239` — `ReviewsController.ResolveReport()`.",
				"operationId": "ReviewsController.ResolveReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:239",
				"parameters": [
					{
						"name": "rrp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/stats": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Get Stats",
				"description": "GET /reviews/stats?cmp_id= - Statistiche aggregate del profilo impresa.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:107` — `ReviewsController.GetStats()`.",
				"operationId": "ReviewsController.GetStats",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:107",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ReviewStats"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/reviews/stats-place": {
			"get": {
				"tags": [
					"Reviews"
				],
				"summary": "Get Place Stats",
				"description": "GET /reviews/stats-place?plc_id= - Statistiche aggregate di un luogo turismo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:147` — `ReviewsController.GetPlaceStats()`.",
				"operationId": "ReviewsController.GetPlaceStats",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ReviewsController.java:147",
				"parameters": [
					{
						"name": "plc_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ReviewStats"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/riepilogo-generale": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "get Riepilogo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:50` — `RiepilogoGeneraleController.getRiepilogo()`.\n\nTipo di risposta non risolto dal generatore (`RiepilogoResponse`).",
				"operationId": "RiepilogoGeneraleController.getRiepilogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:50",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "ripartisciCG",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/riepilogo-generale/fatture-per-cantiere": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "get Fatture Per Cantiere Costo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:158` — `RiepilogoGeneraleController.getFatturePerCantiereCosto()`.",
				"operationId": "RiepilogoGeneraleController.getFatturePerCantiereCosto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:158",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "whicId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "fat_data_desc"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaPerCantiereRiga"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/riepilogo-generale/fatture-per-cantiere/excel": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "esporta Fatture Per Cantiere Excel",
				"description": "Esporta in Excel (XLSX dentro ZIP) le fatture per cantiere/centro di costo,\r applicando gli stessi filtri della UI. Ritorna { res: \"<filename>.zip\" }.\r GET /riepilogo-generale/fatture-per-cantiere/excel\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:186` — `RiepilogoGeneraleController.esportaFatturePerCantiereExcel()`.",
				"operationId": "RiepilogoGeneraleController.esportaFatturePerCantiereExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:186",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "whicId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "fat_data_desc"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/riepilogo-generale/pdf": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "genera PDF",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:73` — `RiepilogoGeneraleController.generaPDF()`.",
				"operationId": "RiepilogoGeneraleController.generaPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:73",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "ripartisciCG",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio"
					}
				}
			}
		},
		"/api/riepilogo-generale/per-cantiere": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "get Costi Per Cantiere",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:103` — `RiepilogoGeneraleController.getCostiPerCantiere()`.",
				"operationId": "RiepilogoGeneraleController.getCostiPerCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:103",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "whicId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "ws_name"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/CostoPerCantiereRiga"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/riepilogo-generale/per-cantiere/excel": {
			"get": {
				"tags": [
					"RiepilogoGenerale"
				],
				"summary": "esporta Costi Per Cantiere Excel",
				"description": "Esporta in Excel (XLSX dentro ZIP) i costi per cantiere per un dato centro di costo,\r applicando gli stessi filtri della UI. Ritorna { res: \"<filename>.zip\" }.\r GET /riepilogo-generale/per-cantiere/excel\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:130` — `RiepilogoGeneraleController.esportaCostiPerCantiereExcel()`.",
				"operationId": "RiepilogoGeneraleController.esportaCostiPerCantiereExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RiepilogoGeneraleController.java:130",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "whicId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "ws_name"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/add": {
			"post": {
				"tags": [
					"Roles"
				],
				"summary": "Assign Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:75` — `RolesController.AssignRole()`.",
				"operationId": "RolesController.AssignRole",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:75",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/addbyuser": {
			"post": {
				"tags": [
					"Roles"
				],
				"summary": "Assign Role By User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:113` — `RolesController.AssignRoleByUser()`.",
				"operationId": "RolesController.AssignRoleByUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:113",
				"parameters": [
					{
						"name": "usr_type",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "user_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/addcollaborator": {
			"post": {
				"tags": [
					"Roles"
				],
				"summary": "Assign Role Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:97` — `RolesController.AssignRoleCollaborator()`.",
				"operationId": "RolesController.AssignRoleCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:97",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/addrl": {
			"post": {
				"tags": [
					"Roles"
				],
				"summary": "Insert Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:179` — `RolesController.InsertRole()`.",
				"operationId": "RolesController.InsertRole",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:179",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/assignedlistbyuser/{user_id}": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Assigned Roles By User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:65` — `RolesController.GetAssignedRolesByUser()`.",
				"operationId": "RolesController.GetAssignedRolesByUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:65",
				"parameters": [
					{
						"name": "user_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/company/{companyId}": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Roles By Company Id",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:36` — `RolesController.GetRolesByCompanyId()`.",
				"operationId": "RolesController.GetRolesByCompanyId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:36",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/del": {
			"delete": {
				"tags": [
					"Roles"
				],
				"summary": "Delete Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:128` — `RolesController.DeleteRole()`.",
				"operationId": "RolesController.DeleteRole",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:128",
				"parameters": [
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/del/{rl_id}": {
			"delete": {
				"tags": [
					"Roles"
				],
				"summary": "Delete Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:204` — `RolesController.DeleteRole()`.",
				"operationId": "RolesController.DeleteRole.2",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:204",
				"parameters": [
					{
						"name": "rl_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/delbyuser": {
			"delete": {
				"tags": [
					"Roles"
				],
				"summary": "Delete Role By User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:191` — `RolesController.DeleteRoleByUser()`.",
				"operationId": "RolesController.DeleteRoleByUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:191",
				"parameters": [
					{
						"name": "usr_type",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "user_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/delcollaborator": {
			"delete": {
				"tags": [
					"Roles"
				],
				"summary": "Delete Role Collaborator",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:105` — `RolesController.DeleteRoleCollaborator()`.",
				"operationId": "RolesController.DeleteRoleCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:105",
				"parameters": [
					{
						"name": "col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/get": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:154` — `RolesController.GetRole()`.",
				"operationId": "RolesController.GetRole",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:154",
				"parameters": [
					{
						"name": "rl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Ruolo"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/list": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Roles",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:139` — `RolesController.GetRoles()`.",
				"operationId": "RolesController.GetRoles",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:139",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/roleslist": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Roles By Employee",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:43` — `RolesController.GetRolesByEmployee()`.",
				"operationId": "RolesController.GetRolesByEmployee",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:43",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/roleslistbyuser": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Roles By User",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:55` — `RolesController.GetRolesByUser()`.",
				"operationId": "RolesController.GetRolesByUser",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:55",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "user_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/roleslistcollaborator": {
			"get": {
				"tags": [
					"Roles"
				],
				"summary": "Get Roles By Collaborator",
				"description": "Ruoli azienda con flag assegnazione per un collaboratore (di fornitore o di cliente)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:87` — `RolesController.GetRolesByCollaborator()`.",
				"operationId": "RolesController.GetRolesByCollaborator",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:87",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "col_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/roles/updrl": {
			"post": {
				"tags": [
					"Roles"
				],
				"summary": "Update Role",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:166` — `RolesController.UpdateRole()`.",
				"operationId": "RolesController.UpdateRole",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RolesController.java:166",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/add": {
			"post": {
				"tags": [
					"Ruoli"
				],
				"summary": "Insert Ruolo",
				"description": "Modificato per rimuovere @PathVariable(\"username\") e usare l'autenticazione\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:59` — `RuoliController.InsertRuolo()`.",
				"operationId": "RuoliController.InsertRuolo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:59",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/del/{rl_id}": {
			"delete": {
				"tags": [
					"Ruoli"
				],
				"summary": "Delete Ruolo",
				"description": "Modificato per rimuovere @PathVariable(\"username\") e usare l'autenticazione\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:69` — `RuoliController.DeleteRuolo()`.",
				"operationId": "RuoliController.DeleteRuolo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:69",
				"parameters": [
					{
						"name": "rl_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/deleteruolopagina": {
			"delete": {
				"tags": [
					"Ruoli"
				],
				"summary": "Delete Ruolo Pagina",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:121` — `RuoliController.DeleteRuoloPagina()`.",
				"operationId": "RuoliController.DeleteRuoloPagina",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:121",
				"parameters": [
					{
						"name": "pg_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/lista/{cmp_id}": {
			"get": {
				"tags": [
					"Ruoli"
				],
				"summary": "Get View Ruoli",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:79` — `RuoliController.GetViewRuoli()`.",
				"operationId": "RuoliController.GetViewRuoli",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:79",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "rl_description",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "orderby",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limitda",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limitper",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/listaruolipagina/{pg_id}": {
			"get": {
				"tags": [
					"Ruoli"
				],
				"summary": "Get View Ruoli Pagine",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:98` — `RuoliController.GetViewRuoliPagine()`.",
				"operationId": "RuoliController.GetViewRuoliPagine",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:98",
				"parameters": [
					{
						"name": "pg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Ruolo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/ruolobyid/{rl_id}": {
			"get": {
				"tags": [
					"Ruoli"
				],
				"summary": "Get Ruolo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:36` — `RuoliController.GetRuolo()`.",
				"operationId": "RuoliController.GetRuolo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:36",
				"parameters": [
					{
						"name": "rl_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Ruolo"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/saveasruolopagina/{pg_id}": {
			"post": {
				"tags": [
					"Ruoli"
				],
				"summary": "Insert Portale Pagina",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:109` — `RuoliController.InsertPortalePagina()`.",
				"operationId": "RuoliController.InsertPortalePagina",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:109",
				"parameters": [
					{
						"name": "pg_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/ruoli/update": {
			"put": {
				"tags": [
					"Ruoli"
				],
				"summary": "Update Ruolo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:49` — `RuoliController.UpdateRuolo()`.",
				"operationId": "RuoliController.UpdateRuolo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/RuoliController.java:49",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Ruolo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/add": {
			"post": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Add Ordine",
				"description": "Aggiungi riga ordine.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:78` — `SalPassivoOrdineController.AddOrdine()`.",
				"operationId": "SalPassivoOrdineController.AddOrdine",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:78",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SalPassivoOrdine"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/del/{ord_id}": {
			"delete": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Del Ordine",
				"description": "Elimina riga ordine.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:98` — `SalPassivoOrdineController.DelOrdine()`.",
				"operationId": "SalPassivoOrdineController.DelOrdine",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:98",
				"parameters": [
					{
						"name": "ord_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/get/{ord_id}": {
			"get": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Get Ordine",
				"description": "Singolo ordine.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:71` — `SalPassivoOrdineController.GetOrdine()`.",
				"operationId": "SalPassivoOrdineController.GetOrdine",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:71",
				"parameters": [
					{
						"name": "ord_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SalPassivoOrdine"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/list/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Get Ordini",
				"description": "Lista ordini di un SAL Passivo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:49` — `SalPassivoOrdineController.GetOrdini()`.",
				"operationId": "SalPassivoOrdineController.GetOrdini",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:49",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SalPassivoOrdine"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/totale/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Get Totale",
				"description": "Totale importo ordini di un SAL Passivo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:59` — `SalPassivoOrdineController.GetTotale()`.",
				"operationId": "SalPassivoOrdineController.GetTotale",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:59",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo-ordini/upd/{ord_id}": {
			"put": {
				"tags": [
					"SalPassivoOrdine"
				],
				"summary": "Upd Ordine",
				"description": "Modifica riga ordine.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:87` — `SalPassivoOrdineController.UpdOrdine()`.",
				"operationId": "SalPassivoOrdineController.UpdOrdine",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoOrdineController.java:87",
				"parameters": [
					{
						"name": "ord_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SalPassivoOrdine"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/{slp_id}/invoice-candidates": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Get Invoice Candidates",
				"description": "Fatture passive candidate per il collegamento al SAL (stesso cantiere+fornitore, non assegnate).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:340` — `SalPassivoController.GetInvoiceCandidates()`.",
				"operationId": "SalPassivoController.GetInvoiceCandidates",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:340",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/{slp_id}/link-invoice/{sf_id}": {
			"post": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Link Invoice",
				"description": "Set/unset slp_inv_id. Passare sf_id=0 per scollegare (slp_inv_id=NULL).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:360` — `SalPassivoController.LinkInvoice()`.",
				"operationId": "SalPassivoController.LinkInvoice",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:360",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/{slp_id}/linked-invoice": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Get Linked Invoice",
				"description": "Fattura attualmente collegata al SAL (null se nessuna).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:350` — `SalPassivoController.GetLinkedInvoice()`.",
				"operationId": "SalPassivoController.GetLinkedInvoice",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:350",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/add": {
			"post": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Add Sal Passivo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:80` — `SalPassivoController.AddSalPassivo()`.",
				"operationId": "SalPassivoController.AddSalPassivo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:80",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SalPassivo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/cert-gen/annulla/{slp_id}": {
			"put": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Annulla Cert Gen",
				"description": "Annulla generazione certificato (replica DNN AnnullaGenerazioneCertificato).\r Resetta slp_cert_gen = false → sblocca le altre azioni (es. cambia stato).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:285` — `SalPassivoController.AnnullaCertGen()`.",
				"operationId": "SalPassivoController.AnnullaCertGen",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:285",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/clear-bozza/{slp_id}": {
			"put": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Clear Bozza",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:113` — `SalPassivoController.ClearBozza()`.",
				"operationId": "SalPassivoController.ClearBozza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:113",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/csv/list": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Csv List",
				"description": "Esporta CSV della lista SAL Passivi filtrata (UTF-8 con BOM, separatore \";\", virgola decimale).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:310` — `SalPassivoController.CsvList()`.",
				"operationId": "SalPassivoController.CsvList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:310",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "sub_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/del/{slp_id}": {
			"delete": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Del Sal Passivo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:97` — `SalPassivoController.DelSalPassivo()`.",
				"operationId": "SalPassivoController.DelSalPassivo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:97",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/get/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Get Sal Passivo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:72` — `SalPassivoController.GetSalPassivo()`.",
				"operationId": "SalPassivoController.GetSalPassivo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:72",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SalPassivo"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/list": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Get Sal Passivo List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:54` — `SalPassivoController.GetSalPassivoList()`.",
				"operationId": "SalPassivoController.GetSalPassivoList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:54",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sub_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SalPassivo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/note/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Get Note",
				"description": "Lista note del SAL Passivo (replica DNN ViewNote).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:188` — `SalPassivoController.GetNote()`.",
				"operationId": "SalPassivoController.GetNote",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:188",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SalPassivoNota"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Add Nota",
				"description": "Aggiunge una nota al SAL Passivo (replica DNN SaveNota). Body: {\"testo\":\"...\"}.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:198` — `SalPassivoController.AddNota()`.",
				"operationId": "SalPassivoController.AddNota",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:198",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/note/pdf/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Pdf Note",
				"description": "Genera PDF stampa note (replica DNN printNote).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:296` — `SalPassivoController.PdfNote()`.",
				"operationId": "SalPassivoController.PdfNote",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:296",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/pdf/cert-pagamento/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Pdf Cert Pagamento",
				"description": "Genera PDF Certificato di Pagamento (replica DNN ProcediGeneraCertificatoPagamento +\r GeneraPDFSalPassivo_CertificatoPagamento). Setta anche slp_cert_gen = true.\r Query param: cmp_id (azienda), data (dd/MM/yyyy, default oggi).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:224` — `SalPassivoController.PdfCertPagamento()`.",
				"operationId": "SalPassivoController.PdfCertPagamento",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:224",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "data",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/pdf/list": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Pdf List",
				"description": "Genera PDF della lista SAL Passivi filtrata. Salva in pathTemp, ritorna { res: filename }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:157` — `SalPassivoController.PdfList()`.",
				"operationId": "SalPassivoController.PdfList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:157",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "sub_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "type",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/pdf/riepilogo-libretto/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Pdf Riepilogo Libretto",
				"description": "Genera PDF Riepilogo+Libretto Misure (replica DNN GeneraRiepilogoELibrettoMisure +\r GeneraPDFSalPassivo_RiepilogoELibrettoMisure). Setta anche slp_cert_gen = true.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:266` — `SalPassivoController.PdfRiepilogoLibretto()`.",
				"operationId": "SalPassivoController.PdfRiepilogoLibretto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:266",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/pdf/single/{slp_id}": {
			"get": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Pdf Single",
				"description": "Genera PDF singolo SAL Passivo. Salva in pathTemp, ritorna { res: filename }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:139` — `SalPassivoController.PdfSingle()`.",
				"operationId": "SalPassivoController.PdfSingle",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:139",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/publish-bozza/{slp_id}": {
			"put": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Publish Bozza",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:105` — `SalPassivoController.PublishBozza()`.",
				"operationId": "SalPassivoController.PublishBozza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:105",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/stato/{slp_id}/{stato}": {
			"put": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Update Stato",
				"description": "Cambio stato manuale del SAL Passivo (replica SP DNN salpassivo_updstato).\r Valori validi: 0=DA_AUTORIZZARE, 1=AUTORIZZATO, 2=FATTURATO.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:125` — `SalPassivoController.UpdateStato()`.",
				"operationId": "SalPassivoController.UpdateStato",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:125",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "stato",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal-passivo/upd/{slp_id}": {
			"put": {
				"tags": [
					"SalPassivo"
				],
				"summary": "Upd Sal Passivo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:88` — `SalPassivoController.UpdSalPassivo()`.",
				"operationId": "SalPassivoController.UpdSalPassivo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalPassivoController.java:88",
				"parameters": [
					{
						"name": "slp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SalPassivo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/add": {
			"post": {
				"tags": [
					"Sal"
				],
				"summary": "Add Sal",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:83` — `SalController.AddSal()`.",
				"operationId": "SalController.AddSal",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:83",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Sal"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/del/{sal_id}": {
			"delete": {
				"tags": [
					"Sal"
				],
				"summary": "Del Sal",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:100` — `SalController.DelSal()`.",
				"operationId": "SalController.DelSal",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:100",
				"parameters": [
					{
						"name": "sal_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/get/{sal_id}": {
			"get": {
				"tags": [
					"Sal"
				],
				"summary": "Get Sal",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:75` — `SalController.GetSal()`.",
				"operationId": "SalController.GetSal",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:75",
				"parameters": [
					{
						"name": "sal_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Sal"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/list": {
			"get": {
				"tags": [
					"Sal"
				],
				"summary": "Get Sal List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:54` — `SalController.GetSalList()`.",
				"operationId": "SalController.GetSalList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:54",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cst_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cnt_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFromMin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateFromMax",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateToMin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateToMax",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Sal"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/max-progressivo-before": {
			"get": {
				"tags": [
					"Sal"
				],
				"summary": "Get Max Progressivo Before",
				"description": "Massimo progressivo cumulato fra i SAL precedenti dello stesso cantiere.\r Usato dal flusso upload cartella SAL Attivo: dato il progressivo letto dal PDF,\r delta = progressivo - max_progressivo_before. Ritorna 0 se non c'è alcun SAL precedente.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:129` — `SalController.GetMaxProgressivoBefore()`.",
				"operationId": "SalController.GetMaxProgressivoBefore",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:129",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "exclude_sal_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "before_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/pdf/list": {
			"get": {
				"tags": [
					"Sal"
				],
				"summary": "Pdf List",
				"description": "Genera PDF lista SAL Attivi filtrata.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:145` — `SalController.PdfList()`.",
				"operationId": "SalController.PdfList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:145",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cst_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cnt_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFromMin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateFromMax",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateToMin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateToMax",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/pdf/single/{sal_id}": {
			"get": {
				"tags": [
					"Sal"
				],
				"summary": "Pdf Single",
				"description": "Genera PDF singolo SAL Attivo.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:109` — `SalController.PdfSingle()`.",
				"operationId": "SalController.PdfSingle",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:109",
				"parameters": [
					{
						"name": "sal_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sal/upd/{sal_id}": {
			"put": {
				"tags": [
					"Sal"
				],
				"summary": "Upd Sal",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:91` — `SalController.UpdSal()`.",
				"operationId": "SalController.UpdSal",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SalController.java:91",
				"parameters": [
					{
						"name": "sal_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Sal"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Detail Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:253` — `ScadenziarioFattureController.GetDetailFattura()`.",
				"operationId": "ScadenziarioFattureController.GetDetailFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:253",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/FatturaSF"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/{sf_id}/linked-sal": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Linked Sal",
				"description": "SAL Passivo attualmente collegato alla fattura (null se nessuno).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2696` — `ScadenziarioFattureController.GetLinkedSal()`.",
				"operationId": "ScadenziarioFattureController.GetLinkedSal",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2696",
				"parameters": [
					{
						"name": "sf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/{sf_id}/sal-candidates": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Sal Candidates",
				"description": "SAL Passivi candidati per il collegamento alla fattura (stesso cantiere+fornitore, non assegnati).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2686` — `ScadenziarioFattureController.GetSalCandidates()`.",
				"operationId": "ScadenziarioFattureController.GetSalCandidates",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2686",
				"parameters": [
					{
						"name": "sf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconti": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Acconti",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1186` — `ScadenziarioFattureController.GetListaAcconti()`.",
				"operationId": "ScadenziarioFattureController.GetListaAcconti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1186",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idFatturaCorrente",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconti-ndc-for-fattura/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Acconto NDCFor Fattura",
				"description": "Ottiene le ndc e acconti collegati ad una fattura\r per il calcolo del totale acconti/ndc\r GET /companies/scadenziario-fatture/acconti-ndc-for-fattura/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1508` — `ScadenziarioFattureController.GetAccontoNDCForFattura()`.",
				"operationId": "ScadenziarioFattureController.GetAccontoNDCForFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1508",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/{id}": {
			"delete": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Scollega Fattura Acconto",
				"description": "Elimina un collegamento fattura-acconto.\r DELETE /scadenziario-fatture/acconto-collegamento/{id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2517` — `ScadenziarioFattureController.ScollegaFatturaAcconto()`.",
				"operationId": "ScadenziarioFattureController.ScollegaFatturaAcconto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2517",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/by-fattura/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Acconti Collegati By Fattura",
				"description": "Ottiene tutti i collegamenti acconto per una fattura (sf_fatture).\r GET /scadenziario-fatture/acconto-collegamento/by-fattura/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2556` — `ScadenziarioFattureController.GetAccontiCollegatiByFattura()`.",
				"operationId": "ScadenziarioFattureController.GetAccontiCollegatiByFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2556",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaAccontoCollegamento"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/cerca": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Cerca Fattura Acconto",
				"description": "Cerca fattura acconto per fornitore, numero e data.\r GET /scadenziario-fatture/acconto-collegamento/cerca\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2470` — `ScadenziarioFattureController.CercaFatturaAcconto()`.",
				"operationId": "ScadenziarioFattureController.CercaFatturaAcconto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2470",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "supId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "numero",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "data",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/FatturaSF"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/collega": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Collega Fattura Acconto",
				"description": "Crea un collegamento tra fattura import e fattura acconto.\r POST /scadenziario-fatture/acconto-collegamento/collega\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2492` — `ScadenziarioFattureController.CollegaFatturaAcconto()`.",
				"operationId": "ScadenziarioFattureController.CollegaFatturaAcconto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2492",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/lista/{idFatturaImport}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Acconti Collegati",
				"description": "Ottiene tutti i collegamenti acconto per una fattura import.\r GET /scadenziario-fatture/acconto-collegamento/lista/{idFatturaImport}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2536` — `ScadenziarioFattureController.GetAccontiCollegati()`.",
				"operationId": "ScadenziarioFattureController.GetAccontiCollegati",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2536",
				"parameters": [
					{
						"name": "idFatturaImport",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaAccontoCollegamento"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/acconto-collegamento/reverse/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Collegamenti Come Fattura Acconto",
				"description": "Restituisce i collegamenti dove questa fattura È l'acconto (reverse lookup).\r GET /scadenziario-fatture/acconto-collegamento/reverse/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2576` — `ScadenziarioFattureController.GetCollegamentiComeFatturaAcconto()`.",
				"operationId": "ScadenziarioFattureController.GetCollegamentiComeFatturaAcconto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2576",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaAccontoCollegamento"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/add/{cmp_id}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Add Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:265` — `ScadenziarioFattureController.AddFattura()`.",
				"operationId": "ScadenziarioFattureController.AddFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:265",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FatturaSF"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/anni": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Anni Fatture",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:558` — `ScadenziarioFattureController.GetAnniFatture()`.",
				"operationId": "ScadenziarioFattureController.GetAnniFatture",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:558",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "integer",
										"format": "int32"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/annulla-flusso/{flussoId}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Annulla Flusso",
				"description": "Annulla un flusso di pagamento\r POST /scadenziario-fatture/annulla-flusso/{flussoId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:867` — `ScadenziarioFattureController.AnnullaFlusso()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "ScadenziarioFattureController.AnnullaFlusso",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:867",
				"parameters": [
					{
						"name": "flussoId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/archivia/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Archivia Fattura",
				"description": "Archivia una fattura (fat_stato_convalida = 3)\r GET /scadenziario-fatture/archivia/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:375` — `ScadenziarioFattureController.ArchiviaFattura()`.",
				"operationId": "ScadenziarioFattureController.ArchiviaFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:375",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/associa-ddt-fattura/{ddt_id}/{fat_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Associa DDTFattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2033` — `ScadenziarioFattureController.AssociaDDTFattura()`.",
				"operationId": "ScadenziarioFattureController.AssociaDDTFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2033",
				"parameters": [
					{
						"name": "ddt_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "fat_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "numeroDDT",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDDT",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/attive/lista": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture SFAttive",
				"description": "===== FATTURE ATTIVE (sezione separata, stesso modello) =====\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:176` — `ScadenziarioFattureController.GetListaFattureSFAttive()`.",
				"operationId": "ScadenziarioFattureController.GetListaFattureSFAttive",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:176",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idCliente",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "senzaCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/attive/totali": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture SFAttive Totali",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:216` — `ScadenziarioFattureController.GetListaFattureSFAttive_Totali()`.",
				"operationId": "ScadenziarioFattureController.GetListaFattureSFAttive_Totali",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:216",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idCliente",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "senzaCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/banche-pagamenti-flussi": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Banche Pagamenti Flussi",
				"description": "Ottiene la lista delle banche pagamenti flussi\r GET /scadenziario-fatture/banche-pagamenti-flussi\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:788` — `ScadenziarioFattureController.GetBanchePagamentiFlussi()`.",
				"operationId": "ScadenziarioFattureController.GetBanchePagamentiFlussi",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:788",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "soloAttive",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "true"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/BancaPagamentoFlusso"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/by-import/{fatimp_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fattura By Import Id",
				"description": "Ottiene la fattura completa a partire dall'ID della fattura import\r GET /scadenziario-fatture/by-import/{fatimp_id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:300` — `ScadenziarioFattureController.GetFatturaByImportId()`.",
				"operationId": "ScadenziarioFattureController.GetFatturaByImportId",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:300",
				"parameters": [
					{
						"name": "fatimp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/FatturaSF"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/cambio-stato-rata": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Cambia Stato Rata",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:417` — `ScadenziarioFattureController.CambiaStatoRata()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "ScadenziarioFattureController.CambiaStatoRata",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:417",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/cambio-stato-rata-massivo": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Cambia Stato Rata Massivo",
				"description": "Avanzamento massivo dello stato di piu` rate in un'unica transazione.\r Body: { \"idRate\": [1,2,3], \"tipoAutorizzazione\": \"INVIA\" | \"AUTORIZZA\" }\r Se anche una sola rata non e` compatibile l'intera operazione viene rollbackata.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:454` — `ScadenziarioFattureController.CambiaStatoRataMassivo()`.",
				"operationId": "ScadenziarioFattureController.CambiaStatoRataMassivo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:454",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/certificati": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Certificati",
				"description": "Ottiene la lista dei certificati di pagamento\r GET /companies/scadenziario-fatture/certificati\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1217` — `ScadenziarioFattureController.GetListaCertificati()`.",
				"operationId": "ScadenziarioFattureController.GetListaCertificati",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1217",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/conferma-riconciliazione": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Conferma Riconciliazione",
				"description": "Riconciliazione bancaria CROSS-FLUSSO - CONFERMA\r Sposta il PDF da temp a definitivo, estrae le singole pagine e applica gli abbinamenti.\r Le rate matchate passano da PAGATA(3) a RICONCILIATA(5);\r ogni flusso toccato viene ricalcolato a CONFERMATO o CONFERMATO_PARZIALE.\r\r POST /scadenziario-fatture/conferma-riconciliazione\r Body JSON: { companyId: number, tempFilePath: string, abbinamenti: [...] }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:960` — `ScadenziarioFattureController.ConfermaRiconciliazione()`.",
				"operationId": "ScadenziarioFattureController.ConfermaRiconciliazione",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:960",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/conferma-riconciliazione-riba": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Conferma Riconciliazione Riba",
				"description": "Conferma riconciliazione RI.BA.: salva la distinta, ritaglia ogni ricevuta abbinata\r (1 ricevuta = 1 rata) e marca le rate PAGATA(3) -> RICONCILIATA(5).\r\r POST /scadenziario-fatture/conferma-riconciliazione-riba\r Body JSON: { companyId, tempFilePath, dataDistinta?, abbinamenti: [...] }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1005` — `ScadenziarioFattureController.ConfermaRiconciliazioneRiba()`.",
				"operationId": "ScadenziarioFattureController.ConfermaRiconciliazioneRiba",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1005",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/delete/{idFattura}": {
			"delete": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Delete Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:405` — `ScadenziarioFattureController.DeleteFattura()`.",
				"operationId": "ScadenziarioFattureController.DeleteFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:405",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/dissocia-ddt-fattura": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Disassocia DDTFattura",
				"description": "Dissocia un DDT da una fattura\r POST /scadenziario-fatture/dissocia-ddt-fattura\r\r Body atteso:\r {\r   \"ddtId\": number,\r   \"fatId\": number,\r   \"numeroDDT\": string,\r   \"dataDDT\": string\r }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2395` — `ScadenziarioFattureController.DisassociaDDTFattura()`.",
				"operationId": "ScadenziarioFattureController.DisassociaDDTFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2395",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/download-flusso/{flussoId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Download Flusso",
				"description": "Scarica il file ZIP del flusso di pagamento\r GET /scadenziario-fatture/download-flusso/{flussoId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1148` — `ScadenziarioFattureController.DownloadFlusso()`.",
				"operationId": "ScadenziarioFattureController.DownloadFlusso",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1148",
				"parameters": [
					{
						"name": "flussoId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/esporta-excel": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Esporta Fatture Excel",
				"description": "Esporta in Excel (XLSX dentro ZIP) la lista fatture come visualizzata nella schermata,\r applicando gli stessi filtri della UI. Ritorna { res: \"<filename>.zip\" }.\r GET /scadenziario-fatture/esporta-excel\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2318` — `ScadenziarioFattureController.EsportaFattureExcel()`.",
				"operationId": "ScadenziarioFattureController.EsportaFattureExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2318",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "fattureIds",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idImpresa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fattura-associata-by-ddt/{doctrId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fattura Associata By DDT",
				"description": "Ottiene la fattura associata a un DDT (se esiste)\r GET /scadenziario-fatture/fattura-associata-by-ddt/{doctrId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2368` — `ScadenziarioFattureController.GetFatturaAssociataByDDT()`.",
				"operationId": "ScadenziarioFattureController.GetFatturaAssociataByDDT",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2368",
				"parameters": [
					{
						"name": "doctrId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/FatturaSF"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fattura-automezzo/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fattura Automezzo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2451` — `ScadenziarioFattureController.GetFatturaAutomezzo()`.",
				"operationId": "ScadenziarioFattureController.GetFatturaAutomezzo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2451",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fattura-for-acconto-ndc/{idAccontoNDC}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fattura For Acconto NDC",
				"description": "Ottiene le fatture collegate ad un acconto o nota di credito\r per l'impostazione della visualizzazione delle rate\r GET /companies/scadenziario-fatture/fattura-for-acconto-ndc/{idAccontoNDC}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1489` — `ScadenziarioFattureController.GetFatturaForAccontoNDC()`.",
				"operationId": "ScadenziarioFattureController.GetFatturaForAccontoNDC",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1489",
				"parameters": [
					{
						"name": "idAccontoNDC",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fatture-by-ddt": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fatture By DDT",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2005` — `ScadenziarioFattureController.GetFattureByDDT()`.",
				"operationId": "ScadenziarioFattureController.GetFattureByDDT",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2005",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "numeroDDT",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDDT",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "supId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fatture-emesse-cantiere/{companyId}/{wsId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fatture Emesse Per Cantiere",
				"description": "Fatture emesse per cantiere (rollup padre+figli via ws_level/ws_sublevel).\r GET /companies/scadenziario-fatture/fatture-emesse-cantiere/{companyId}/{wsId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1358` — `ScadenziarioFattureController.GetFattureEmessePerCantiere()`.",
				"operationId": "ScadenziarioFattureController.GetFattureEmessePerCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1358",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "data"
						}
					},
					{
						"name": "orderDir",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "asc"
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fatture-emesse-cantiere/{companyId}/{wsId}/export": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Export Fatture Emesse Per Cantiere",
				"description": "Export Excel fatture emesse per cantiere. Riceve opzionalmente il nome del cantiere\r da usare come nome del foglio Excel.\r GET /companies/scadenziario-fatture/fatture-emesse-cantiere/{companyId}/{wsId}/export?wsName=\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1379` — `ScadenziarioFattureController.ExportFattureEmessePerCantiere()`.",
				"operationId": "ScadenziarioFattureController.ExportFattureEmessePerCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1379",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsName",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fatture-per-ndc": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture Per Nota Di Credito",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1200` — `ScadenziarioFattureController.GetListaFatturePerNotaDiCredito()`.",
				"operationId": "ScadenziarioFattureController.GetListaFatturePerNotaDiCredito",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1200",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fic/cliente/{cst_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Dati Fiscali Cliente",
				"description": "Dati fiscali/SDI di uno specifico cliente (per la scheda cliente).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2119` — `ScadenziarioFattureController.GetDatiFiscaliCliente()`.",
				"operationId": "ScadenziarioFattureController.GetDatiFiscaliCliente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2119",
				"parameters": [
					{
						"name": "cst_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Update Dati Fiscali Cliente",
				"description": "Aggiorna i dati fiscali/SDI di uno specifico cliente (dalla scheda cliente).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2126` — `ScadenziarioFattureController.UpdateDatiFiscaliCliente()`.",
				"operationId": "ScadenziarioFattureController.UpdateDatiFiscaliCliente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2126",
				"parameters": [
					{
						"name": "cst_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/DatiFiscaliDTO"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "boolean"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fic/dati-fiscali/{cmp_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Dati Fiscali Fic",
				"description": "Dati fiscali già noti del cliente dell'utente loggato (o null).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2091` — `ScadenziarioFattureController.GetDatiFiscaliFic()`.",
				"operationId": "ScadenziarioFattureController.GetDatiFiscaliFic",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2091",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fic/richiedi/{cmp_id}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Richiedi Fattura Fic",
				"description": "Richiesta fattura al checkout: crea la fattura attiva DA_INVIARE + upsert cliente.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2099` — `ScadenziarioFattureController.RichiediFatturaFic()`.",
				"operationId": "ScadenziarioFattureController.RichiediFatturaFic",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2099",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/RichiestaFatturaDTO"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fic/stampa/{fatId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Stampa Fattura Fic",
				"description": "Stampa fattura (PDF sincrono). Riusa la fattura di cortesia.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2145` — `ScadenziarioFattureController.StampaFatturaFic()`.",
				"operationId": "ScadenziarioFattureController.StampaFatturaFic",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2145",
				"parameters": [
					{
						"name": "fatId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/fic/stato/{cmp_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Stato Fattura Fic",
				"description": "Stato fattura per un ordine/prenotazione (per il pulsante di stampa nelle liste).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2137` — `ScadenziarioFattureController.GetStatoFatturaFic()`.",
				"operationId": "ScadenziarioFattureController.GetStatoFatturaFic",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2137",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "module",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "entityId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/flussi": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Flussi",
				"description": "Ottiene la lista dei flussi generati\r GET /scadenziario-fatture/flussi\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:826` — `ScadenziarioFattureController.GetFlussi()`.",
				"operationId": "ScadenziarioFattureController.GetFlussi",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:826",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "includeDeleted",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "100"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FlussoPagamento"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/genera-fattura-cortesia/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Fattura Cortesia",
				"description": "Genera PDF fattura di cortesia\r GET /scadenziario-fatture/genera-fattura-cortesia/{idFattura}\r\r Se la fattura è stata importata (ha un XML), genera il PDF dalla fattura elettronica.\r Se non è stata importata, genera il PDF usando i dati disponibili nel sistema.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2068` — `ScadenziarioFattureController.GeneraFatturaCortesia()`.",
				"operationId": "ScadenziarioFattureController.GeneraFatturaCortesia",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2068",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/genera-flusso": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Flusso Pagamento",
				"description": "Genera flusso pagamento\r POST /scadenziario-fatture/genera-flusso\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:847` — `ScadenziarioFattureController.GeneraFlussoPagamento()`.",
				"operationId": "ScadenziarioFattureController.GeneraFlussoPagamento",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:847",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/genera-pdf": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera PDF",
				"description": "Genera PDF dello scadenziario\r POST /companies/scadenziario-fatture/genera-pdf\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:696` — `ScadenziarioFattureController.GeneraPDF()`.",
				"operationId": "ScadenziarioFattureController.GeneraPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:696",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/genera-prospetto-excel": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Prospetto Excel",
				"description": "Genera il prospetto Excel dello scadenziario (un foglio per mese, solo rate non pagate)\r GET /scadenziario-fatture/genera-prospetto-excel\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:622` — `ScadenziarioFattureController.GeneraProspettoExcel()`.",
				"operationId": "ScadenziarioFattureController.GeneraProspettoExcel",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:622",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/gestione-clienti/{companyId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Gestione Clienti",
				"description": "Gestione Clienti: riepilogo fatture emesse + incassi per cliente con saldi.\r Nessun filtro applicato (per ora): ritorna tutto per la company.\r\r GET /companies/scadenziario-fatture/gestione-clienti/{companyId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1237` — `ScadenziarioFattureController.GetGestioneClienti()`.",
				"operationId": "ScadenziarioFattureController.GetGestioneClienti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1237",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/gestione-clienti/{companyId}/dettaglio/{cstId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Gestione Clienti Dettaglio",
				"description": "Dettaglio cliente (fatture + incassi formattati per la UI).\r GET /companies/scadenziario-fatture/gestione-clienti/{companyId}/dettaglio/{cstId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1288` — `ScadenziarioFattureController.GetGestioneClientiDettaglio()`.",
				"operationId": "ScadenziarioFattureController.GetGestioneClientiDettaglio",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1288",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cstId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "fatOrderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "data"
						}
					},
					{
						"name": "fatOrderDir",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "asc"
						}
					},
					{
						"name": "fatRighe",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "fatPagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					},
					{
						"name": "incOrderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "datapagamento"
						}
					},
					{
						"name": "incOrderDir",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "asc"
						}
					},
					{
						"name": "incRighe",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "incPagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/gestione-clienti/{companyId}/lista": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Gestione Clienti Lista",
				"description": "Lista paginata clienti con aggregati. Filtraggio server-side via parametro `cerca`.\r GET /companies/scadenziario-fatture/gestione-clienti/{companyId}/lista?cerca=&pagina=&righePagina=\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1251` — `ScadenziarioFattureController.GetGestioneClientiLista()`.",
				"operationId": "ScadenziarioFattureController.GetGestioneClientiLista",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1251",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/gestione-clienti/{companyId}/totale-crediti": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Gestione Clienti Totale Crediti",
				"description": "Totale crediti complessivo (somma dei saldi dei clienti che matchano cerca).\r GET /companies/scadenziario-fatture/gestione-clienti/{companyId}/totale-crediti?cerca=\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1269` — `ScadenziarioFattureController.GetGestioneClientiTotaleCrediti()`.",
				"operationId": "ScadenziarioFattureController.GetGestioneClientiTotaleCrediti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1269",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/gestione-clienti/export/{companyId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Export Gestione Clienti",
				"description": "Export Excel della Gestione Clienti. Ritorna { res: \"<filename>.zip\" } come gli altri\r download: il frontend apre `{imageBaseURL}/temp/<filename>`.\r\r GET /companies/scadenziario-fatture/gestione-clienti/export/{companyId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1404` — `ScadenziarioFattureController.ExportGestioneClienti()`.",
				"operationId": "ScadenziarioFattureController.ExportGestioneClienti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1404",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/anni/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Anni Fatture Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1614` — `ScadenziarioFattureController.GetAnniFattureImport()`.",
				"operationId": "ScadenziarioFattureController.GetAnniFattureImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1614",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "integer",
										"format": "int32"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/annulla-archivia/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Annulla Archivia Fattura Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1734` — `ScadenziarioFattureController.AnnullaArchiviaFatturaImport()`.",
				"operationId": "ScadenziarioFattureController.AnnullaArchiviaFatturaImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1734",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/archivia/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Archivia Fattura Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1720` — `ScadenziarioFattureController.ArchiviaFatturaImport()`.",
				"operationId": "ScadenziarioFattureController.ArchiviaFatturaImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1720",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/completa-con-acconti": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Completa Import Con Acconti",
				"description": "Completa l'import della fattura XML con collegamento acconti.\r POST /scadenziario-fatture/import/completa-con-acconti\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2596` — `ScadenziarioFattureController.CompletaImportConAcconti()`.",
				"operationId": "ScadenziarioFattureController.CompletaImportConAcconti",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2596",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/completa-con-nuovo-cliente": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Completa Import Con Nuovo Cliente",
				"description": "Completa l'import di una FATTURA ATTIVA creando prima il cliente dai dati forniti dall'utente.\r POST /scadenziario-fatture/import/completa-con-nuovo-cliente\r Payload: { \"cmpId\": int, \"tempFileName\": string, \"dataSDI\": string, \"datiCliente\": { denominazione, partitaIva, codiceFiscale, indirizzo, cap, comune, provincia } }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1822` — `ScadenziarioFattureController.CompletaImportConNuovoCliente()`.",
				"operationId": "ScadenziarioFattureController.CompletaImportConNuovoCliente",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1822",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/completa-con-nuovo-fornitore": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Completa Import Con Nuovo Fornitore",
				"description": "Completa l'import della fattura XML creando prima il fornitore e la banca\r se non esistono nel sistema.\r POST /scadenziario-fatture/import/completa-con-nuovo-fornitore\r\r Body atteso:\r {\r   \"cmpId\": number,\r   \"tempFileName\": string,\r   \"dataSDI\": string,\r   \"datiFornitore\": {\r     \"denominazione\": string,\r     \"partitaIva\": string,\r     \"codiceFiscale\": string,\r     \"indirizzo\": string,\r     \"cap\": string,\r     \"comune\": string,\r     \"provincia\": string\r   },\r   \"datiBanca\": {\r     \"nome\": string,\r     \"iban\": string\r   }\r }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1787` — `ScadenziarioFattureController.CompletaImportConNuovoFornitore()`.",
				"operationId": "ScadenziarioFattureController.CompletaImportConNuovoFornitore",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1787",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/completa-upload-xml": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Completa Import Fattura XML",
				"description": "Completa l'import di una fattura XML dopo associazione manuale DDT\r POST /scadenziario-fatture/import/completa-upload-xml\r\r Body atteso:\r {\r   \"cmpId\": number,\r   \"tempFileName\": string,\r   \"dataSDI\": string,\r   \"associazioniDDT\": [\r     { \"numeroDDT\": string, \"dataDDT\": string, \"numeriLinea\": [number, ...] },\r     ...\r   ]\r }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1694` — `ScadenziarioFattureController.CompletaImportFatturaXML()`.",
				"operationId": "ScadenziarioFattureController.CompletaImportFatturaXML",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1694",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/credenziali-bot": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Credenziali BOT",
				"description": "Ottiene le credenziali BOT\r GET /scadenziario-fatture/import/credenziali-bot\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1961` — `ScadenziarioFattureController.GetCredenzialiBOT()`.",
				"operationId": "ScadenziarioFattureController.GetCredenzialiBOT",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1961",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object",
									"additionalProperties": {
										"type": "string"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			},
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Save Credenziali BOT",
				"description": "Salva le credenziali BOT\r POST /scadenziario-fatture/import/credenziali-bot\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1983` — `ScadenziarioFattureController.SaveCredenzialiBOT()`.",
				"operationId": "ScadenziarioFattureController.SaveCredenzialiBOT",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1983",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"403": {
						"description": "Non autorizzato per il ruolo dell’utente"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/delete/{idFattura}": {
			"delete": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Delete Fattura Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1748` — `ScadenziarioFattureController.DeleteFatturaImport()`.",
				"operationId": "ScadenziarioFattureController.DeleteFatturaImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1748",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/download-pdf": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Stampa Fattura PDF",
				"description": "Download PDF di una fattura (con allegati se presenti, genera ZIP)\r GET /scadenziario-fatture/import/download-pdf\r @param stile \"ade\" per formato Agenzia delle Entrate, \"asso\" per formato Assosoftware (default: ade)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1855` — `ScadenziarioFattureController.StampaFatturaPDF()`.",
				"operationId": "ScadenziarioFattureController.StampaFatturaPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1855",
				"parameters": [
					{
						"name": "rel_path",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idFattura",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "stile",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "ade"
						}
					},
					{
						"name": "zipFolderName",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StringObject"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/esporta": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Esporta Fatture Import",
				"description": "Esporta fatture import in Excel o PDF\r GET /scadenziario-fatture/import/esporta\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1928` — `ScadenziarioFattureController.EsportaFattureImport()`.",
				"operationId": "ScadenziarioFattureController.EsportaFattureImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1928",
				"parameters": [
					{
						"name": "descrizione",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "idImpresa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "dataSDIDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataSDIA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "formato",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/get/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Fattura Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1627` — `ScadenziarioFattureController.GetFatturaImport()`.",
				"operationId": "ScadenziarioFattureController.GetFatturaImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1627",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/FatturaSFImport"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/lista": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1562` — `ScadenziarioFattureController.GetListaFattureImport()`.",
				"operationId": "ScadenziarioFattureController.GetListaFattureImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1562",
				"parameters": [
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "supplierId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "-1"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cantiereId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSFImport"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/totali": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Totali Fatture Import",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1588` — `ScadenziarioFattureController.GetTotaliFattureImport()`.",
				"operationId": "ScadenziarioFattureController.GetTotaliFattureImport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1588",
				"parameters": [
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "supplierId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "-1"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cantiereId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/upload-xml/{idFattura}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Import Fattura XML",
				"description": "Upload e import di una fattura XML\r POST /scadenziario-fatture/import/upload-xml\r\r Restituisce:\r - Se l'import può essere completato direttamente: { richiedeAssociazioneManualeDDT: false, fatturaId: number }\r - Se richiede associazione manuale DDT: { richiedeAssociazioneManualeDDT: true, tempFileName: string,\r   ddtDaAssociare: [...], righeDettaglio: [...], numeroFattura: string, dataFattura: string, ... }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1650` — `ScadenziarioFattureController.ImportFatturaXML()`.",
				"operationId": "ScadenziarioFattureController.ImportFatturaXML",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1650",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataSDI",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "fromScheduler",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/view-pdf-temp": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "View Fattura PDFTemp",
				"description": "Visualizza PDF di una fattura elettronica da file temporaneo (pre-import)\r GET /scadenziario-fatture/import/view-pdf-temp\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1905` — `ScadenziarioFattureController.ViewFatturaPDFTemp()`.",
				"operationId": "ScadenziarioFattureController.ViewFatturaPDFTemp",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1905",
				"parameters": [
					{
						"name": "tempFileName",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StringObject"
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio"
					}
				}
			}
		},
		"/api/scadenziario-fatture/import/view-pdf/{idFatturaImport}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "View Fattura PDF",
				"description": "Visualizza PDF di una fattura elettronica con lista allegati\r Restituisce { pdfPath: \"...\", attachments: [{ name: \"...\", path: \"...\" }, ...] }\r GET /scadenziario-fatture/import/view-pdf/{idFatturaImport}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1883` — `ScadenziarioFattureController.ViewFatturaPDF()`.",
				"operationId": "ScadenziarioFattureController.ViewFatturaPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1883",
				"parameters": [
					{
						"name": "idFatturaImport",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio"
					}
				}
			}
		},
		"/api/scadenziario-fatture/invia-flusso/{flussoId}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Invia Flusso",
				"description": "Invia un flusso di pagamento (Preparato -> Inviato)\r POST /scadenziario-fatture/invia-flusso/{flussoId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:885` — `ScadenziarioFattureController.InviaFlusso()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "ScadenziarioFattureController.InviaFlusso",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:885",
				"parameters": [
					{
						"name": "flussoId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/lista": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture SF",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:88` — `ScadenziarioFattureController.GetListaFattureSF()`.",
				"operationId": "ScadenziarioFattureController.GetListaFattureSF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:88",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/FatturaSF"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/manual-validate/{cmp_id}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Manual Validate Fattura",
				"description": "Convalida manuale di una fattura auto-creata dall'import\r POST /scadenziario-fatture/manual-validate/{cmp_id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:351` — `ScadenziarioFattureController.ManualValidateFattura()`.",
				"operationId": "ScadenziarioFattureController.ManualValidateFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:351",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FatturaSF"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/prospetto-json": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Prospetto Json",
				"description": "Prospetto scadenziario JSON (per la pagina web, un tab per mese)\r GET /scadenziario-fatture/prospetto-json\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:574` — `ScadenziarioFattureController.GetProspettoJson()`.",
				"operationId": "ScadenziarioFattureController.GetProspettoJson",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:574",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "meseTab",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/prossimo-numero-manodopera": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Prossimo Numero Manodopera",
				"description": "Anteprima del prossimo numero progressivo per fatture \"Mano d'opera\"\r (per fornitore, reset per anno). Ritorna null se la tipologia non e' Mano d'opera.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:547` — `ScadenziarioFattureController.GetProssimoNumeroManodopera()`.",
				"operationId": "ScadenziarioFattureController.GetProssimoNumeroManodopera",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:547",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "supId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tpfId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/rate-all/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get All Rate",
				"description": "Restituisce TUTTE le rate (pagate + non pagate) di una fattura, con data pagamento.\r Replica DNN ViewRateFattura: popup con tabella DataScadenza | Importo | DataPagamento.\r GET /scadenziario-fatture/rate-all/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1548` — `ScadenziarioFattureController.GetAllRate()`.",
				"operationId": "ScadenziarioFattureController.GetAllRate",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1548",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ImportoRata"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/rate-da-pagare": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Rate Da Pagare",
				"description": "Ottiene le rate pronte per il pagamento (stato AUTORIZZATA)\r GET /scadenziario-fatture/rate-da-pagare\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:807` — `ScadenziarioFattureController.GetRateDaPagare()`.",
				"operationId": "ScadenziarioFattureController.GetRateDaPagare",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:807",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "bpfId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/RataDaPagare"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/rate-non-pagate/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Rate Non Pagate",
				"description": "Restituisce le rate non pagate di una fattura (idFattura).\r Usata dal FE per:\r - Creazione NDC con abbinamenti: mostrare le rate della fattura target tra cui scegliere\r - Modifica fattura con acconti/NDC: determinare su quale rata applicare un abbinamento\r GET /companies/scadenziario-fatture/rate-non-pagate/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1529` — `ScadenziarioFattureController.GetRateNonPagate()`.",
				"operationId": "ScadenziarioFattureController.GetRateNonPagate",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1529",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/ImportoRata"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/rate/{fimpId}/pdf-riconciliazione-temp": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Riconciliazione Pdf Per Rata Temp",
				"description": "PDF della pagina riconciliata di una rata (se esistente).\r GET /scadenziario-fatture/rate/{fimpId}/pdf-riconciliazione-temp\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1098` — `ScadenziarioFattureController.RiconciliazionePdfPerRataTemp()`.",
				"operationId": "ScadenziarioFattureController.RiconciliazionePdfPerRataTemp",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1098",
				"parameters": [
					{
						"name": "fimpId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/registro-fatture-emesse/{companyId}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Registro Fatture Emesse",
				"description": "Registro Fatture Emesse di un anno + riporto saldo anno precedente.\r GET /companies/scadenziario-fatture/registro-fatture-emesse/{companyId}?anno=\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1314` — `ScadenziarioFattureController.GetRegistroFattureEmesse()`.",
				"operationId": "ScadenziarioFattureController.GetRegistroFattureEmesse",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1314",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "data"
						}
					},
					{
						"name": "orderDir",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "asc"
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/registro-fatture-emesse/{companyId}/export": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Export Registro Fatture Emesse",
				"description": "Export Excel Registro Fatture Emesse.\r GET /companies/scadenziario-fatture/registro-fatture-emesse/{companyId}/export?anno=\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1335` — `ScadenziarioFattureController.ExportRegistroFattureEmesse()`.",
				"operationId": "ScadenziarioFattureController.ExportRegistroFattureEmesse",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1335",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "portalBaseUrl",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/revalidate/{cmp_id}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Revalidate Fattura",
				"description": "Riconvalida una fattura esistente dopo associazione DDT\r POST /scadenziario-fatture/revalidate/{cmp_id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:327` — `ScadenziarioFattureController.RevalidateFattura()`.",
				"operationId": "ScadenziarioFattureController.RevalidateFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:327",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FatturaSF"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconcilia-pdf": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Riconcilia Pdf Preview",
				"description": "Riconciliazione bancaria CROSS-FLUSSO - PREVIEW\r Carica un PDF di banca, parsa ogni pagina e cerca match in tutte le erogazioni\r dei flussi INVIATO/CONFERMATO_PARZIALE della company indicata.\r\r POST /scadenziario-fatture/riconcilia-pdf?companyId=X\r Body multipart: file (PDF)\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:907` — `ScadenziarioFattureController.RiconciliaPdfPreview()`.",
				"operationId": "ScadenziarioFattureController.RiconciliaPdfPreview",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:907",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "forzaTipo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconcilia-pdf-forza": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Riconcilia Pdf Forza",
				"description": "Riconciliazione - PREVIEW con tipo forzato dall'utente (caso \"formato non riconosciuto\").\r Processa un PDF gia' caricato in temp senza re-upload.\r\r POST /scadenziario-fatture/riconcilia-pdf-forza\r Body JSON: { companyId, tempFilePath, forzaTipo: \"BONIFICO\" | \"RIBA\" }\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:933` — `ScadenziarioFattureController.RiconciliaPdfForza()`.",
				"operationId": "ScadenziarioFattureController.RiconciliaPdfForza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:933",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconciliazioni": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Riconciliazioni",
				"description": "Storico riconciliazioni: lista master per company.\r GET /scadenziario-fatture/riconciliazioni?companyId=X\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1048` — `ScadenziarioFattureController.GetRiconciliazioni()`.",
				"operationId": "ScadenziarioFattureController.GetRiconciliazioni",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1048",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconciliazioni/{rpdfId}/annulla": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Annulla Riconciliazione",
				"description": "Annulla una riconciliazione: rollback rate, cancella audit + cartella file.\r POST /scadenziario-fatture/riconciliazioni/{rpdfId}/annulla\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1130` — `ScadenziarioFattureController.AnnullaRiconciliazione()`.",
				"operationId": "ScadenziarioFattureController.AnnullaRiconciliazione",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1130",
				"parameters": [
					{
						"name": "rpdfId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconciliazioni/{rpdfId}/dettaglio": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Riconciliazione Dettaglio",
				"description": "Storico riconciliazioni: dettaglio righe per pagina di un PDF.\r GET /scadenziario-fatture/riconciliazioni/{rpdfId}/dettaglio\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1063` — `ScadenziarioFattureController.GetRiconciliazioneDettaglio()`.",
				"operationId": "ScadenziarioFattureController.GetRiconciliazioneDettaglio",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1063",
				"parameters": [
					{
						"name": "rpdfId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconciliazioni/{rpdfId}/download-zip": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Riconciliazione Download Zip",
				"description": "ZIP completo di una riconciliazione (full + pagine + fornitori/).\r GET /scadenziario-fatture/riconciliazioni/{rpdfId}/download-zip\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1114` — `ScadenziarioFattureController.RiconciliazioneDownloadZip()`.",
				"operationId": "ScadenziarioFattureController.RiconciliazioneDownloadZip",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1114",
				"parameters": [
					{
						"name": "rpdfId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/riconciliazioni/{rpdfId}/pdf-temp": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Riconciliazione Pdf Temp",
				"description": "Copia il PDF (originale o pagina) della riconciliazione in pathTemp/pdf e\r ritorna { res: \"pdf/uuid.pdf\" } per visualizzazione/download lato frontend.\r\r GET /scadenziario-fatture/riconciliazioni/{rpdfId}/pdf-temp[?ricId=X]\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1081` — `ScadenziarioFattureController.RiconciliazionePdfTemp()`.",
				"operationId": "ScadenziarioFattureController.RiconciliazionePdfTemp",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1081",
				"parameters": [
					{
						"name": "rpdfId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ricId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/ripristina/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Ripristina Fattura",
				"description": "Ripristina una fattura archiviata (fat_stato_convalida = 0)\r GET /scadenziario-fatture/ripristina/{idFattura}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:392` — `ScadenziarioFattureController.RipristinaFattura()`.",
				"operationId": "ScadenziarioFattureController.RipristinaFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:392",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Scadenze",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:481` — `ScadenziarioFattureController.GetListaScadenze()`.",
				"operationId": "ScadenziarioFattureController.GetListaScadenze",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:481",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Scadenza"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze_tipo_pagamento": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Scadenze Tipo Pagamento",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:498` — `ScadenziarioFattureController.GetListaScadenzeTipoPagamento()`.",
				"operationId": "ScadenziarioFattureController.GetListaScadenzeTipoPagamento",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:498",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Scadenza"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze-raggruppate": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Scadenze Raggruppate",
				"description": "Ottiene le scadenze raggruppate per data scadenza (per vista calendario)\r Restituisce solo rate non pagate (stato < 3)\r GET /scadenziario-fatture/scadenze-raggruppate\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:515` — `ScadenziarioFattureController.GetScadenzeRaggruppate()`.",
				"operationId": "ScadenziarioFattureController.GetScadenzeRaggruppate",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:515",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "-1"
						}
					},
					{
						"name": "isAttiva",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze/add/{companyId}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Add Scadenza",
				"description": "POST /scadenziario-fatture/scadenze/add/{companyId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2624` — `ScadenziarioFattureController.AddScadenza()`.",
				"operationId": "ScadenziarioFattureController.AddScadenza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2624",
				"parameters": [
					{
						"name": "companyId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze/delete/{scadenzaId}": {
			"delete": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Delete Scadenza",
				"description": "DELETE /scadenziario-fatture/scadenze/delete/{scadenzaId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2666` — `ScadenziarioFattureController.DeleteScadenza()`.",
				"operationId": "ScadenziarioFattureController.DeleteScadenza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2666",
				"parameters": [
					{
						"name": "scadenzaId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scadenze/update/{scadenzaId}": {
			"put": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Update Scadenza",
				"description": "PUT /scadenziario-fatture/scadenze/update/{scadenzaId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2645` — `ScadenziarioFattureController.UpdateScadenza()`.",
				"operationId": "ScadenziarioFattureController.UpdateScadenza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2645",
				"parameters": [
					{
						"name": "scadenzaId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/scarica-allegato/{idFattura}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Scarica Allegato Fattura",
				"description": "Scarica allegato fattura\r GET /companies/scadenziario-fatture/scarica-allegato/{idFattura}\r\r Nota: Questo metodo dovrebbe restituire un file blob\r L'implementazione dipende da come sono gestiti i file allegati nel sistema\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1169` — `ScadenziarioFattureController.ScaricaAllegatoFattura()`.",
				"operationId": "ScadenziarioFattureController.ScaricaAllegatoFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1169",
				"parameters": [
					{
						"name": "idFattura",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipo",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					},
					"501": {
						"description": "Non implementato"
					}
				}
			}
		},
		"/api/scadenziario-fatture/scheduler/realign-xml": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Realign Xml",
				"description": "Riallinea il file XML fisico di una fattura già importata (matching per nome SDI),\r aggiornando SOLO il campo fatimp_path di sf_fatture_import. Nessun altro dato viene toccato.\r Pensato per il bot: quando i file XML sul disco sono stati cancellati, il bot scarica di\r nuovo gli XML da TeamSystem e per ogni file chiama questo endpoint.\r\r POST /companies/scadenziario-fatture/scheduler/realign-xml\r Body multipart: file (XML), sdiFileName (nome file SDI es. \"IT0164179070220267_03KT3.xml\"), companyId\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1426` — `ScadenziarioFattureController.RealignXml()`.",
				"operationId": "ScadenziarioFattureController.RealignXml",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1426",
				"parameters": [
					{
						"name": "sdiFileName",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/sgancia-fattura": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Sgancia Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:770` — `ScadenziarioFattureController.SganciaFattura()`.",
				"operationId": "ScadenziarioFattureController.SganciaFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:770",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/tipologie": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Tipologia Fat",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:531` — `ScadenziarioFattureController.GetListaTipologiaFat()`.",
				"operationId": "ScadenziarioFattureController.GetListaTipologiaFat",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:531",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TipologiaFat"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/totali": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Lista Fatture SF Totali",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:131` — `ScadenziarioFattureController.GetListaFattureSF_Totali()`.",
				"operationId": "ScadenziarioFattureController.GetListaFattureSF_Totali",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:131",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/update-note-fattura/{fatId}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Update Note Fattura",
				"description": "Aggiorna le note di una fattura (fat_note su sf_fatture)\r POST /companies/scadenziario-fatture/update-note-fattura/{fatId}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:757` — `ScadenziarioFattureController.UpdateNoteFattura()`.",
				"operationId": "ScadenziarioFattureController.UpdateNoteFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:757",
				"parameters": [
					{
						"name": "fatId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/update-note-rata/{idRata}/{replicaNota}": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Update Note Rata",
				"description": "Aggiorna le note di una rata\r POST /companies/scadenziario-fatture/update-note-rata\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:740` — `ScadenziarioFattureController.UpdateNoteRata()`.",
				"operationId": "ScadenziarioFattureController.UpdateNoteRata",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:740",
				"parameters": [
					{
						"name": "idRata",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "replicaNota",
						"in": "path",
						"required": true,
						"schema": {
							"type": "boolean"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/update/{cmp_id}": {
			"put": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Update Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:281` — `ScadenziarioFattureController.UpdateFattura()`.",
				"operationId": "ScadenziarioFattureController.UpdateFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:281",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/FatturaSF"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/upload-allegato": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Upload Allegato Fattura",
				"description": "Upload allegato fattura (per fatture già esistenti)\r POST /companies/scadenziario-fatture/upload-allegato\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1467` — `ScadenziarioFattureController.UploadAllegatoFattura()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "ScadenziarioFattureController.UploadAllegatoFattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1467",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "idFattura",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idFolderRepository",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/upload-allegato-temp": {
			"post": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Upload Allegato Fattura Temp",
				"description": "Upload temporaneo allegato fattura\r Il file viene salvato in una cartella temporanea e ritorna il path\r POST /companies/scadenziario-fatture/upload-allegato-temp\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1449` — `ScadenziarioFattureController.UploadAllegatoFatturaTemp()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "ScadenziarioFattureController.UploadAllegatoFatturaTemp",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:1449",
				"requestBody": {
					"required": true,
					"content": {
						"multipart/form-data": {
							"schema": {
								"type": "object",
								"properties": {
									"file": {
										"type": "string",
										"format": "binary"
									}
								},
								"required": [
									"file"
								]
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/vehicle-costs": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Vehicle Costs",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2440` — `ScadenziarioFattureController.GetVehicleCosts()`.",
				"operationId": "ScadenziarioFattureController.GetVehicleCosts",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2440",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/vehicles/{cmp_id}": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Get Vehicles By Company",
				"description": "==================== FATTURE AUTOMEZZI ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2428` — `ScadenziarioFattureController.GetVehiclesByCompany()`.",
				"operationId": "ScadenziarioFattureController.GetVehiclesByCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2428",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"type": "object"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/zip-bonifici-rate": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Zip Bonifici Rate",
				"description": "Genera ZIP con le pagine PDF di riconciliazione bancaria delle rate riconciliate,\r organizzate in sottocartelle per fornitore. Visibile solo con statoRata=rate_riconciliate.\r GET /scadenziario-fatture/zip-bonifici-rate\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2163` — `ScadenziarioFattureController.GeneraZipBonificiRate()`.",
				"operationId": "ScadenziarioFattureController.GeneraZipBonificiRate",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2163",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/zip-fatture-cortesia": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Zip Fatture Cortesia",
				"description": "Genera ZIP con fatture di cortesia basato sui filtri di ricerca\r GET /scadenziario-fatture/genera-zip-fatture-cortesia\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2208` — `ScadenziarioFattureController.GeneraZipFattureCortesia()`.",
				"operationId": "ScadenziarioFattureController.GeneraZipFattureCortesia",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2208",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataPagamentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataPagamentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataScadenzaA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "mese",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ritenutaAcconto",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "ritenutaGaranzia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoPagata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoRata",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "durc",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "note",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "tipoPagamento",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "responsabilitaSolidale",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean"
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dataInserimentoDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataInserimentoA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/scadenziario-fatture/zip-fatture-pdf": {
			"get": {
				"tags": [
					"ScadenziarioFatture"
				],
				"summary": "Genera Zip Fatture PDF",
				"description": "Genera ZIP con PDF fatture elettroniche (stile ade o asso).\r Se fattureIds è specificato, genera solo quelle fatture; altrimenti usa i filtri.\r GET /scadenziario-fatture/zip-fatture-pdf\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2254` — `ScadenziarioFattureController.GeneraZipFatturePDF()`.",
				"operationId": "ScadenziarioFattureController.GeneraZipFatturePDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/ScadenziarioFattureController.java:2254",
				"parameters": [
					{
						"name": "companyId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "stile",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "ade"
						}
					},
					{
						"name": "fattureIds",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "idFornitore",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idTipologia",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "statoConvalida",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dataDocA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "categoriaId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "idImpresa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/schede-cantieri": {
			"get": {
				"tags": [
					"SchedeCantier"
				],
				"summary": "get Schede Cantieri",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:48` — `SchedeCantierController.getSchedeCantieri()`.",
				"operationId": "SchedeCantierController.getSchedeCantieri",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:48",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "search",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "stato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "order",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "ws_name"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SchedaCantiereRiga"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/schede-cantieri/descendants/{wsId}": {
			"get": {
				"tags": [
					"SchedeCantier"
				],
				"summary": "get Descendants",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:136` — `SchedeCantierController.getDescendants()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "SchedeCantierController.getDescendants",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:136",
				"parameters": [
					{
						"name": "wsId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "string"
						},
						"description": "Variabile di path non legata ad alcun parametro del metodo: il valore viene ignorato dal servizio."
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/schede-cantieri/dettaglio": {
			"get": {
				"tags": [
					"SchedeCantier"
				],
				"summary": "get Scheda Cantiere",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:68` — `SchedeCantierController.getSchedaCantiere()`.\n\nTipo di risposta non risolto dal generatore (`SchedaCantiereResponse`).",
				"operationId": "SchedeCantierController.getSchedaCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:68",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "rollup",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/schede-cantieri/pdf": {
			"get": {
				"tags": [
					"SchedeCantier"
				],
				"summary": "genera PDF",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:101` — `SchedeCantierController.generaPDF()`.",
				"operationId": "SchedeCantierController.generaPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SchedeCantierController.java:101",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "wsId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "anno",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "dataDa",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "dataA",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "rollup",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "nomeCantiere",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio"
					}
				}
			}
		},
		"/api/sopralluoghi/add": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Insert Sopralluogo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:61` — `SopralluoghiController.InsertSopralluogo()`.",
				"operationId": "SopralluoghiController.InsertSopralluogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:61",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Sopralluogo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/annulla": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Annulla",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:120` — `SopralluoghiController.Annulla()`.",
				"operationId": "SopralluoghiController.Annulla",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:120",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/contabilizza": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Contabilizza",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:110` — `SopralluoghiController.Contabilizza()`.",
				"operationId": "SopralluoghiController.Contabilizza",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:110",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/convalida": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Convalida",
				"description": "── flusso stati ──\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:105` — `SopralluoghiController.Convalida()`.",
				"operationId": "SopralluoghiController.Convalida",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:105",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "costo_effettivo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "number"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/del/{sl_id}": {
			"delete": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Delete Sopralluogo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:77` — `SopralluoghiController.DeleteSopralluogo()`.",
				"operationId": "SopralluoghiController.DeleteSopralluogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:77",
				"parameters": [
					{
						"name": "sl_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/fattura": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Fattura",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:115` — `SopralluoghiController.Fattura()`.",
				"operationId": "SopralluoghiController.Fattura",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:115",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/get": {
			"get": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Get Sopralluogo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:55` — `SopralluoghiController.GetSopralluogo()`.",
				"operationId": "SopralluoghiController.GetSopralluogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:55",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Sopralluogo"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/list": {
			"get": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Get Sopralluoghi",
				"description": "Lista unificata (em + lo + general). ws_id>0 = solo quel cantiere; cmp_id>0 = scoping nostri + RFI; origin filtro provenienza.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:37` — `SopralluoghiController.GetSopralluoghi()`.",
				"operationId": "SopralluoghiController.GetSopralluoghi",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:37",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "origin",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "data_da",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "data_a",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Sopralluogo"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/luoghi": {
			"get": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Get Luoghi",
				"description": "── luoghi (cantieri + stazioni) per il filtro ──\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:99` — `SopralluoghiController.GetLuoghi()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "SopralluoghiController.GetLuoghi",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:99",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/reset_stato": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Reset Stato",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:125` — `SopralluoghiController.ResetStato()`.",
				"operationId": "SopralluoghiController.ResetStato",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:125",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/setfolder": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Set Folder",
				"description": "── cartella documentale ──\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:92` — `SopralluoghiController.SetFolder()`.",
				"operationId": "SopralluoghiController.SetFolder",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:92",
				"parameters": [
					{
						"name": "sl_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "folder_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/tipi": {
			"get": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Get Tipi",
				"description": "── tipologie intervento (lookup) ──\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:86` — `SopralluoghiController.GetTipi()`.",
				"operationId": "SopralluoghiController.GetTipi",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:86",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SopralluogoTipo"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sopralluoghi/upd": {
			"post": {
				"tags": [
					"Sopralluoghi"
				],
				"summary": "Update Sopralluogo",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:69` — `SopralluoghiController.UpdateSopralluogo()`.",
				"operationId": "SopralluoghiController.UpdateSopralluogo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SopralluoghiController.java:69",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Sopralluogo"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/add": {
			"post": {
				"tags": [
					"SubAff"
				],
				"summary": "Add Sub Aff",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:79` — `SubAffController.AddSubAff()`.",
				"operationId": "SubAffController.AddSubAff",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:79",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SubAff"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/check-residuo": {
			"get": {
				"tags": [
					"SubAff"
				],
				"summary": "Check Residuo",
				"description": "Verifica residuo subappaltabile del Contratto Applicativo (replica DNN controllaResiduo).\r Ritorna { ok, message, gia_subappaltato, nuovo_totale, soglia, supero }.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:124` — `SubAffController.CheckResiduo()`.",
				"operationId": "SubAffController.CheckResiduo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:124",
				"parameters": [
					{
						"name": "cnt_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sub_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "importo",
						"in": "query",
						"required": true,
						"schema": {
							"type": "number"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/del/{sub_id}": {
			"delete": {
				"tags": [
					"SubAff"
				],
				"summary": "Del Sub Aff",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:96` — `SubAffController.DelSubAff()`.",
				"operationId": "SubAffController.DelSubAff",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:96",
				"parameters": [
					{
						"name": "sub_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/get/{sub_id}": {
			"get": {
				"tags": [
					"SubAff"
				],
				"summary": "Get Sub Aff",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:71` — `SubAffController.GetSubAff()`.",
				"operationId": "SubAffController.GetSubAff",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:71",
				"parameters": [
					{
						"name": "sub_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/SubAff"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/list": {
			"get": {
				"tags": [
					"SubAff"
				],
				"summary": "Get Sub Aff List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:53` — `SubAffController.GetSubAffList()`.",
				"operationId": "SubAffController.GetSubAffList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:53",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cnt_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SubAff"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/pdf/list": {
			"get": {
				"tags": [
					"SubAff"
				],
				"summary": "Pdf List",
				"description": "Genera PDF lista Sub-Affidamenti filtrata (replica DNN generaPDF).\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:134` — `SubAffController.PdfList()`.",
				"operationId": "SubAffController.PdfList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:134",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cnt_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "sup_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "status",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "dateFrom",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "dateTo",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/pdf/single/{sub_id}": {
			"get": {
				"tags": [
					"SubAff"
				],
				"summary": "Pdf Single",
				"description": "Genera PDF singolo Sub-Affidamento. Ritorna { res: filename } salvato in pathTemp.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:105` — `SubAffController.PdfSingle()`.",
				"operationId": "SubAffController.PdfSingle",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:105",
				"parameters": [
					{
						"name": "sub_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/sub-aff/upd/{sub_id}": {
			"put": {
				"tags": [
					"SubAff"
				],
				"summary": "Upd Sub Aff",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:87` — `SubAffController.UpdSubAff()`.",
				"operationId": "SubAffController.UpdSubAff",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SubAffController.java:87",
				"parameters": [
					{
						"name": "sub_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/SubAff"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/{supplierId}/utente/{utente}/add": {
			"post": {
				"tags": [
					"Suppliers"
				],
				"summary": "add User To Supplier",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:113` — `SuppliersController.addUserToSupplier()`.",
				"operationId": "SuppliersController.addUserToSupplier",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:113",
				"parameters": [
					{
						"name": "supplierId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "utente",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/{supplierId}/utente/{utente}/remove": {
			"delete": {
				"tags": [
					"Suppliers"
				],
				"summary": "remove User From Department",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:119` — `SuppliersController.removeUserFromDepartment()`.",
				"operationId": "SuppliersController.removeUserFromDepartment",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:119",
				"parameters": [
					{
						"name": "supplierId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "utente",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/{supplierId}/utenti": {
			"get": {
				"tags": [
					"Suppliers"
				],
				"summary": "get Users From Suppliers",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:101` — `SuppliersController.getUsersFromSuppliers()`.",
				"operationId": "SuppliersController.getUsersFromSuppliers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:101",
				"parameters": [
					{
						"name": "supplierId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/User"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/{supplierId}/utenticol": {
			"get": {
				"tags": [
					"Suppliers"
				],
				"summary": "get Users From Collaborators",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:107` — `SuppliersController.getUsersFromCollaborators()`.",
				"operationId": "SuppliersController.getUsersFromCollaborators",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:107",
				"parameters": [
					{
						"name": "supplierId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/User"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/add": {
			"post": {
				"tags": [
					"Suppliers"
				],
				"summary": "Insert Supplier",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:77` — `SuppliersController.InsertSupplier()`.",
				"operationId": "SuppliersController.InsertSupplier",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:77",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Supplier"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/del/{sup_id}": {
			"delete": {
				"tags": [
					"Suppliers"
				],
				"summary": "Delete Supplier",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:90` — `SuppliersController.DeleteSupplier()`.",
				"operationId": "SuppliersController.DeleteSupplier",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:90",
				"parameters": [
					{
						"name": "sup_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/get": {
			"get": {
				"tags": [
					"Suppliers"
				],
				"summary": "Get Supplier",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:54` — `SuppliersController.GetSupplier()`.",
				"operationId": "SuppliersController.GetSupplier",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:54",
				"parameters": [
					{
						"name": "sup_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Supplier"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/list": {
			"get": {
				"tags": [
					"Suppliers"
				],
				"summary": "Get Suppliers",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:38` — `SuppliersController.GetSuppliers()`.",
				"operationId": "SuppliersController.GetSuppliers",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:38",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Supplier"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/sectors": {
			"get": {
				"tags": [
					"Suppliers"
				],
				"summary": "Get Sectors",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:125` — `SuppliersController.GetSectors()`.",
				"operationId": "SuppliersController.GetSectors",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:125",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/SupplierSector"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/suppliers/upd": {
			"post": {
				"tags": [
					"Suppliers"
				],
				"summary": "Update Supplier",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:65` — `SuppliersController.UpdateSupplier()`.",
				"operationId": "SuppliersController.UpdateSupplier",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/SuppliersController.java:65",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Supplier"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/{id}": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "get Transport Document",
				"description": "Ottiene un singolo documento di trasporto\r GET /transport-document/{id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:120` — `TransportDocumentController.getTransportDocument()`.",
				"operationId": "TransportDocumentController.getTransportDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:120",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/TransportDocument"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"404": {
						"description": "Risorsa non trovata"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/add": {
			"post": {
				"tags": [
					"TransportDocument"
				],
				"summary": "add Transport Document",
				"description": "Inserisce un nuovo documento di trasporto\r POST /transport-document/add\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:142` — `TransportDocumentController.addTransportDocument()`.",
				"operationId": "TransportDocumentController.addTransportDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:142",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/TransportDocument"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/confirm": {
			"post": {
				"tags": [
					"TransportDocument"
				],
				"summary": "confirm Document",
				"description": "Conferma e salva un documento DDT dopo la revisione manuale\r POST /transport-document/confirm\r\r Dopo che l'utente ha rivisto e corretto i dati estratti dall'OCR,\r questo endpoint salva definitivamente il documento nel database\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:202` — `TransportDocumentController.confirmDocument()`.",
				"operationId": "TransportDocumentController.confirmDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:202",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/TransportDocument"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/create-from-movements": {
			"post": {
				"tags": [
					"TransportDocument"
				],
				"summary": "create DDTFrom Movements",
				"description": "Crea un DDT da movimenti di magazzino selezionati\r POST /transport-document/create-from-movements\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:267` — `TransportDocumentController.createDDTFromMovements()`.",
				"operationId": "TransportDocumentController.createDDTFromMovements",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:267",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/CreateDDTFromMovementsRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/delete/{id}": {
			"delete": {
				"tags": [
					"TransportDocument"
				],
				"summary": "delete Transport Document",
				"description": "Elimina un documento di trasporto\r DELETE /transport-document/delete/{id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:180` — `TransportDocumentController.deleteTransportDocument()`.",
				"operationId": "TransportDocumentController.deleteTransportDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:180",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/download-ddt-async/{drflId}": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "download Ddt Async",
				"description": "Download asincrono di un DDT (file presente nel documentary). Accoda un job\r che recupera il file via DocumentaleClient e lo rende disponibile in \"I miei\r download\". Il token JWT viaggia nei params perche' la chiamata e' autenticata.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:54` — `TransportDocumentController.downloadDdtAsync()`.",
				"operationId": "TransportDocumentController.downloadDdtAsync",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:54",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "drflId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmpId",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "label",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ExportJob"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/generate-pdf/{id}": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "generate DDTPdf",
				"description": "Genera/Rigenera il PDF di un DDT esistente\r GET /transport-document/generate-pdf/{id}\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:316` — `TransportDocumentController.generateDDTPdf()`.",
				"operationId": "TransportDocumentController.generateDDTPdf",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:316",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/lista": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "get Transport Documents",
				"description": "Ottiene la lista dei documenti di trasporto\r GET /transport-document/lista\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:80` — `TransportDocumentController.getTransportDocuments()`.",
				"operationId": "TransportDocumentController.getTransportDocuments",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:80",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "orderBy",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "righePagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "pagina",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					},
					{
						"name": "associato",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "solo_miei",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TransportDocument"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/movements-for-ddt": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "get Movements For DDT",
				"description": "Ottiene i movimenti di magazzino disponibili per creare un DDT\r GET /transport-document/movements-for-ddt\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:226` — `TransportDocumentController.getMovementsForDDT()`.",
				"operationId": "TransportDocumentController.getMovementsForDDT",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:226",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "50"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WarehouseMovement"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/next-number": {
			"get": {
				"tags": [
					"TransportDocument"
				],
				"summary": "get Next DDTNumber",
				"description": "Ottiene il prossimo numero DDT suggerito\r GET /transport-document/next-number\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:248` — `TransportDocumentController.getNextDDTNumber()`.",
				"operationId": "TransportDocumentController.getNextDDTNumber",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:248",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "year",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "string"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/transport-document/update": {
			"put": {
				"tags": [
					"TransportDocument"
				],
				"summary": "update Transport Document",
				"description": "Aggiorna un documento di trasporto esistente\r PUT /transport-document/update\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:161` — `TransportDocumentController.updateTransportDocument()`.",
				"operationId": "TransportDocumentController.updateTransportDocument",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/TransportDocumentController.java:161",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/TransportDocument"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/warehouse-item/categories": {
			"get": {
				"tags": [
					"WarehouseItemCategory"
				],
				"summary": "Get Warehouse Item Categories",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WarehouseItemCategoryController.java:44` — `WarehouseItemCategoryController.GetWarehouseItemCategories()`.",
				"operationId": "WarehouseItemCategoryController.GetWarehouseItemCategories",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WarehouseItemCategoryController.java:44",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": "whic_nome"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WarehouseItemCategory"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/workflows/add": {
			"post": {
				"tags": [
					"Workflows"
				],
				"summary": "Insert Workflow",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:75` — `WorkflowsController.InsertWorkflow()`.",
				"operationId": "WorkflowsController.InsertWorkflow",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:75",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Workflow"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/workflows/del/{wf_id}": {
			"delete": {
				"tags": [
					"Workflows"
				],
				"summary": "Delete Company",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:87` — `WorkflowsController.DeleteCompany()`.",
				"operationId": "WorkflowsController.DeleteCompany",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:87",
				"parameters": [
					{
						"name": "wf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/workflows/get/{wf_id}": {
			"get": {
				"tags": [
					"Workflows"
				],
				"summary": "Get Workflow",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:52` — `WorkflowsController.GetWorkflow()`.",
				"operationId": "WorkflowsController.GetWorkflow",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:52",
				"parameters": [
					{
						"name": "wf_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Workflow"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/workflows/list/{cmp_id}": {
			"get": {
				"tags": [
					"Workflows"
				],
				"summary": "Get Workflows",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:36` — `WorkflowsController.GetWorkflows()`.",
				"operationId": "WorkflowsController.GetWorkflows",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:36",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Workflow"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/workflows/upd": {
			"post": {
				"tags": [
					"Workflows"
				],
				"summary": "Update Workflow",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:63` — `WorkflowsController.UpdateWorkflow()`.",
				"operationId": "WorkflowsController.UpdateWorkflow",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorkflowsController.java:63",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Workflow"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-cost/materials/{ws_id}": {
			"get": {
				"tags": [
					"WorksiteCost"
				],
				"summary": "get Material Costs",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:40` — `WorksiteCostController.getMaterialCosts()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteCostController.getMaterialCosts",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:40",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-cost/personnel-daily/{ws_id}/{em_id}": {
			"get": {
				"tags": [
					"WorksiteCost"
				],
				"summary": "get Employee Daily Breakdown",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:50` — `WorksiteCostController.getEmployeeDailyBreakdown()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteCostController.getEmployeeDailyBreakdown",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:50",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "start",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "end",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-cost/personnel/{ws_id}": {
			"get": {
				"tags": [
					"WorksiteCost"
				],
				"summary": "get Personnel Costs",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:45` — `WorksiteCostController.getPersonnelCosts()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteCostController.getPersonnelCosts",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:45",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-cost/report/{ws_id}": {
			"get": {
				"tags": [
					"WorksiteCost"
				],
				"summary": "get Worksite Cost Report",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:35` — `WorksiteCostController.getWorksiteCostReport()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteCostController.getWorksiteCostReport",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteCostController.java:35",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-produzione/{wsPrdId}": {
			"delete": {
				"tags": [
					"WorksiteProduzione"
				],
				"summary": "delete",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:106` — `WorksiteProduzioneController.delete()`.",
				"operationId": "WorksiteProduzioneController.delete",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:106",
				"parameters": [
					{
						"name": "wsPrdId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-produzione/cantiere/{wsId}": {
			"get": {
				"tags": [
					"WorksiteProduzione"
				],
				"summary": "get By Cantiere",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:74` — `WorksiteProduzioneController.getByCantiere()`.",
				"operationId": "WorksiteProduzioneController.getByCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:74",
				"parameters": [
					{
						"name": "wsId",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorksiteProduzione"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-produzione/lista": {
			"get": {
				"tags": [
					"WorksiteProduzione"
				],
				"summary": "get Lista Aggregata",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:48` — `WorksiteProduzioneController.getListaAggregata()`.\n\nTipo di risposta non risolto dal generatore (`ListaResponse`).",
				"operationId": "WorksiteProduzioneController.getListaAggregata",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:48",
				"parameters": [
					{
						"name": "cmpId",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "cerca",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string",
							"default": ""
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "20"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "1"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite-produzione/save-batch": {
			"post": {
				"tags": [
					"WorksiteProduzione"
				],
				"summary": "save Batch",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:89` — `WorksiteProduzioneController.saveBatch()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteProduzioneController.saveBatch",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteProduzioneController.java:89",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/{ws_id}/contract-detail": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Contract Detail",
				"description": "Ritorna {contract: {...}, categories: [...]} per il cantiere indicato.\r Usato per pre-popolare il form CEL al cambio cantiere.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:167` — `WorksiteController.GetWorksiteContractDetail()`.",
				"operationId": "WorksiteController.GetWorksiteContractDetail",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:167",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "object"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/add/{cmp_id}": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:176` — `WorksiteController.InsertWorksite()`.",
				"operationId": "WorksiteController.InsertWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:176",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Worksite"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/aliquota_iva_list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Aliquota Iva List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:506` — `WorksiteController.GetAliquotaIvaList()`.",
				"operationId": "WorksiteController.GetAliquotaIvaList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:506",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/AliquotaIva"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/by-cig-cup": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite By Cig Cup",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:131` — `WorksiteController.GetWorksiteByCigCup()`.",
				"operationId": "WorksiteController.GetWorksiteByCigCup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:131",
				"parameters": [
					{
						"name": "cig",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cup",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/close/{ws_id}": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Close Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:551` — `WorksiteController.CloseWorksite()`.",
				"operationId": "WorksiteController.CloseWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:551",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/collaborator-worksites-assoc/{cmp_id}/{col_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Collaborator Worksites Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:822` — `WorksiteController.GetCollaboratorWorksitesAssoc()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetCollaboratorWorksitesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:822",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "col_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/collaborators-assoc/{cmp_id}/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Collaborators Assoc",
				"description": "==================== Associazioni cantiere-collaboratore con date ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:755` — `WorksiteController.GetCollaboratorsAssoc()`.",
				"operationId": "WorksiteController.GetCollaboratorsAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:755",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "ref_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorksiteCollaboratorAssocItem"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/collaborators-assoc/remove": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Remove Collaborators Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:770` — `WorksiteController.RemoveCollaboratorsAssoc()`.",
				"operationId": "WorksiteController.RemoveCollaboratorsAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:770",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/collaborators-assoc/save": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Save Collaborators Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:763` — `WorksiteController.SaveCollaboratorsAssoc()`.",
				"operationId": "WorksiteController.SaveCollaboratorsAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:763",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/collaborators-assoc/update": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Collaborators Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:776` — `WorksiteController.UpdateCollaboratorsAssoc()`.",
				"operationId": "WorksiteController.UpdateCollaboratorsAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:776",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/contatti/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Contatti By Worksite",
				"description": "==================== Contatti Cantiere ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:694` — `WorksiteController.GetContattiByWorksite()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetContattiByWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:694",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/del/{ws_id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:196` — `WorksiteController.DeleteWorksite()`.",
				"operationId": "WorksiteController.DeleteWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:196",
				"parameters": [
					{
						"name": "Authorization",
						"in": "header",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/delrecord/{wsre_id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Worksite Record",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:325` — `WorksiteController.DeleteWorksiteRecord()`.",
				"operationId": "WorksiteController.DeleteWorksiteRecord",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:325",
				"parameters": [
					{
						"name": "wsre_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employee-orgunits-assoc/{cmp_id}/{em_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Employee Orgunits Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:816` — `WorksiteController.GetEmployeeOrgunitsAssoc()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetEmployeeOrgunitsAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:816",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employee-worksites-assoc/{cmp_id}/{em_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Employee Worksites Assoc",
				"description": "==================== Reverse: emp→ws, emp→sedi, col→ws ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:810` — `WorksiteController.GetEmployeeWorksitesAssoc()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetEmployeeWorksitesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:810",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "em_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employees-assoc/{cmp_id}/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Employees Assoc",
				"description": "==================== Associazioni cantiere-dipendente con date ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:720` — `WorksiteController.GetEmployeesAssoc()`.",
				"operationId": "WorksiteController.GetEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:720",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "ref_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorksiteEmployeeAssocItem"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employees-assoc/remove": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Remove Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:742` — `WorksiteController.RemoveEmployeesAssoc()`.",
				"operationId": "WorksiteController.RemoveEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:742",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employees-assoc/save": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Save Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:730` — `WorksiteController.SaveEmployeesAssoc()`.",
				"operationId": "WorksiteController.SaveEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:730",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employees-assoc/update": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:748` — `WorksiteController.UpdateEmployeesAssoc()`.",
				"operationId": "WorksiteController.UpdateEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:748",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/WorksiteAssocSaveRequest"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/employees-with-roles/{cmp_id}/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Employees With Roles",
				"description": "==================== Dipendenti cantiere raggruppati per ruolo ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:700` — `WorksiteController.GetWorksiteEmployeesWithRoles()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetWorksiteEmployeesWithRoles",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:700",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/fase/add": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Add Fase",
				"description": "==================== CRUD Fase Cantiere ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:607` — `WorksiteController.AddFase()`.",
				"operationId": "WorksiteController.AddFase",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:607",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/fase/delete/{id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Fase",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:625` — `WorksiteController.DeleteFase()`.",
				"operationId": "WorksiteController.DeleteFase",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:625",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/fase/update/{id}": {
			"put": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Fase",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:616` — `WorksiteController.UpdateFase()`.",
				"operationId": "WorksiteController.UpdateFase",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:616",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/fasi_worksite_list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Fasi List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:486` — `WorksiteController.GetWorksiteFasiList()`.",
				"operationId": "WorksiteController.GetWorksiteFasiList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:486",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Fase"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/find-by-cig-cup": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Find Worksite By Cig Cup",
				"description": "Cerca cantieri per CIG e/o CUP — versione flessibile (matcha anche se solo uno dei due è valorizzato).\r Usato da SAL Attivo upload cartella per il match cantiere dopo estrazione AI.\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:149` — `WorksiteController.FindWorksiteByCigCup()`.",
				"operationId": "WorksiteController.FindWorksiteByCigCup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:149",
				"parameters": [
					{
						"name": "cig",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cup",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/findByCigCup": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "find Worksites By Cig Cup",
				"description": "Cerca cantieri per lista di CIG/CUP estratti dalla fattura XML\r @param cigCupList JSON array di oggetti con \"cig\" e \"cup\", es: [{\"cig\":\"ABC123\",\"cup\":\"XYZ789\"}]\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:564` — `WorksiteController.findWorksitesByCigCup()`.",
				"operationId": "WorksiteController.findWorksitesByCigCup",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:564",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/genera_pdf_cantiere_dettaglio/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Cantiere Dettaglio PDF",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:526` — `WorksiteController.GetCantiereDettaglioPDF()`.",
				"operationId": "WorksiteController.GetCantiereDettaglioPDF",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:526",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/StringObject"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/get_record_home": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Record Home",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:380` — `WorksiteController.GetRecordHome()`.",
				"operationId": "WorksiteController.GetRecordHome",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:380",
				"parameters": [
					{
						"name": "data_da",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "data_a",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/RecordHome"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/get_type_record": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Type Record",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:368` — `WorksiteController.GetTypeRecord()`.",
				"operationId": "WorksiteController.GetTypeRecord",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:368",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Scan"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/get/{ws_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:119` — `WorksiteController.GetWorksite()`.",
				"operationId": "WorksiteController.GetWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:119",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Worksite"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/historical-worksites": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Historical Worksites",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:713` — `WorksiteController.GetHistoricalWorksites()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetHistoricalWorksites",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:713",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:91` — `WorksiteController.GetWorksite()`.",
				"operationId": "WorksiteController.GetWorksite.2",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:91",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "lot_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/listacollaboratorworksite": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get View Collaborator Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:441` — `WorksiteController.GetViewCollaboratorWorksite()`.",
				"operationId": "WorksiteController.GetViewCollaboratorWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:441",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ref_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Collaborator"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/listaemployeeonworksite": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get View Employeeon Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:465` — `WorksiteController.GetViewEmployeeonWorksite()`.",
				"operationId": "WorksiteController.GetViewEmployeeonWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:465",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Employee"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/listaemployeeworksite": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get View Employee Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:417` — `WorksiteController.GetViewEmployeeWorksite()`.",
				"operationId": "WorksiteController.GetViewEmployeeWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:417",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ref_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Employee"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/listall": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite List All",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:112` — `WorksiteController.GetWorksiteListAll()`.",
				"operationId": "WorksiteController.GetWorksiteListAll",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:112",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/listalocationworksite": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get View Location Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:394` — `WorksiteController.GetViewLocationWorksite()`.",
				"operationId": "WorksiteController.GetViewLocationWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:394",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Location"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/lst_cantieri_in_prossimita/{cmp_id}": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Cantieri In Prossimita",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:345` — `WorksiteController.GetCantieriInProssimita()`.",
				"operationId": "WorksiteController.GetCantieriInProssimita",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:345",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Coordinate"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Workplace"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/my_worksites/{cmp_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get My Worksites",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:359` — `WorksiteController.GetMyWorksites()`.",
				"operationId": "WorksiteController.GetMyWorksites",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:359",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Workplace"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/orgunit-employees-assoc/{cmp_id}/{of_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Orgunit Employees Assoc",
				"description": "==================== Associazioni sede-dipendente con date ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:783` — `WorksiteController.GetOrgunitEmployeesAssoc()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetOrgunitEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:783",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "of_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "include_history",
						"in": "query",
						"required": false,
						"schema": {
							"type": "boolean",
							"default": "false"
						}
					},
					{
						"name": "ref_date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "string"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/orgunit-employees-assoc/remove": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Remove Orgunit Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:797` — `WorksiteController.RemoveOrgunitEmployeesAssoc()`.",
				"operationId": "WorksiteController.RemoveOrgunitEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:797",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/orgunit-employees-assoc/save": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Save Orgunit Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:790` — `WorksiteController.SaveOrgunitEmployeesAssoc()`.",
				"operationId": "WorksiteController.SaveOrgunitEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:790",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/orgunit-employees-assoc/update": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Orgunit Employees Assoc",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:803` — `WorksiteController.UpdateOrgunitEmployeesAssoc()`.",
				"operationId": "WorksiteController.UpdateOrgunitEmployeesAssoc",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:803",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/WorksiteAssocSaveResult"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/province/list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Province",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:337` — `WorksiteController.GetProvince()`.",
				"operationId": "WorksiteController.GetProvince",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:337",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Provincia"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/record/{wsre_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Record",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:301` — `WorksiteController.GetWorksiteRecord()`.",
				"operationId": "WorksiteController.GetWorksiteRecord",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:301",
				"parameters": [
					{
						"name": "wsre_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Scan"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/recordlist": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Record List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:282` — `WorksiteController.GetWorksiteRecordList()`.",
				"operationId": "WorksiteController.GetWorksiteRecordList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:282",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Scan"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/recordlist_web": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite Record List Web",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:256` — `WorksiteController.GetWorksiteRecordList_Web()`.",
				"operationId": "WorksiteController.GetWorksiteRecordList_Web",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:256",
				"parameters": [
					{
						"name": "txtsearch",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "order_by",
						"in": "query",
						"required": true,
						"schema": {
							"type": "string"
						}
					},
					{
						"name": "limit",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					},
					{
						"name": "offset",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int64"
						}
					},
					{
						"name": "cmp_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					},
					{
						"name": "date",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "data_da",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "data_a",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int64",
							"default": "0"
						}
					},
					{
						"name": "ws_id",
						"in": "query",
						"required": false,
						"schema": {
							"type": "integer",
							"format": "int32",
							"default": "0"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/Worksite"
									}
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/regime_iva_list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Regime Iva List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:516` — `WorksiteController.GetRegimeIvaList()`.",
				"operationId": "WorksiteController.GetRegimeIvaList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:516",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/RegimeIva"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/role-info": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Role Info",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:707` — `WorksiteController.GetRoleInfo()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetRoleInfo",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:707",
				"parameters": [
					{
						"name": "cmp_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/saveasscollaboratorworksite": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Collaborator Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:453` — `WorksiteController.InsertCollaboratorWorksite()`.",
				"operationId": "WorksiteController.InsertCollaboratorWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:453",
				"parameters": [
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Collaborator"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/saveassemployeeworksite": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Employee Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:429` — `WorksiteController.InsertEmployeeWorksite()`.",
				"operationId": "WorksiteController.InsertEmployeeWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:429",
				"parameters": [
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Employee"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/saveasslocationworksite": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Location Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:405` — `WorksiteController.InsertLocationWorksite()`.",
				"operationId": "WorksiteController.InsertLocationWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:405",
				"parameters": [
					{
						"name": "ws_id",
						"in": "query",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Location"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/saverecord": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Record",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:209` — `WorksiteController.InsertRecord()`.",
				"operationId": "WorksiteController.InsertRecord",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:209",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Scan"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio"
					}
				}
			}
		},
		"/api/worksite/saverecord_manually": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Insert Record Manually",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:244` — `WorksiteController.InsertRecordManually()`.",
				"operationId": "WorksiteController.InsertRecordManually",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:244",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "array",
								"items": {
									"$ref": "#/components/schemas/Scan"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/stati_worksite_list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite State List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:496` — `WorksiteController.GetWorksiteStateList()`.",
				"operationId": "WorksiteController.GetWorksiteStateList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:496",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/WorksiteState"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/stato/add": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Add Stato Cantiere",
				"description": "==================== CRUD Stato Cantiere ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:635` — `WorksiteController.AddStatoCantiere()`.",
				"operationId": "WorksiteController.AddStatoCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:635",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/stato/delete/{id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Stato Cantiere",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:653` — `WorksiteController.DeleteStatoCantiere()`.",
				"operationId": "WorksiteController.DeleteStatoCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:653",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/stato/update/{id}": {
			"put": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Stato Cantiere",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:644` — `WorksiteController.UpdateStatoCantiere()`.",
				"operationId": "WorksiteController.UpdateStatoCantiere",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:644",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_contatto/add": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Add Tipologia Contatto",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:667` — `WorksiteController.AddTipologiaContatto()`.",
				"operationId": "WorksiteController.AddTipologiaContatto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:667",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_contatto/delete/{id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Tipologia Contatto",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:685` — `WorksiteController.DeleteTipologiaContatto()`.",
				"operationId": "WorksiteController.DeleteTipologiaContatto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:685",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_contatto/list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Tipologia Contatto List",
				"description": "==================== Tipologia Contatto ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:662` — `WorksiteController.GetTipologiaContattoList()`.\n\nTipo di risposta non deducibile dal sorgente: il metodo restituisce `ResponseEntity<?>`.",
				"operationId": "WorksiteController.GetTipologiaContattoList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:662",
				"responses": {
					"200": {
						"description": "OK"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_contatto/update/{id}": {
			"put": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Tipologia Contatto",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:676` — `WorksiteController.UpdateTipologiaContatto()`.",
				"operationId": "WorksiteController.UpdateTipologiaContatto",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:676",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_lavoro_list": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Tipologia Lavoro List",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:476` — `WorksiteController.GetTipologiaLavoroList()`.",
				"operationId": "WorksiteController.GetTipologiaLavoroList",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:476",
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "array",
									"items": {
										"$ref": "#/components/schemas/TipologiaLavoro"
									}
								}
							}
						}
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_lavoro/add": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Add Tipologia Lavoro",
				"description": "==================== CRUD Tipologia Lavori ====================\n\nSorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:579` — `WorksiteController.AddTipologiaLavoro()`.",
				"operationId": "WorksiteController.AddTipologiaLavoro",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:579",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_lavoro/delete/{id}": {
			"delete": {
				"tags": [
					"Worksite"
				],
				"summary": "Delete Tipologia Lavoro",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:597` — `WorksiteController.DeleteTipologiaLavoro()`.",
				"operationId": "WorksiteController.DeleteTipologiaLavoro",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:597",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/tipologia_lavoro/update/{id}": {
			"put": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Tipologia Lavoro",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:588` — `WorksiteController.UpdateTipologiaLavoro()`.",
				"operationId": "WorksiteController.UpdateTipologiaLavoro",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:588",
				"parameters": [
					{
						"name": "id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "object",
								"additionalProperties": {
									"type": "string"
								}
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/upd_note_worksite/{ws_id}": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Upd Note Worksite",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:538` — `WorksiteController.UpdNoteWorksite()`.",
				"operationId": "WorksiteController.UpdNoteWorksite",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:538",
				"parameters": [
					{
						"name": "ws_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"type": "string"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/updrecord": {
			"post": {
				"tags": [
					"Worksite"
				],
				"summary": "Update Record",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:232` — `WorksiteController.UpdateRecord()`.",
				"operationId": "WorksiteController.UpdateRecord",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:232",
				"requestBody": {
					"required": true,
					"content": {
						"application/json": {
							"schema": {
								"$ref": "#/components/schemas/Scan"
							}
						}
					}
				},
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"type": "integer",
									"format": "int32"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		},
		"/api/worksite/wsbyscan/{wsre_id}": {
			"get": {
				"tags": [
					"Worksite"
				],
				"summary": "Get Worksite By Scan",
				"description": "Sorgente: `src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:313` — `WorksiteController.GetWorksiteByScan()`.",
				"operationId": "WorksiteController.GetWorksiteByScan",
				"x-source": "src/main/java/com/kondorcs/ws_spring_cmp/controller/WorksiteController.java:313",
				"parameters": [
					{
						"name": "wsre_id",
						"in": "path",
						"required": true,
						"schema": {
							"type": "integer",
							"format": "int32"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/Worksite"
								}
							}
						}
					},
					"400": {
						"description": "Richiesta non valida"
					},
					"401": {
						"description": "Non autenticato: token JWT assente, scaduto o non valido"
					},
					"500": {
						"description": "Errore interno del servizio",
						"content": {
							"application/json": {
								"schema": {
									"$ref": "#/components/schemas/ErrorResponse"
								}
							}
						}
					}
				}
			}
		}
	},
	"components": {
		"securitySchemes": {
			"bearerAuth": {
				"type": "http",
				"scheme": "bearer",
				"bearerFormat": "JWT",
				"description": "Token JWT emesso dal servizio di login del portale."
			}
		},
		"schemas": {
			"ErrorResponse": {
				"type": "object",
				"description": "Corpo di errore del gestore centralizzato delle eccezioni (kondorcs-utils, GlobalExceptionHandler). Le proprietà oltre a `requestId` sono presenti solo se il chiamante ha ruolo ADMIN.",
				"properties": {
					"timestamp": {
						"type": "string",
						"format": "date-time"
					},
					"status": {
						"type": "integer",
						"format": "int32"
					},
					"error": {
						"type": "string"
					},
					"message": {
						"type": "string"
					},
					"requestId": {
						"type": "string",
						"description": "Solo nella variante generica (utenti non ADMIN)."
					},
					"rootCause": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"formattedRootCause": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"location": {
						"type": "string",
						"description": "Solo per ADMIN: classe, metodo e riga."
					},
					"requestUri": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"httpMethod": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"user": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"parameters": {
						"type": "object",
						"additionalProperties": {
							"type": "string"
						},
						"description": "Solo per ADMIN."
					},
					"contentType": {
						"type": "string",
						"description": "Solo per ADMIN."
					},
					"requestHeaders": {
						"type": "object",
						"additionalProperties": {
							"type": "string"
						},
						"description": "Solo per ADMIN."
					},
					"requestBody": {
						"type": "string",
						"description": "Solo per ADMIN, se la richiesta aveva un corpo."
					},
					"stackTrace": {
						"type": "string",
						"description": "Solo per ADMIN e solo se `log.db.write.stacktrace` è attivo."
					}
				}
			},
			"Assemblea": {
				"type": "object",
				"properties": {
					"asm_id": {
						"type": "integer",
						"format": "int32"
					},
					"asm_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"asm_title": {
						"type": "string"
					},
					"asm_type": {
						"type": "string"
					},
					"asm_status": {
						"type": "string"
					},
					"asm_quorum": {
						"type": "boolean"
					},
					"asm_first_call_dt": {
						"type": "string",
						"format": "date-time"
					},
					"asm_second_call_dt": {
						"type": "string",
						"format": "date-time"
					},
					"asm_location": {
						"type": "string"
					},
					"asm_description": {
						"type": "string"
					},
					"asm_odg": {
						"type": "string"
					},
					"asm_folder_id": {
						"type": "integer",
						"format": "int32"
					},
					"invitati": {
						"type": "integer",
						"format": "int64"
					},
					"presenti": {
						"type": "integer",
						"format": "int64"
					},
					"assenti": {
						"type": "integer",
						"format": "int64"
					},
					"senza_risposta": {
						"type": "integer",
						"format": "int64"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"cst_ids": {
						"type": "array",
						"items": {
							"type": "integer",
							"format": "int32"
						}
					}
				}
			},
			"AssembleaPartecipante": {
				"type": "object",
				"properties": {
					"asp_id": {
						"type": "integer",
						"format": "int32"
					},
					"asp_asm_id": {
						"type": "integer",
						"format": "int32"
					},
					"asp_cst_id": {
						"type": "integer",
						"format": "int32"
					},
					"asp_presente": {
						"type": "boolean"
					},
					"asp_delega_da": {
						"type": "string"
					},
					"asp_note": {
						"type": "string"
					},
					"asp_dt_risposta": {
						"type": "string",
						"format": "date-time"
					},
					"cst_millesimi": {
						"type": "number"
					},
					"cst_display": {
						"type": "string"
					},
					"cst_email": {
						"type": "string"
					},
					"cst_userid_pt": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"AttachmentType": {
				"type": "object",
				"properties": {
					"at_id": {
						"type": "integer",
						"format": "int32"
					},
					"at_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"at_label": {
						"type": "string"
					},
					"at_value": {
						"type": "string"
					}
				}
			},
			"Bank": {
				"type": "object",
				"properties": {
					"cb_id": {
						"type": "integer",
						"format": "int32"
					},
					"cb_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					},
					"cb_sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"cb_name": {
						"type": "string"
					},
					"cb_description": {
						"type": "string"
					},
					"cb_iban": {
						"type": "string"
					},
					"sup": {
						"$ref": "#/components/schemas/Supplier"
					}
				}
			},
			"Supplier": {
				"type": "object",
				"properties": {
					"name": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"email": {
						"type": "string"
					},
					"phonenr": {
						"type": "string"
					},
					"vat_number": {
						"type": "string"
					},
					"street": {
						"type": "string"
					},
					"cap": {
						"type": "string"
					},
					"tax_code": {
						"type": "string"
					},
					"city": {
						"type": "string"
					},
					"house_number": {
						"type": "string"
					},
					"sup_muc": {
						"type": "string"
					},
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"userid_pt": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_update": {
						"type": "integer",
						"format": "int32"
					},
					"sup_area_code": {
						"type": "integer",
						"format": "int32"
					},
					"sup_type": {
						"type": "integer",
						"format": "int32"
					},
					"sup_whic_id": {
						"type": "integer",
						"format": "int32"
					},
					"whic_nome": {
						"type": "string"
					},
					"data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"date_update": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"cat_perc": {
						"$ref": "#/components/schemas/CategoriaPercentuale"
					},
					"sectorIds": {
						"type": "array",
						"items": {
							"type": "integer",
							"format": "int32"
						}
					},
					"sup_rlegal_firstname": {
						"type": "string"
					},
					"sup_rlegal_surname": {
						"type": "string"
					},
					"sup_rlegal_n_city": {
						"type": "string"
					},
					"sup_rlegal_n_dt": {
						"type": "string",
						"format": "date-time"
					},
					"sup_cciaa_name": {
						"type": "string"
					},
					"sup_cciaa_rea": {
						"type": "string"
					},
					"sup_inail_office": {
						"type": "string"
					},
					"sup_inail_code": {
						"type": "string"
					},
					"sup_inps_office": {
						"type": "string"
					},
					"sup_inps_code": {
						"type": "string"
					},
					"sup_ccnl": {
						"type": "string"
					}
				}
			},
			"CategoriaPercentuale": {
				"type": "object",
				"properties": {
					"cat": {
						"$ref": "#/components/schemas/Categoria"
					},
					"perc": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"Categoria": {
				"type": "object",
				"properties": {
					"cat_id": {
						"type": "integer",
						"format": "int32"
					},
					"cat_type": {
						"type": "string"
					},
					"cat_code": {
						"type": "string"
					},
					"cat_description": {
						"type": "string"
					}
				}
			},
			"Category": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"description": {
						"type": "string"
					},
					"date_ins": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"Cel": {
				"type": "object",
				"properties": {
					"cel_id": {
						"type": "integer",
						"format": "int32"
					},
					"cel_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"cel_protocol_number": {
						"type": "string"
					},
					"cel_protocol_date": {
						"type": "string",
						"format": "date-time"
					},
					"cel_work_start_date": {
						"type": "string",
						"format": "date-time"
					},
					"cel_work_end_date": {
						"type": "string",
						"format": "date-time"
					},
					"cel_at_id": {
						"type": "integer",
						"format": "int32"
					},
					"cel_work_in_progress": {
						"type": "boolean"
					},
					"cel_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"cel_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"cel_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"cel_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"at_description": {
						"type": "string"
					},
					"cel_stato_label": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"cel_supervisors": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/CelSupervisor"
						}
					}
				}
			},
			"CelSupervisor": {
				"type": "object",
				"properties": {
					"cs_id": {
						"type": "integer",
						"format": "int32"
					},
					"cs_cel_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"AwardeeType": {
				"type": "object",
				"properties": {
					"at_id": {
						"type": "integer",
						"format": "int32"
					},
					"at_description": {
						"type": "string"
					}
				}
			},
			"ContractorRole": {
				"type": "object",
				"properties": {
					"cr_id": {
						"type": "integer",
						"format": "int32"
					},
					"cr_description": {
						"type": "string"
					}
				}
			},
			"ExportJob": {
				"type": "object",
				"properties": {
					"exj_id": {
						"type": "integer",
						"format": "int32"
					},
					"exj_pt_id": {
						"type": "integer",
						"format": "int32"
					},
					"exj_started": {
						"type": "string"
					},
					"exj_finished": {
						"type": "string"
					}
				}
			},
			"CertPaymentCategory": {
				"type": "object",
				"properties": {
					"cat_id": {
						"type": "integer",
						"format": "int32"
					},
					"cat_type": {
						"type": "string"
					},
					"cat_code": {
						"type": "string"
					},
					"cat_description": {
						"type": "string"
					},
					"cat_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CertPayment": {
				"type": "object",
				"properties": {
					"origin": {
						"type": "string"
					},
					"ctp_sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"cpt_number": {
						"type": "integer",
						"format": "int32"
					},
					"cpt_amount": {
						"type": "number"
					},
					"cpt_descriptions": {
						"type": "string"
					},
					"cpt_date_print": {
						"type": "string",
						"format": "date-time"
					},
					"cpt_residue": {
						"type": "number"
					},
					"cpt_residue_ctp_id": {
						"type": "integer",
						"format": "int32"
					},
					"cpt_residue_type": {
						"type": "string"
					},
					"cpt_residue_ctp_id_original": {
						"type": "integer",
						"format": "int32"
					},
					"cpt_date_inv_pdf": {
						"type": "string",
						"format": "date-time"
					},
					"cpt_withholding": {
						"type": "number"
					},
					"cpt_withholding_ctp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_stato": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_sal_id": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_tipologia": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_svincolo_id": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_ordine": {
						"type": "string"
					},
					"ctp_ordine_evoluto": {
						"type": "string"
					},
					"ctp_barcode": {
						"type": "string"
					},
					"ctp_fat_id": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_consociato": {
						"type": "string"
					},
					"ctp_opere_economia": {
						"type": "number"
					},
					"ctp_oneri_sicurezza": {
						"type": "number"
					},
					"ctp_ribasso_contrattuale": {
						"type": "number"
					},
					"ctp_totale_produzione": {
						"type": "number"
					},
					"ctp_parziale_certificato": {
						"type": "number"
					},
					"ctp_ritenute_totali": {
						"type": "number"
					},
					"ctp_ritenute_correnti": {
						"type": "number"
					},
					"ctp_pagamenti_precedenti": {
						"type": "number"
					},
					"ctp_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"ctp_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"ctp_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"ctp_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"cst_name": {
						"type": "string"
					},
					"cst_surname": {
						"type": "string"
					},
					"ws_name": {
						"type": "string"
					},
					"cnt_description": {
						"type": "string"
					},
					"sal_number": {
						"type": "string"
					},
					"sal_amount_progressivo": {
						"type": "number"
					},
					"cnt_amount": {
						"type": "number"
					},
					"ccq_importo_assegnato": {
						"type": "number"
					},
					"ctp_stato_label": {
						"type": "string"
					},
					"ctp_tipologia_label": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"Collaborator": {
				"type": "object",
				"properties": {
					"name": {
						"type": "string"
					},
					"surname": {
						"type": "string"
					},
					"email": {
						"type": "string"
					},
					"phonenr": {
						"type": "string"
					},
					"col_birth_municipality": {
						"type": "string"
					},
					"col_cf": {
						"type": "string"
					},
					"col_res_address": {
						"type": "string"
					},
					"col_res_cap": {
						"type": "string"
					},
					"col_res_municipality": {
						"type": "string"
					},
					"col_sex": {
						"type": "string"
					},
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"cst_id": {
						"type": "integer",
						"format": "int32"
					},
					"userid_pt": {
						"type": "integer",
						"format": "int32"
					},
					"col_date_birth": {
						"type": "string",
						"format": "date-time"
					},
					"isChecked": {
						"type": "boolean"
					},
					"col_detachment": {
						"type": "boolean"
					}
				}
			},
			"Worksite": {
				"type": "object",
				"properties": {
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_name": {
						"type": "string"
					},
					"ws_description": {
						"type": "string"
					},
					"ws_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_latitude": {
						"type": "number",
						"format": "double"
					},
					"ws_longitude": {
						"type": "number",
						"format": "double"
					},
					"ws_address": {
						"type": "string"
					},
					"ws_codiceprovincia": {
						"type": "string"
					},
					"disabled": {
						"type": "boolean"
					},
					"pt_id_referenced": {
						"type": "boolean"
					},
					"ws_date_when": {
						"type": "string"
					},
					"ws_radius": {
						"type": "integer",
						"format": "int32"
					},
					"ws_time_slots": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/WorksiteTimeSlot"
						}
					},
					"lst_scan": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Scan"
						}
					},
					"ws_isChecked": {
						"type": "boolean"
					},
					"ws_lot_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_protocollo": {
						"type": "string"
					},
					"ws_codice": {
						"type": "integer",
						"format": "int32"
					},
					"ws_datadenunciaapertura": {
						"type": "string",
						"format": "date-time"
					},
					"ws_dataverbaleconsegnalavori": {
						"type": "string",
						"format": "date-time"
					},
					"ws_dataverbalefinelavori": {
						"type": "string",
						"format": "date-time"
					},
					"ws_datacertificatocollaudo": {
						"type": "string",
						"format": "date-time"
					},
					"ws_datasospensione": {
						"type": "string",
						"format": "date-time"
					},
					"ws_dataripresa": {
						"type": "string",
						"format": "date-time"
					},
					"ws_note": {
						"type": "string"
					},
					"ws_drfld_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_settore": {
						"type": "integer",
						"format": "int32"
					},
					"ws_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"ws_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"ws_accordoquadro": {
						"type": "integer",
						"format": "int32"
					},
					"ws_tipologialavori": {
						"type": "integer",
						"format": "int32"
					},
					"ws_tipologialavori_descrizione": {
						"type": "string"
					},
					"ws_datafirmacontratto": {
						"type": "string",
						"format": "date-time"
					},
					"ws_aliquotaiva": {
						"type": "integer",
						"format": "int32"
					},
					"ws_cb_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_datafinelavori": {
						"type": "string",
						"format": "date-time"
					},
					"ws_datacollaudo": {
						"type": "string",
						"format": "date-time"
					},
					"ws_datacel": {
						"type": "string",
						"format": "date-time"
					},
					"ws_importoresiduo": {
						"type": "number",
						"format": "double"
					},
					"ws_quotasubappaltabile": {
						"type": "number",
						"format": "double"
					},
					"ws_surplus_sios": {
						"type": "number",
						"format": "double"
					},
					"ws_stato": {
						"type": "integer",
						"format": "int32"
					},
					"ws_stato_description": {
						"type": "string"
					},
					"ws_categoria": {
						"type": "string"
					},
					"ws_nomecartella": {
						"type": "string"
					},
					"ws_no_gara": {
						"type": "boolean"
					},
					"ws_percpartdef": {
						"type": "number",
						"format": "double"
					},
					"ws_importonetto": {
						"type": "number",
						"format": "double"
					},
					"ws_importocompetenza": {
						"type": "number",
						"format": "double"
					},
					"ws_responsabilecommessa_em_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_fse_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_percpartprev": {
						"type": "number",
						"format": "double"
					},
					"ws_iban_mgo": {
						"type": "string"
					},
					"ws_totale_fatture": {
						"type": "number",
						"format": "double"
					},
					"lot_cup": {
						"type": "string"
					},
					"lot_importo": {
						"type": "number"
					},
					"ws_sublevel": {
						"type": "integer",
						"format": "int32"
					},
					"ws_sublevel_name": {
						"type": "string"
					},
					"ws_comune": {
						"type": "string"
					},
					"ws_cap": {
						"type": "string"
					},
					"ws_ded_strumento": {
						"type": "string"
					},
					"ws_inail": {
						"type": "string",
						"format": "date-time"
					},
					"ws_cassa_edile": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"WorksiteTimeSlot": {
				"type": "object",
				"properties": {
					"dt_start": {
						"type": "string"
					},
					"dt_end": {
						"type": "string"
					}
				}
			},
			"Scan": {
				"type": "object",
				"properties": {
					"id": {
						"type": "string"
					},
					"timestamp": {
						"type": "string",
						"format": "date-time"
					},
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"org_id": {
						"type": "integer",
						"format": "int32"
					},
					"location": {
						"type": "string"
					},
					"coordinates": {
						"$ref": "#/components/schemas/Coordinate"
					},
					"employee": {
						"$ref": "#/components/schemas/Employee"
					},
					"type": {
						"type": "integer",
						"format": "int32"
					},
					"state": {
						"type": "string"
					},
					"type_string": {
						"type": "string"
					},
					"type_qrcode": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					},
					"date_in": {
						"type": "string",
						"format": "date-time"
					},
					"date_out": {
						"type": "string",
						"format": "date-time"
					},
					"tot_time_worked": {
						"type": "string",
						"format": "date-time"
					},
					"tot_time_worked_string": {
						"type": "string"
					},
					"rapportino": {
						"$ref": "#/components/schemas/WorksiteReport"
					}
				}
			},
			"Coordinate": {
				"type": "object",
				"properties": {
					"latitude": {
						"type": "number",
						"format": "double"
					},
					"longitude": {
						"type": "number",
						"format": "double"
					},
					"accuracy": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"Employee": {
				"type": "object",
				"properties": {
					"name": {
						"type": "string"
					},
					"surname": {
						"type": "string"
					},
					"email": {
						"type": "string"
					},
					"phonenr": {
						"type": "string"
					},
					"em_displayname": {
						"type": "string"
					},
					"sex": {
						"type": "string"
					},
					"codicefiscale": {
						"type": "string"
					},
					"res_municipality": {
						"type": "string"
					},
					"res_address": {
						"type": "string"
					},
					"res_cap": {
						"type": "string"
					},
					"birth_municipality": {
						"type": "string"
					},
					"cwr_dt_rel_end": {
						"type": "string"
					},
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"userid_pt": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_id": {
						"type": "integer",
						"format": "int32"
					},
					"em_drfld_id": {
						"type": "integer",
						"format": "int32"
					},
					"enabled": {
						"type": "boolean"
					},
					"isChecked": {
						"type": "boolean"
					},
					"data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"date_update": {
						"type": "string",
						"format": "date-time"
					},
					"date_birth": {
						"type": "string",
						"format": "date-time"
					},
					"cwr_dt_rel_start": {
						"type": "string",
						"format": "date-time"
					},
					"em_license_category": {
						"type": "string"
					}
				}
			},
			"WorksiteReport": {
				"type": "object",
				"properties": {
					"wsrp_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrp_date_ins": {
						"type": "string",
						"format": "date-time"
					},
					"wsrp_name": {
						"type": "string"
					},
					"wsrp_description": {
						"type": "string"
					},
					"wsrp_metadata": {
						"type": "string"
					},
					"wsrerp_metadata_value": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"worksite": {
						"$ref": "#/components/schemas/Worksite"
					},
					"user": {
						"$ref": "#/components/schemas/User"
					}
				}
			},
			"User": {
				"type": "object",
				"properties": {
					"usr_id": {
						"type": "integer",
						"format": "int64"
					},
					"usr_username": {
						"type": "string"
					},
					"usr_password": {
						"type": "string"
					},
					"usr_firstname": {
						"type": "string"
					},
					"usr_lastname": {
						"type": "string"
					},
					"usr_displayname": {
						"type": "string"
					},
					"usr_mail": {
						"type": "string"
					},
					"authorities": {
						"type": "string"
					},
					"issuedAt": {
						"type": "string",
						"format": "date-time"
					},
					"expiration": {
						"type": "string",
						"format": "date-time"
					},
					"token": {
						"type": "string"
					},
					"tokenRefresh": {
						"type": "string"
					},
					"rl_description": {
						"type": "string"
					},
					"rl_id": {
						"type": "integer",
						"format": "int32"
					},
					"usr_primoaccesso": {
						"type": "integer",
						"format": "int32"
					},
					"foto": {
						"type": "string"
					},
					"pt_descrizione": {
						"type": "string"
					},
					"aree": {
						"type": "string"
					},
					"portali": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Portale"
						}
					},
					"id_lavoratore": {
						"type": "integer",
						"format": "int32"
					},
					"usr_isChecked": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					},
					"authoritiesID": {
						"type": "string"
					},
					"ufficio": {
						"type": "string"
					},
					"sedi": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Sede"
						}
					},
					"PortalName": {
						"type": "string"
					},
					"usr_language": {
						"type": "string"
					}
				}
			},
			"Portale": {
				"type": "object",
				"properties": {
					"pt_id": {
						"type": "integer",
						"format": "int32"
					},
					"pt_theme": {
						"type": "string"
					},
					"pt_logo": {
						"type": "string"
					},
					"pt_descrizione": {
						"type": "string"
					},
					"pt_favicon": {
						"type": "string"
					},
					"logo": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Sede": {
				"type": "object",
				"properties": {
					"sed_id": {
						"type": "integer",
						"format": "int32"
					},
					"sed_az_id": {
						"type": "integer",
						"format": "int32"
					},
					"sed_indirizzo": {
						"type": "string"
					},
					"sed_cfcomune": {
						"type": "string"
					},
					"sed_descrizione": {
						"type": "string"
					},
					"sed_cap": {
						"type": "string"
					},
					"sed_luogo": {
						"type": "string"
					},
					"sed_islegale": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Company": {
				"type": "object",
				"properties": {
					"name": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"vat_number": {
						"type": "string"
					},
					"tax_code": {
						"type": "string"
					},
					"rlegal_firstname": {
						"type": "string"
					},
					"rlegal_surname": {
						"type": "string"
					},
					"rlegal_cf": {
						"type": "string"
					},
					"cmp_tema": {
						"type": "string"
					},
					"cmp_phone_number": {
						"type": "string"
					},
					"cmp_mail": {
						"type": "string"
					},
					"cmp_pec": {
						"type": "string"
					},
					"cmp_fax": {
						"type": "string"
					},
					"cmp_web": {
						"type": "string"
					},
					"cmp_usr_username_ins": {
						"type": "string"
					},
					"cmp_usr_office_ins": {
						"type": "string"
					},
					"cmp_usr_username_update": {
						"type": "string"
					},
					"cmp_logo_b64": {
						"type": "string"
					},
					"cmp_usr_office_update": {
						"type": "string"
					},
					"cmp_ccia": {
						"type": "string"
					},
					"cmp_rea_code": {
						"type": "string"
					},
					"cmp_type": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_legal_nature": {
						"type": "string"
					},
					"cmp_pmi": {
						"type": "string"
					},
					"cmp_atc_code": {
						"type": "string"
					},
					"cmp_atc_desc": {
						"type": "string"
					},
					"cmp_union_code": {
						"type": "string"
					},
					"cmp_union_desc": {
						"type": "string"
					},
					"cmp_prof": {
						"type": "string"
					},
					"cmp_area_code": {
						"type": "string"
					},
					"cmp_area_desc": {
						"type": "string"
					},
					"cmp_job_code": {
						"type": "string"
					},
					"cmp_job_desc": {
						"type": "string"
					},
					"cmp_business_code": {
						"type": "string"
					},
					"cmp_business_desc": {
						"type": "string"
					},
					"cmp_note": {
						"type": "string"
					},
					"cmp_contact": {
						"type": "string"
					},
					"cmp_procedures": {
						"type": "string"
					},
					"cmp_membership_direct_type": {
						"type": "string"
					},
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_up": {
						"type": "integer",
						"format": "int32"
					},
					"cpm_atc_id": {
						"type": "integer",
						"format": "int32"
					},
					"pt_id": {
						"type": "integer",
						"format": "int32"
					},
					"employees_count": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_logo": {
						"$ref": "#/components/schemas/File"
					},
					"cmp_register_data_in": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_register_date_out": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_date_update": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_only_iva": {
						"type": "boolean"
					},
					"cmp_membership_dm10": {
						"type": "boolean"
					},
					"cmp_membership_direct": {
						"type": "boolean"
					},
					"of": {
						"$ref": "#/components/schemas/Location"
					},
					"cna_inail": {
						"$ref": "#/components/schemas/CNAINAIL"
					},
					"imp_inail": {
						"$ref": "#/components/schemas/Imp"
					},
					"imp_pm10": {
						"$ref": "#/components/schemas/Imp"
					},
					"imp_dir": {
						"$ref": "#/components/schemas/Imp"
					},
					"imp_tot": {
						"$ref": "#/components/schemas/Imp"
					},
					"ca_inps": {
						"$ref": "#/components/schemas/Card"
					},
					"ca_cna": {
						"$ref": "#/components/schemas/Card"
					},
					"cna_inps": {
						"$ref": "#/components/schemas/CNAINPS"
					},
					"abb": {
						"$ref": "#/components/schemas/Imp"
					},
					"ca_tess": {
						"$ref": "#/components/schemas/Card"
					},
					"org_latitude": {
						"type": "number",
						"format": "double"
					},
					"org_longitude": {
						"type": "number",
						"format": "double"
					},
					"cmp_inps_code": {
						"type": "string"
					},
					"cmp_inail_code": {
						"type": "string"
					},
					"cmp_iban": {
						"type": "string"
					},
					"cmp_rlegal_res_address": {
						"type": "string"
					},
					"cmp_rlegal_res_number": {
						"type": "string"
					},
					"cmp_rlegal_res_cup": {
						"type": "string"
					},
					"cmp_rlegal_res_city": {
						"type": "string"
					},
					"cmp_rlegal_res_province": {
						"type": "string"
					},
					"cmp_rlegal_n_dt": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_rlegal_n_city": {
						"type": "string"
					},
					"cmp_rlegal_n_sex": {
						"type": "string"
					},
					"cmp_rlegal_phone_number": {
						"type": "string"
					},
					"cmp_rlegal_fax": {
						"type": "string"
					},
					"cmp_rlegal_mail": {
						"type": "string"
					}
				}
			},
			"File": {
				"type": "object",
				"properties": {
					"repositoryName": {
						"type": "string"
					},
					"fileOrigName": {
						"type": "string"
					}
				}
			},
			"Location": {
				"type": "object",
				"properties": {
					"of_address": {
						"type": "string"
					},
					"of_municipality_cf": {
						"type": "string"
					},
					"of_number": {
						"type": "string"
					},
					"of_cap": {
						"type": "string"
					},
					"of_place": {
						"type": "string"
					},
					"of_municipality_name": {
						"type": "string"
					},
					"of_province_code": {
						"type": "string"
					},
					"of_province_name": {
						"type": "string"
					},
					"org_description": {
						"type": "string"
					},
					"org_email": {
						"type": "string"
					},
					"org_phonenr": {
						"type": "string"
					},
					"of_id": {
						"type": "integer",
						"format": "int32"
					},
					"of_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"org_tporg_id": {
						"type": "integer",
						"format": "int32"
					},
					"of_registered_office": {
						"type": "boolean"
					},
					"org_latitude": {
						"type": "number",
						"format": "double"
					},
					"org_longitude": {
						"type": "number",
						"format": "double"
					},
					"org_stamping_type": {
						"type": "integer",
						"format": "int32"
					},
					"org_radius": {
						"type": "integer",
						"format": "int32"
					},
					"org_time_slots": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/WorksiteTimeSlot"
						}
					},
					"org_date_when": {
						"type": "string"
					},
					"org_tporg_name": {
						"type": "string"
					},
					"lst_scan": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Scan"
						}
					},
					"org_isChecked": {
						"type": "boolean"
					},
					"org_protocol": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CNAINAIL": {
				"type": "object",
				"properties": {
					"cna_inail_company_code": {
						"type": "string"
					},
					"cna_inail_association_code": {
						"type": "string"
					},
					"pat": {
						"$ref": "#/components/schemas/Pat"
					}
				}
			},
			"Pat": {
				"type": "object",
				"properties": {
					"pat_code": {
						"type": "string"
					},
					"pat_contribution_code": {
						"type": "string"
					},
					"pat_date_of_joining": {
						"type": "string",
						"format": "date-time"
					},
					"pat_state_date": {
						"type": "string",
						"format": "date-time"
					},
					"pat_membership_request": {
						"type": "boolean"
					},
					"pat_state": {
						"type": "string"
					},
					"pat_membership_request_date": {
						"type": "string",
						"format": "date-time"
					}
				}
			},
			"Imp": {
				"type": "object",
				"properties": {
					"imp_dov0": {
						"type": "number",
						"format": "float"
					},
					"imp_dov1": {
						"type": "number",
						"format": "float"
					},
					"imp_dov2": {
						"type": "number",
						"format": "float"
					},
					"imp_dov3": {
						"type": "number",
						"format": "float"
					},
					"imp_dov4": {
						"type": "number",
						"format": "float"
					},
					"imp_dov5": {
						"type": "number",
						"format": "float"
					},
					"imp_pag0": {
						"type": "number",
						"format": "float"
					},
					"imp_pag1": {
						"type": "number",
						"format": "float"
					},
					"imp_pag2": {
						"type": "number",
						"format": "float"
					},
					"imp_pag3": {
						"type": "number",
						"format": "float"
					},
					"imp_pag4": {
						"type": "number",
						"format": "float"
					},
					"imp_pag5": {
						"type": "number",
						"format": "float"
					},
					"imp_inps0": {
						"type": "number",
						"format": "float"
					},
					"imp_inps1": {
						"type": "number",
						"format": "float"
					},
					"imp_inps2": {
						"type": "number",
						"format": "float"
					},
					"imp_inps3": {
						"type": "number",
						"format": "float"
					},
					"imp_inps4": {
						"type": "number",
						"format": "float"
					},
					"imp_inps5": {
						"type": "number",
						"format": "float"
					},
					"is_abb0": {
						"type": "boolean"
					},
					"is_abb1": {
						"type": "boolean"
					},
					"is_abb2": {
						"type": "boolean"
					},
					"is_abb3": {
						"type": "boolean"
					},
					"is_abb4": {
						"type": "boolean"
					},
					"is_abb5": {
						"type": "boolean"
					},
					"imp_dom0": {
						"type": "string"
					},
					"imp_dom1": {
						"type": "string"
					},
					"imp_dom2": {
						"type": "string"
					},
					"imp_dom3": {
						"type": "string"
					},
					"imp_dom4": {
						"type": "string"
					},
					"imp_dom5": {
						"type": "string"
					}
				}
			},
			"Card": {
				"type": "object",
				"properties": {
					"ca_date_proxy": {
						"type": "string",
						"format": "date-time"
					},
					"ca_file": {
						"type": "string"
					},
					"ca_date_file": {
						"type": "string",
						"format": "date-time"
					},
					"ca_state_file": {
						"type": "string"
					},
					"ca_status_info": {
						"type": "boolean"
					},
					"ca_date_proxy_termination": {
						"type": "string",
						"format": "date-time"
					},
					"ca_is_inps": {
						"type": "boolean"
					},
					"ca_is_direct": {
						"type": "boolean"
					},
					"ca_is_dm10": {
						"type": "boolean"
					},
					"ca_number": {
						"type": "string"
					},
					"ca_consult": {
						"type": "string"
					}
				}
			},
			"CNAINPS": {
				"type": "object",
				"properties": {
					"cna_inps_surname": {
						"type": "string"
					},
					"cna_inps_name": {
						"type": "string"
					},
					"cna_inps_tax_id_code": {
						"type": "string"
					},
					"cna_inps_management": {
						"type": "string"
					},
					"cna_inps_date_birth": {
						"type": "string",
						"format": "date-time"
					},
					"cna_inps_code": {
						"type": "string"
					},
					"cna_inps_match_by_code": {
						"type": "boolean"
					},
					"cna_inps_office_city": {
						"type": "string"
					},
					"cna_inps_amount": {
						"type": "number",
						"format": "float"
					},
					"cna_inps_office_code": {
						"type": "string"
					},
					"cna_inps_exaction": {
						"type": "string"
					},
					"cna_inps_status": {
						"type": "string"
					},
					"cna_inps_date_status": {
						"type": "string",
						"format": "date-time"
					},
					"cna_inps_outcome_result": {
						"type": "string"
					},
					"cna_inps_domiciliation_result": {
						"type": "string"
					}
				}
			},
			"CompanyAppointment": {
				"type": "object",
				"properties": {
					"app_id": {
						"type": "integer",
						"format": "int32"
					},
					"date_ins": {
						"type": "string",
						"format": "date-time"
					},
					"start": {
						"type": "string",
						"format": "date-time"
					},
					"end": {
						"type": "string",
						"format": "date-time"
					},
					"usr_id": {
						"type": "integer",
						"format": "int32"
					},
					"cli_id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"title": {
						"type": "string"
					},
					"usr_displayname": {
						"type": "string"
					},
					"stato": {
						"$ref": "#/components/schemas/Stato"
					},
					"company": {
						"$ref": "#/components/schemas/Company"
					},
					"state": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Stato": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"nome": {
						"type": "string"
					}
				}
			},
			"Contratto": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"descrizione": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CCNL": {
				"type": "object",
				"properties": {
					"ccnl_codice": {
						"type": "integer",
						"format": "int32"
					},
					"ccnl_desc": {
						"type": "string"
					}
				}
			},
			"NatureCompany": {
				"type": "object",
				"properties": {
					"ar_code": {
						"type": "string"
					},
					"ar_desc": {
						"type": "string"
					}
				}
			},
			"CompanyCalendar": {
				"type": "object",
				"properties": {
					"calendario": {
						"type": "string"
					},
					"calendario_no_work": {
						"type": "string"
					}
				}
			},
			"TypeCompany": {
				"type": "object",
				"properties": {
					"cmptp_id": {
						"type": "integer",
						"format": "int32"
					},
					"cmptp_description": {
						"type": "string"
					}
				}
			},
			"CompanyFilter": {
				"allOf": [
					{
						"$ref": "#/components/schemas/ObjectSearchDB"
					},
					{
						"type": "object",
						"properties": {
							"cmp_id": {
								"type": "integer",
								"format": "int32"
							}
						}
					}
				]
			},
			"ObjectSearchDB": {
				"type": "object",
				"properties": {
					"desc": {
						"type": "string"
					},
					"where": {
						"type": "string"
					},
					"orderBy": {
						"type": "string"
					},
					"pagina": {
						"type": "integer",
						"format": "int32"
					},
					"righePagina": {
						"type": "integer",
						"format": "int32"
					},
					"where2": {
						"type": "string"
					},
					"TOTRIGHE": {
						"type": "integer",
						"format": "int64"
					},
					"dataInizio": {
						"type": "string"
					},
					"dataFine": {
						"type": "string"
					},
					"categoria": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"CompanyService": {
				"type": "object",
				"properties": {
					"srv_id": {
						"type": "integer",
						"format": "int32"
					},
					"srv_pt_rl_id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"srv_name": {
						"type": "string"
					},
					"srv_name_view": {
						"type": "string"
					},
					"srv_link": {
						"type": "string"
					},
					"srv_icon": {
						"type": "string"
					},
					"srv_type": {
						"type": "string"
					},
					"srv_description": {
						"type": "string"
					},
					"srv_background_class": {
						"type": "string"
					},
					"srv_background_image": {
						"type": "string"
					},
					"srv_background_opacity": {
						"type": "number",
						"format": "double"
					},
					"srv_show_icon": {
						"type": "boolean"
					},
					"srv_enabled": {
						"type": "boolean"
					},
					"srv_show_cmp_logo": {
						"type": "boolean"
					},
					"srv_show_service_name": {
						"type": "boolean"
					},
					"srv_show_company_name": {
						"type": "boolean"
					},
					"srv_show_hero_image": {
						"type": "boolean"
					},
					"srv_show_distance": {
						"type": "boolean"
					},
					"srv_roles_require_all": {
						"type": "boolean"
					},
					"company": {
						"$ref": "#/components/schemas/Company"
					},
					"cmp_rl_ids": {
						"type": "array",
						"items": {
							"type": "integer",
							"format": "int32"
						}
					},
					"csc_name_view": {
						"type": "string"
					},
					"csc_icon": {
						"type": "string"
					},
					"csc_background_class": {
						"type": "string"
					},
					"csc_background_image": {
						"type": "string"
					},
					"csc_background_opacity": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"ServiceCategory": {
				"type": "object",
				"properties": {
					"csc_id": {
						"type": "integer",
						"format": "int32"
					},
					"csc_name": {
						"type": "string"
					},
					"csc_name_view": {
						"type": "string"
					},
					"csc_icon": {
						"type": "string"
					},
					"csc_background_class": {
						"type": "string"
					},
					"csc_background_image": {
						"type": "string"
					},
					"csc_background_opacity": {
						"type": "number",
						"format": "double"
					},
					"csc_order": {
						"type": "integer",
						"format": "int32"
					},
					"csc_enabled": {
						"type": "boolean"
					}
				}
			},
			"ServicePreset": {
				"type": "object",
				"properties": {
					"prs_id": {
						"type": "integer",
						"format": "int32"
					},
					"prs_name": {
						"type": "string"
					},
					"prs_srv_name": {
						"type": "string"
					},
					"prs_srv_name_view": {
						"type": "string"
					},
					"prs_srv_link": {
						"type": "string"
					},
					"prs_srv_icon": {
						"type": "string"
					},
					"prs_srv_logo_bool": {
						"type": "boolean"
					},
					"prs_srv_type": {
						"type": "string"
					},
					"prs_srv_pt_rl_id": {
						"type": "integer",
						"format": "int32"
					},
					"prs_srv_cmp_name_bool": {
						"type": "boolean"
					}
				}
			},
			"ServicePage": {
				"type": "object",
				"properties": {
					"csp_id": {
						"type": "integer",
						"format": "int32"
					},
					"csp_pg_id": {
						"type": "integer",
						"format": "int32"
					},
					"csp_prs_id": {
						"type": "integer",
						"format": "int32"
					},
					"pg_id": {
						"type": "integer",
						"format": "int32"
					},
					"pg_name": {
						"type": "string"
					},
					"pg_class": {
						"type": "string"
					},
					"pg_url": {
						"type": "string"
					},
					"pg_title": {
						"type": "string"
					},
					"pg_isvisible": {
						"type": "boolean"
					},
					"pg_parentid": {
						"type": "integer",
						"format": "int32"
					},
					"pg_posizione": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"PresetPagesRequest": {
				"type": "object",
				"properties": {
					"prs_id": {
						"type": "integer",
						"format": "int32"
					},
					"pg_ids": {
						"type": "array",
						"items": {
							"type": "integer",
							"format": "int32"
						}
					}
				}
			},
			"CompanyGallery": {
				"type": "object",
				"properties": {
					"cg_id": {
						"type": "integer",
						"format": "int32"
					},
					"cg_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"cg_image_b64": {
						"type": "string"
					},
					"cg_caption": {
						"type": "string"
					},
					"cg_sort_order": {
						"type": "integer",
						"format": "int32"
					},
					"cg_active": {
						"type": "boolean"
					},
					"cg_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"cg_usr_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Component": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"state": {
						"type": "integer",
						"format": "int32"
					},
					"module_name": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"settings": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CondoUnit": {
				"type": "object",
				"properties": {
					"unit_id": {
						"type": "integer",
						"format": "int32"
					},
					"unit_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"unit_type": {
						"type": "string"
					},
					"unit_scala": {
						"type": "string"
					},
					"unit_piano": {
						"type": "string"
					},
					"unit_interno": {
						"type": "string"
					},
					"unit_descrizione": {
						"type": "string"
					},
					"unit_millesimi": {
						"type": "number"
					},
					"cst_display": {
						"type": "string"
					},
					"members_display": {
						"type": "string"
					},
					"millesimi_totali": {
						"type": "number"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CondoUnitMember": {
				"type": "object",
				"properties": {
					"ucm_cst_id": {
						"type": "integer",
						"format": "int32"
					},
					"cst_display": {
						"type": "string"
					},
					"ucm_referente": {
						"type": "boolean"
					}
				}
			},
			"ContrattoCantiereQuota": {
				"type": "object",
				"properties": {
					"ccq_id": {
						"type": "integer",
						"format": "int32"
					},
					"ccq_contract_id": {
						"type": "integer",
						"format": "int32"
					},
					"ccq_data_assoc": {
						"type": "string",
						"format": "date-time"
					},
					"ccq_note": {
						"type": "string"
					},
					"ccq_user_creator": {
						"type": "integer",
						"format": "int32"
					},
					"ws_level": {
						"type": "integer",
						"format": "int32"
					},
					"ws_sublevel": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CustomerAttachment": {
				"type": "object",
				"properties": {
					"ca_id": {
						"type": "integer",
						"format": "int32"
					},
					"ca_cst_id": {
						"type": "integer",
						"format": "int32"
					},
					"ca_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ca_type": {
						"type": "string"
					},
					"ca_file_name": {
						"type": "string"
					},
					"ca_file_path": {
						"type": "string"
					},
					"ca_file_uuid": {
						"type": "string"
					},
					"ca_uploaded_at": {
						"type": "string",
						"format": "date-time"
					},
					"ca_uploaded_by": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"CustomerCommunication": {
				"type": "object",
				"properties": {
					"cc_id": {
						"type": "integer",
						"format": "int32"
					},
					"cc_cst_id": {
						"type": "integer",
						"format": "int32"
					},
					"cc_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"cc_date": {
						"type": "string",
						"format": "date-time"
					},
					"cc_type": {
						"type": "string"
					},
					"cc_subject": {
						"type": "string"
					},
					"cc_description": {
						"type": "string"
					},
					"cc_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"cc_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"cc_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"cc_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"cc_customer_name": {
						"type": "string"
					}
				}
			},
			"Customer": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"userid_pt": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"usr_id_update": {
						"type": "integer",
						"format": "int32"
					},
					"cst_area_code": {
						"type": "integer",
						"format": "int32"
					},
					"cst_type": {
						"type": "integer",
						"format": "int32"
					},
					"name": {
						"type": "string"
					},
					"surname": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"email": {
						"type": "string"
					},
					"phonenr": {
						"type": "string"
					},
					"vat_number": {
						"type": "string"
					},
					"street": {
						"type": "string"
					},
					"cap": {
						"type": "string"
					},
					"tax_code": {
						"type": "string"
					},
					"city": {
						"type": "string"
					},
					"house_number": {
						"type": "string"
					},
					"cst_muc": {
						"type": "string"
					},
					"cst_disability_type": {
						"type": "string"
					},
					"cst_family_contacts": {
						"type": "string"
					},
					"cst_return_notes": {
						"type": "string"
					},
					"cst_autonomous_return": {
						"type": "boolean"
					},
					"data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"date_update": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"DailyReportCalendar": {
				"type": "object",
				"properties": {
					"day_number": {
						"type": "integer",
						"format": "int32"
					},
					"status": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"DailyReport": {
				"type": "object",
				"properties": {
					"wsrerp_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_wsrp_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_wsre_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_date": {
						"type": "string",
						"format": "date-time"
					},
					"wsrerp_usr_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_type": {
						"type": "integer",
						"format": "int32"
					},
					"wsrerp_date_ins": {
						"type": "string",
						"format": "date-time"
					},
					"wsrerp_metadata_value": {
						"type": "string"
					},
					"ws_name": {
						"type": "string"
					},
					"manager_name": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Detached": {
				"type": "object",
				"properties": {
					"cmp_ws_col_id": {
						"type": "integer",
						"format": "int32"
					},
					"sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"col": {
						"$ref": "#/components/schemas/Collaborator"
					},
					"ws": {
						"$ref": "#/components/schemas/Worksite"
					},
					"cmp_ws_col_date_start": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_ws_col_date_end_date": {
						"type": "string",
						"format": "date-time"
					},
					"cmp_ws_col_date_end": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"DisabilityType": {
				"type": "object",
				"properties": {
					"dt_id": {
						"type": "integer",
						"format": "int32"
					},
					"dt_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"dt_label": {
						"type": "string"
					},
					"dt_value": {
						"type": "string"
					}
				}
			},
			"Doctor": {
				"type": "object",
				"properties": {
					"dc_id": {
						"type": "integer",
						"format": "int32"
					},
					"dc_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"dc_name": {
						"type": "string"
					},
					"dc_surname": {
						"type": "string"
					},
					"dc_mail": {
						"type": "string"
					},
					"dc_org_id": {
						"type": "integer",
						"format": "int32"
					},
					"dc_usr_id": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"GeneraDocumentoResponse": {
				"type": "object",
				"properties": {
					"wsd_id": {
						"type": "integer",
						"format": "int32"
					},
					"drfl_id": {
						"type": "integer",
						"format": "int32"
					},
					"filename": {
						"type": "string"
					}
				}
			},
			"GeneraDocumentoRequest": {
				"type": "object",
				"properties": {
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsdty_id": {
						"type": "integer",
						"format": "int32"
					},
					"sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"amount_security": {
						"type": "number"
					},
					"description": {
						"type": "string"
					},
					"wsd_id_carta": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"WsDocTemplate": {
				"type": "object",
				"properties": {
					"wsdt_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_wsdty_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_wsdtr_id": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_html_content": {
						"type": "string"
					},
					"wsdt_placeholders": {
						"type": "string"
					},
					"wsdt_active": {
						"type": "boolean"
					},
					"wsdt_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"wsdt_usr_id_update": {
						"type": "integer",
						"format": "int32"
					},
					"wsdt_date_update": {
						"type": "string",
						"format": "date-time"
					},
					"wsdty_label": {
						"type": "string"
					},
					"wsdtr_code": {
						"type": "string"
					},
					"wsdtr_label": {
						"type": "string"
					}
				}
			},
			"EmployeeWorkRelationship": {
				"type": "object",
				"properties": {
					"emp": {
						"$ref": "#/components/schemas/Employee"
					},
					"cwr": {
						"$ref": "#/components/schemas/WorkRelationship"
					}
				}
			},
			"WorkRelationship": {
				"type": "object",
				"properties": {
					"cwr_id": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_of_id": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_em_id": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_dt_rel_start": {
						"type": "string",
						"format": "date-time"
					},
					"cwr_dt_rel_end": {
						"type": "string",
						"format": "date-time"
					},
					"cwr_validity": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_cwrl_id": {
						"type": "integer",
						"format": "int32"
					},
					"cwr_gross_pay": {
						"type": "number",
						"format": "float"
					},
					"cwr_net_pay": {
						"type": "number",
						"format": "float"
					},
					"cwr_of_address": {
						"type": "string"
					},
					"cwr_comune": {
						"type": "string"
					},
					"cwr_social_security_institution": {
						"type": "string"
					},
					"cwr_patinail": {
						"type": "string"
					},
					"cwr_contract_type": {
						"type": "string"
					},
					"cwr_weekly_hours": {
						"type": "number",
						"format": "float"
					},
					"cwr_work_days": {
						"type": "string"
					}
				}
			},
			"PrintLivelRequest": {
				"type": "object",
				"properties": {
					"emp_id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"data_inizio": {
						"type": "string",
						"format": "date-time"
					},
					"livello": {
						"type": "string"
					},
					"mansione": {
						"type": "string"
					}
				}
			},
			"StringObject": {
				"type": "object",
				"properties": {
					"res": {
						"type": "string"
					}
				}
			},
			"WorkRelationshipLevel": {
				"type": "object",
				"properties": {
					"cwrl_id": {
						"type": "integer",
						"format": "int32"
					},
					"cwrl_description": {
						"type": "string"
					},
					"cwrl_cmp_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"ServiceFavorite": {
				"type": "object",
				"properties": {
					"srv_id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Gara": {
				"type": "object",
				"properties": {
					"gr_id": {
						"type": "integer",
						"format": "int32"
					},
					"gr_codice": {
						"type": "integer",
						"format": "int32"
					},
					"gr_anno": {
						"type": "integer",
						"format": "int32"
					},
					"gr_protocollo": {
						"type": "string"
					},
					"gr_datascadenzaofferta": {
						"type": "string",
						"format": "date-time"
					},
					"gr_dataapertura": {
						"type": "string",
						"format": "date-time"
					},
					"gr_drfld_id": {
						"type": "integer",
						"format": "int32"
					},
					"gr_note": {
						"type": "string"
					},
					"gr_idinvito_idgara": {
						"type": "integer",
						"format": "int32"
					},
					"gr_settore": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"company": {
						"$ref": "#/components/schemas/Company"
					},
					"tipo_gara": {
						"$ref": "#/components/schemas/TipoGara"
					},
					"modaggap": {
						"$ref": "#/components/schemas/ModalitaAggiudicazione"
					},
					"customer": {
						"$ref": "#/components/schemas/Customer"
					},
					"lst_lotti": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Lotto"
						}
					}
				}
			},
			"TipoGara": {
				"type": "object",
				"properties": {
					"tp_ga_id": {
						"type": "integer",
						"format": "int32"
					},
					"tp_ga_name": {
						"type": "string"
					},
					"tp_ga_categoria": {
						"type": "string"
					}
				}
			},
			"ModalitaAggiudicazione": {
				"type": "object",
				"properties": {
					"modaggap_id": {
						"type": "integer",
						"format": "int32"
					},
					"modaggap_nome": {
						"type": "string"
					}
				}
			},
			"Lotto": {
				"type": "object",
				"properties": {
					"lot_id": {
						"type": "integer",
						"format": "int32"
					},
					"lot_gr_id": {
						"type": "integer",
						"format": "int32"
					},
					"lot_oggetto": {
						"type": "string"
					},
					"lot_importo": {
						"type": "number",
						"format": "double"
					},
					"lot_npartecipanti": {
						"type": "integer",
						"format": "int32"
					},
					"lot_nesclusi": {
						"type": "integer",
						"format": "int32"
					},
					"lot_percribasso": {
						"type": "number",
						"format": "double"
					},
					"lot_dittaaggiudicatrice": {
						"type": "string"
					},
					"lot_indirizzodittaaggiudicatrice": {
						"type": "string"
					},
					"lot_dataaggiudicazione": {
						"type": "string",
						"format": "date-time"
					},
					"lot_percaggiudicataria": {
						"type": "number",
						"format": "double"
					},
					"lot_nggduratalavori": {
						"type": "string"
					},
					"lot_nggprogettazione": {
						"type": "string"
					},
					"lot_percpart": {
						"type": "number",
						"format": "double"
					},
					"lot_stato": {
						"type": "integer",
						"format": "int32"
					},
					"lot_cig": {
						"type": "string"
					},
					"lot_cup": {
						"type": "string"
					},
					"lot_cncec": {
						"type": "string"
					},
					"lot_punteggioagg": {
						"type": "number",
						"format": "double"
					},
					"lot_punteggio": {
						"type": "number",
						"format": "double"
					},
					"lot_nomecartella": {
						"type": "string"
					},
					"lot_drfld_id": {
						"type": "integer",
						"format": "int32"
					},
					"lot_nggproroga": {
						"type": "string"
					},
					"frmpar": {
						"$ref": "#/components/schemas/FormaPartecipazione"
					},
					"tipopartecipazione": {
						"$ref": "#/components/schemas/TipoPartecipazione"
					},
					"ditte_associate": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Supplier"
						}
					},
					"categorie_classifiche": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/CategoriaClassifica"
						}
					},
					"progettisti": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/Progettista"
						}
					}
				}
			},
			"FormaPartecipazione": {
				"type": "object",
				"properties": {
					"frmpar_id": {
						"type": "integer",
						"format": "int32"
					},
					"frmpar_name": {
						"type": "string"
					}
				}
			},
			"TipoPartecipazione": {
				"type": "object",
				"properties": {
					"tipopartecipazione_id": {
						"type": "integer",
						"format": "int32"
					},
					"tipopartecipazione_name": {
						"type": "string"
					}
				}
			},
			"CategoriaClassifica": {
				"type": "object",
				"properties": {
					"cat": {
						"$ref": "#/components/schemas/Categoria"
					},
					"cla": {
						"$ref": "#/components/schemas/Classifica"
					},
					"grcat_catprev": {
						"type": "boolean"
					}
				}
			},
			"Classifica": {
				"type": "object",
				"properties": {
					"cls_id": {
						"type": "integer",
						"format": "int32"
					},
					"cls_nome": {
						"type": "string"
					}
				}
			},
			"Progettista": {
				"type": "object",
				"properties": {
					"prog_id": {
						"type": "integer",
						"format": "int32"
					},
					"prog_lot_id": {
						"type": "integer",
						"format": "int32"
					},
					"prog_ragione_sociale": {
						"type": "string"
					},
					"prog_tipologia": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"Comune": {
				"type": "object",
				"properties": {
					"codicefiscale": {
						"type": "string"
					},
					"denominazione": {
						"type": "string"
					},
					"codiceprovincia": {
						"type": "string"
					},
					"cap": {
						"type": "string"
					}
				}
			},
			"OrgType": {
				"type": "object",
				"properties": {
					"tporg_id": {
						"type": "integer",
						"format": "int32"
					},
					"tporg_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"tporg_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"tporg_usr_id_update": {
						"type": "integer",
						"format": "int32"
					},
					"tporg_name": {
						"type": "string"
					},
					"tporg_description": {
						"type": "string"
					},
					"tporg_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"tporg_date_update": {
						"type": "string",
						"format": "date-time"
					}
				}
			},
			"CmpConversation": {
				"type": "object",
				"properties": {
					"conv_id": {
						"type": "integer",
						"format": "int32"
					},
					"conv_user1_id": {
						"type": "integer",
						"format": "int32"
					},
					"conv_user2_id": {
						"type": "integer",
						"format": "int32"
					},
					"conv_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"conv_type": {
						"type": "string"
					},
					"conv_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"other_lastname": {
						"type": "string"
					},
					"other_username": {
						"type": "string"
					},
					"other_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"other_prt_id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"PvInverter": {
				"type": "object",
				"properties": {
					"inv_id": {
						"type": "integer",
						"format": "int32"
					},
					"inv_pv_id": {
						"type": "integer",
						"format": "int32"
					},
					"inv_name": {
						"type": "string"
					},
					"inv_attivo": {
						"type": "boolean"
					},
					"inv_ordine": {
						"type": "integer",
						"format": "int32"
					},
					"inv_phase": {
						"type": "string"
					},
					"inv_correction_factor": {
						"type": "number"
					},
					"inv_dc_arrays": {
						"type": "integer",
						"format": "int32"
					},
					"inv_passover_kwh": {
						"type": "number"
					},
					"inv_sensor": {
						"type": "string"
					},
					"inv_port": {
						"type": "string"
					},
					"inv_rs485_address": {
						"type": "string"
					},
					"inv_comm_options": {
						"type": "string"
					},
					"inv_sync_time_daily": {
						"type": "boolean"
					},
					"inv_log_com_errors": {
						"type": "boolean"
					},
					"inv_skip_monitoring": {
						"type": "boolean"
					},
					"inv_yaxis_tick": {
						"type": "integer",
						"format": "int32"
					},
					"inv_info2": {
						"type": "string"
					},
					"inv_array2_dc_wp": {
						"type": "integer",
						"format": "int32"
					},
					"inv_array3_dc_wp": {
						"type": "integer",
						"format": "int32"
					},
					"inv_array4_dc_wp": {
						"type": "integer",
						"format": "int32"
					},
					"inv_exp_feb": {
						"type": "number"
					},
					"inv_exp_mar": {
						"type": "number"
					},
					"inv_exp_apr": {
						"type": "number"
					},
					"inv_exp_may": {
						"type": "number"
					},
					"inv_exp_jun": {
						"type": "number"
					},
					"inv_exp_jul": {
						"type": "number"
					},
					"inv_exp_aug": {
						"type": "number"
					},
					"inv_exp_sep": {
						"type": "number"
					},
					"inv_exp_oct": {
						"type": "number"
					},
					"inv_exp_nov": {
						"type": "number"
					},
					"inv_exp_dec": {
						"type": "number"
					},
					"inv_digest_min": {
						"type": "integer",
						"format": "int32"
					},
					"inv_notification_filter": {
						"type": "string"
					},
					"inv_receive_email": {
						"type": "boolean"
					},
					"inv_check_alarms": {
						"type": "boolean"
					},
					"inv_check_messages": {
						"type": "boolean"
					},
					"inv_warn_conn_lost": {
						"type": "boolean"
					},
					"inv_log_all_measures": {
						"type": "boolean"
					},
					"inv_grid_v_min": {
						"type": "number"
					},
					"inv_grid_v_max": {
						"type": "number"
					},
					"inv_res_insulation_mohm": {
						"type": "number"
					},
					"inv_current_leak_ma": {
						"type": "number"
					},
					"inv_last_seen": {
						"type": "string",
						"format": "date-time"
					},
					"inv_last_status": {
						"type": "string"
					},
					"inv_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"inv_data_ins": {
						"type": "string",
						"format": "date-time"
					}
				}
			},
			"PvIngestRequest": {
				"type": "object",
				"properties": {
					"token": {
						"type": "string"
					},
					"readings": {}
				}
			},
			"PvPlant": {
				"type": "object",
				"properties": {
					"pv_id": {
						"type": "integer",
						"format": "int32"
					},
					"pv_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"pv_pod": {
						"type": "string"
					},
					"pv_indirizzo": {
						"type": "string"
					},
					"pv_data_installazione": {
						"type": "string",
						"format": "date-time"
					},
					"pv_num_moduli": {
						"type": "integer",
						"format": "int32"
					},
					"pv_num_inverter": {
						"type": "integer",
						"format": "int32"
					},
					"pv_note": {
						"type": "string"
					},
					"pv_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"pv_module_width_m": {
						"type": "number"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"Review": {
				"type": "object",
				"properties": {
					"rev_id": {
						"type": "integer",
						"format": "int32"
					},
					"rev_source": {
						"type": "string"
					},
					"rev_source_id": {
						"type": "integer",
						"format": "int32"
					},
					"rev_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"rev_service_type_id": {
						"type": "integer",
						"format": "int32"
					},
					"rev_context_name": {
						"type": "string"
					},
					"rev_context_color": {
						"type": "string"
					},
					"rev_client_usr_id": {
						"type": "integer",
						"format": "int32"
					},
					"rev_rating_quality": {
						"type": "integer",
						"format": "int32"
					},
					"rev_rating_service": {
						"type": "integer",
						"format": "int32"
					},
					"rev_rating_price": {
						"type": "integer",
						"format": "int32"
					},
					"rev_rating_timeliness": {
						"type": "integer",
						"format": "int32"
					},
					"rev_rating_overall": {
						"type": "number"
					},
					"rev_title": {
						"type": "string"
					},
					"rev_text": {
						"type": "string"
					},
					"rev_status": {
						"type": "string"
					},
					"rev_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"rev_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"rev_active": {
						"type": "boolean"
					},
					"client_lastname": {
						"type": "string"
					}
				}
			},
			"ReviewStats": {
				"type": "object",
				"properties": {
					"avg_overall": {
						"type": "number"
					},
					"total_count": {
						"type": "integer",
						"format": "int32"
					},
					"avg_quality": {
						"type": "number"
					},
					"avg_service": {
						"type": "number"
					},
					"avg_price": {
						"type": "number"
					},
					"avg_timeliness": {
						"type": "number"
					},
					"star4": {
						"type": "integer",
						"format": "int32"
					},
					"star3": {
						"type": "integer",
						"format": "int32"
					},
					"star2": {
						"type": "integer",
						"format": "int32"
					},
					"star1": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"FatturaPerCantiereRiga": {
				"type": "object",
				"properties": {
					"fat_id": {
						"type": "integer",
						"format": "int32"
					},
					"fat_data": {
						"type": "string",
						"format": "date-time"
					},
					"fat_numero": {
						"type": "string"
					},
					"fornitore": {
						"type": "string"
					},
					"fat_descrizione": {
						"type": "string"
					},
					"imponibile": {
						"type": "number"
					},
					"totale": {
						"type": "number"
					},
					"fat_fatimp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_name": {
						"type": "string"
					},
					"is_nota_credito": {
						"type": "boolean"
					},
					"costi_concatenati": {
						"type": "string"
					},
					"fat_has_xml": {
						"type": "boolean"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"CostoPerCantiereRiga": {
				"type": "object",
				"properties": {
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_name": {
						"type": "string"
					},
					"imponibile": {
						"type": "number"
					},
					"totale": {
						"type": "number"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"Ruolo": {
				"type": "object",
				"properties": {
					"rl_id": {
						"type": "integer",
						"format": "int32"
					},
					"rl_description": {
						"type": "string"
					},
					"rl_name": {
						"type": "string"
					},
					"rl_type": {
						"type": "string"
					},
					"rl_default_supplier": {
						"type": "boolean"
					},
					"rl_default_employee": {
						"type": "boolean"
					},
					"rl_isChecked": {
						"type": "boolean"
					},
					"rl_default": {
						"type": "boolean"
					},
					"rl_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"rl_usr_ins": {
						"type": "integer",
						"format": "int32"
					},
					"rl_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"SalPassivoOrdine": {
				"type": "object",
				"properties": {
					"ord_id": {
						"type": "integer",
						"format": "int32"
					},
					"ord_slp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ord_str_nriga": {
						"type": "integer",
						"format": "int32"
					},
					"ord_str_anno": {
						"type": "integer",
						"format": "int32"
					},
					"ord_str_nordine": {
						"type": "integer",
						"format": "int32"
					},
					"ord_descrizione": {
						"type": "string"
					},
					"ord_qtatot": {
						"type": "number"
					},
					"ord_qtaord": {
						"type": "number"
					},
					"ord_udm": {
						"type": "string"
					},
					"ord_prezzo_uni": {
						"type": "number"
					},
					"ord_importo": {
						"type": "number"
					},
					"ord_importato": {
						"type": "boolean"
					},
					"ord_data": {
						"type": "string",
						"format": "date-time"
					},
					"ord_dataconferma": {
						"type": "string",
						"format": "date-time"
					},
					"ord_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"ord_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"ord_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"ord_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"ord_qta_evasa_prec": {
						"type": "number"
					}
				}
			},
			"SalPassivo": {
				"type": "object",
				"properties": {
					"slp_id": {
						"type": "integer",
						"format": "int32"
					},
					"slp_sub_id": {
						"type": "integer",
						"format": "int32"
					},
					"slp_date": {
						"type": "string",
						"format": "date-time"
					},
					"slp_work_date_from": {
						"type": "string",
						"format": "date-time"
					},
					"slp_work_date_to": {
						"type": "string",
						"format": "date-time"
					},
					"slp_withholding": {
						"type": "number"
					},
					"slp_amount": {
						"type": "number"
					},
					"slp_type": {
						"type": "integer",
						"format": "int32"
					},
					"slp_auth_date": {
						"type": "string",
						"format": "date-time"
					},
					"slp_status": {
						"type": "integer",
						"format": "int32"
					},
					"slp_contract_days": {
						"type": "integer",
						"format": "int32"
					},
					"slp_works_due_date": {
						"type": "string",
						"format": "date-time"
					},
					"slp_ext_days": {
						"type": "integer",
						"format": "int32"
					},
					"slp_new_due_date": {
						"type": "string",
						"format": "date-time"
					},
					"slp_notes": {
						"type": "string"
					},
					"slp_works_start_date": {
						"type": "string",
						"format": "date-time"
					},
					"slp_date_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_work_date_from_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_work_date_to_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_withholding_bozza": {
						"type": "number"
					},
					"slp_amount_bozza": {
						"type": "number"
					},
					"slp_type_bozza": {
						"type": "integer",
						"format": "int32"
					},
					"slp_auth_date_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_contract_days_bozza": {
						"type": "integer",
						"format": "int32"
					},
					"slp_works_due_date_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_ext_days_bozza": {
						"type": "integer",
						"format": "int32"
					},
					"slp_new_due_date_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_notes_bozza": {
						"type": "string"
					},
					"slp_works_start_date_bozza": {
						"type": "string",
						"format": "date-time"
					},
					"slp_mode_ins": {
						"type": "string"
					},
					"slp_cert_gen": {
						"type": "boolean"
					},
					"slp_rev_id": {
						"type": "integer",
						"format": "int32"
					},
					"slp_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"slp_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"slp_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"slp_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"sub_contract_num": {
						"type": "integer",
						"format": "int32"
					},
					"slp_type_label": {
						"type": "string"
					},
					"slp_status_label": {
						"type": "string"
					},
					"slp_has_bozza": {
						"type": "boolean"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"SalPassivoNota": {
				"type": "object",
				"properties": {
					"index": {
						"type": "integer",
						"format": "int32"
					},
					"operatore": {
						"type": "string"
					},
					"dataIns": {
						"type": "string"
					}
				}
			},
			"Sal": {
				"type": "object",
				"properties": {
					"sal_id": {
						"type": "integer",
						"format": "int32"
					},
					"sal_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"sal_sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"sal_protocol": {
						"type": "string"
					},
					"sal_amount": {
						"type": "number"
					},
					"sal_lavori_misura_netto": {
						"type": "number"
					},
					"sal_lavori_economia_lordo": {
						"type": "number"
					},
					"sal_lavori_economia_netto": {
						"type": "number"
					},
					"sal_costi_sicurezza_speciali": {
						"type": "number"
					},
					"sal_ribasso_percentuale": {
						"type": "number"
					},
					"sal_ribasso_importo": {
						"type": "number"
					},
					"sal_date_from": {
						"type": "string",
						"format": "date-time"
					},
					"sal_date_to": {
						"type": "string",
						"format": "date-time"
					},
					"sal_tipologia": {
						"type": "integer",
						"format": "int32"
					},
					"sal_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"sal_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"sal_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"sup_name": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"FatturaSF": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"idImpresa": {
						"type": "integer",
						"format": "int32"
					},
					"idTipologiaFat": {
						"type": "integer",
						"format": "int32"
					},
					"idScadenza": {
						"type": "integer",
						"format": "int32"
					},
					"idIBAN": {
						"type": "integer",
						"format": "int32"
					},
					"idFornitore": {
						"type": "integer",
						"format": "int32"
					},
					"idCliente": {
						"type": "integer",
						"format": "int32"
					},
					"dataIns": {
						"type": "string",
						"format": "date-time"
					},
					"numero": {
						"type": "string"
					},
					"descrizione": {
						"type": "string"
					},
					"imponibile": {
						"type": "number",
						"format": "double"
					},
					"imponibileIVA": {
						"type": "number",
						"format": "double"
					},
					"importo": {
						"type": "number",
						"format": "double"
					},
					"importoTotale": {
						"type": "number",
						"format": "double"
					},
					"importoPagato": {
						"type": "number",
						"format": "double"
					},
					"importoRitenutaAcconto": {
						"type": "number",
						"format": "double"
					},
					"hasdocRespSol": {
						"type": "boolean"
					},
					"responsabilitaSolidale": {
						"type": "boolean"
					},
					"idFatturaImport": {
						"type": "integer",
						"format": "int32"
					},
					"hasXmlPath": {
						"type": "boolean"
					},
					"barcode": {
						"type": "string"
					},
					"tempFilePath": {
						"type": "string"
					},
					"idFolderRepository": {
						"type": "integer",
						"format": "int32"
					},
					"cig": {
						"type": "string"
					},
					"cup": {
						"type": "string"
					},
					"printed": {
						"type": "boolean"
					},
					"rateChecked": {
						"type": "boolean"
					},
					"statoConvalida": {
						"type": "integer",
						"format": "int32"
					},
					"singleCantiereId": {
						"type": "integer",
						"format": "int32"
					},
					"categoriaCount": {
						"type": "integer",
						"format": "int32"
					},
					"singleCategoriaId": {
						"type": "integer",
						"format": "int32"
					},
					"annoCompetenzaCount": {
						"type": "integer",
						"format": "int32"
					},
					"singleAnnoCompetenza": {
						"type": "integer",
						"format": "int32"
					},
					"sffaVcstId": {
						"type": "integer",
						"format": "int32"
					},
					"supplier": {
						"$ref": "#/components/schemas/Supplier"
					},
					"tipologia": {
						"$ref": "#/components/schemas/TipologiaFat"
					},
					"scadenza": {
						"$ref": "#/components/schemas/Scadenza"
					},
					"lstImportoRata": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/ImportoRata"
						}
					},
					"informazioniRate": {
						"$ref": "#/components/schemas/InfoRate"
					},
					"lstAccontieNDC": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/AccontiNDC"
						}
					},
					"lstAccontiCollegati": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/FatturaAccontoCollegamento"
						}
					},
					"lstCollegamentiComeFatturaAcconto": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/FatturaAccontoCollegamento"
						}
					},
					"lstFattureWorksite": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/FatturaWorksite"
						}
					},
					"customer": {
						"$ref": "#/components/schemas/Customer"
					}
				}
			},
			"TipologiaFat": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"descrizione": {
						"type": "string"
					},
					"index": {
						"type": "integer",
						"format": "int32"
					},
					"codiceTd": {
						"type": "string"
					},
					"macrogruppo": {
						"type": "string"
					}
				}
			},
			"Scadenza": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"descrizione": {
						"type": "string"
					},
					"valore": {
						"type": "string"
					},
					"index": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"ImportoRata": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"idFattura": {
						"type": "integer",
						"format": "int32"
					},
					"importo": {
						"type": "number",
						"format": "double"
					},
					"dataScadenza": {
						"type": "string",
						"format": "date-time"
					},
					"dataPagamento": {
						"type": "string",
						"format": "date-time"
					},
					"numeroRata": {
						"type": "integer",
						"format": "int32"
					},
					"tipoImporto": {
						"type": "integer",
						"format": "int32"
					},
					"noteLettura": {
						"type": "string"
					},
					"barcodeDistintaPagamento": {
						"type": "string"
					},
					"fattRif": {
						"type": "string"
					}
				}
			},
			"InfoRate": {
				"type": "object",
				"properties": {
					"totImportoRatePagate": {
						"type": "number",
						"format": "double"
					},
					"totImportoRateDaPagare": {
						"type": "number",
						"format": "double"
					},
					"totRate": {
						"type": "number",
						"format": "double"
					},
					"totRateDaPagare": {
						"type": "integer",
						"format": "int32"
					},
					"totRatePagate": {
						"type": "integer",
						"format": "int32"
					},
					"totImportoUtilizzato": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"AccontiNDC": {
				"type": "object",
				"properties": {
					"acndc_id": {
						"type": "integer",
						"format": "int32"
					},
					"acndc_key": {
						"type": "integer",
						"format": "int32"
					},
					"acndc_fat_id": {
						"type": "integer",
						"format": "int32"
					},
					"acndc_importo": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"FatturaAccontoCollegamento": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"FatturaWorksite": {
				"type": "object",
				"properties": {
					"fattws_id": {
						"type": "integer",
						"format": "int32"
					},
					"fattws_fatt_id": {
						"type": "integer",
						"format": "int32"
					},
					"fattws_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"fattws_imponibile": {
						"type": "number",
						"format": "double"
					},
					"ws_name": {
						"type": "string"
					},
					"lot_cig": {
						"type": "string"
					},
					"lot_cup": {
						"type": "string"
					}
				}
			},
			"BancaPagamentoFlusso": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"idAzienda": {
						"type": "integer",
						"format": "int32"
					},
					"denominazione": {
						"type": "string"
					},
					"denominazioneEstesa": {
						"type": "string"
					},
					"generaIdentificativo": {
						"type": "boolean"
					},
					"importoLimite": {
						"type": "number",
						"format": "double"
					},
					"estensioneFile": {
						"type": "string"
					},
					"lettereSito": {
						"type": "string"
					},
					"lettereNome": {
						"type": "string"
					},
					"lettereDescrizionePagamento": {
						"type": "string"
					},
					"tipoFlusso": {
						"type": "string"
					},
					"abi": {
						"type": "string"
					},
					"iban": {
						"type": "string"
					},
					"numeroId": {
						"type": "string"
					},
					"identificativo": {
						"type": "string"
					},
					"singoleDistintePagamento": {
						"type": "boolean"
					},
					"isNotActive": {
						"type": "boolean"
					},
					"dataIns": {
						"type": "string",
						"format": "date-time"
					},
					"dataUpd": {
						"type": "string",
						"format": "date-time"
					}
				}
			},
			"DatiFiscaliDTO": {
				"type": "object",
				"properties": {
					"tipo": {
						"type": "string"
					},
					"nome": {
						"type": "string"
					},
					"cognome": {
						"type": "string"
					},
					"pIva": {
						"type": "string"
					},
					"codFiscale": {
						"type": "string"
					},
					"indirizzo": {
						"type": "string"
					},
					"civico": {
						"type": "string"
					},
					"cap": {
						"type": "string"
					},
					"citta": {
						"type": "string"
					},
					"prov": {
						"type": "string"
					},
					"nazione": {
						"type": "string"
					},
					"pec": {
						"type": "string"
					},
					"codiceDest": {
						"type": "string"
					}
				}
			},
			"RichiestaFatturaDTO": {
				"type": "object",
				"properties": {
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"module": {
						"type": "string"
					},
					"righe": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/RigaFatturaDTO"
						}
					},
					"pagamento": {
						"$ref": "#/components/schemas/PagamentoDTO"
					}
				}
			},
			"RigaFatturaDTO": {
				"type": "object",
				"properties": {
					"descrizione": {
						"type": "string"
					},
					"quantita": {
						"type": "number",
						"format": "double"
					},
					"unitaMisura": {
						"type": "string"
					},
					"prezzoUnitario": {
						"type": "number",
						"format": "double"
					}
				}
			},
			"PagamentoDTO": {
				"type": "object",
				"properties": {
					"metodoSdi": {
						"type": "string"
					},
					"dataPagamento": {
						"type": "string"
					}
				}
			},
			"FlussoPagamento": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"idAzienda": {
						"type": "integer",
						"format": "int32"
					},
					"idBancaPagamentoFlusso": {
						"type": "integer",
						"format": "int32"
					},
					"tipologia": {
						"type": "string"
					},
					"tipoOperazione": {
						"type": "string"
					},
					"fullFilename": {
						"type": "string"
					},
					"filename": {
						"type": "string"
					},
					"dataIns": {
						"type": "string",
						"format": "date-time"
					},
					"portalHomeDirectory": {
						"type": "string"
					},
					"portalHomeDirectoryMapPath": {
						"type": "string"
					},
					"dataAddebito": {
						"type": "string",
						"format": "date-time"
					},
					"ibanPagamento": {
						"type": "string"
					},
					"barcodeDistintePagamento": {
						"type": "string"
					},
					"isDeleted": {
						"type": "boolean"
					},
					"dataAnnullamento": {
						"type": "string",
						"format": "date-time"
					},
					"numOperazioni": {
						"type": "integer",
						"format": "int32"
					},
					"importoTotale": {
						"type": "number",
						"format": "double"
					},
					"stato": {
						"type": "string"
					}
				}
			},
			"FatturaSFImport": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmpId": {
						"type": "integer",
						"format": "int32"
					},
					"supId": {
						"type": "integer",
						"format": "int32"
					},
					"cbId": {
						"type": "integer",
						"format": "int32"
					},
					"dataDoc": {
						"type": "string",
						"format": "date-time"
					},
					"numDoc": {
						"type": "string"
					},
					"stato": {
						"type": "integer",
						"format": "int32"
					},
					"imponibile": {
						"type": "number",
						"format": "double"
					},
					"imposta": {
						"type": "number",
						"format": "double"
					},
					"ritenutaFiscale": {
						"type": "number",
						"format": "double"
					},
					"ritenutaGaranzia": {
						"type": "number",
						"format": "double"
					},
					"path": {
						"type": "string"
					},
					"tpfId": {
						"type": "integer",
						"format": "int32"
					},
					"dataIns": {
						"type": "string",
						"format": "date-time"
					},
					"dataSdi": {
						"type": "string",
						"format": "date-time"
					},
					"pagamenti": {
						"type": "string"
					},
					"dettaglio": {
						"type": "string"
					},
					"cigCupList": {
						"type": "string"
					},
					"datiCassaPrev": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"singleCantiereId": {
						"type": "integer",
						"format": "int32"
					},
					"categoriaCount": {
						"type": "integer",
						"format": "int32"
					},
					"singleCategoriaId": {
						"type": "integer",
						"format": "int32"
					},
					"annoCompetenzaCount": {
						"type": "integer",
						"format": "int32"
					},
					"singleAnnoCompetenza": {
						"type": "integer",
						"format": "int32"
					},
					"supplier": {
						"$ref": "#/components/schemas/Supplier"
					},
					"bank": {
						"$ref": "#/components/schemas/Bank"
					},
					"tipologia": {
						"$ref": "#/components/schemas/TipologiaFat"
					}
				}
			},
			"RataDaPagare": {
				"type": "object",
				"properties": {
					"idFattura": {
						"type": "integer",
						"format": "int32"
					},
					"importo": {
						"type": "number",
						"format": "double"
					},
					"dataScadenza": {
						"type": "string",
						"format": "date-time"
					},
					"numeroRata": {
						"type": "integer",
						"format": "int32"
					},
					"dataFattura": {
						"type": "string",
						"format": "date-time"
					},
					"descrizioneFattura": {
						"type": "string"
					},
					"ragioneSocialeFornitore": {
						"type": "string"
					},
					"indirizzoFornitore": {
						"type": "string"
					},
					"numeroCivicoFornitore": {
						"type": "string"
					},
					"capFornitore": {
						"type": "string"
					},
					"cittaFornitore": {
						"type": "string"
					},
					"partitaIvaFornitore": {
						"type": "string"
					},
					"codiceFiscaleFornitore": {
						"type": "string"
					},
					"dataScadenzaDurc": {
						"type": "string",
						"format": "date-time"
					},
					"ibanBancaPagamento": {
						"type": "string"
					},
					"hasRespSolValid": {
						"type": "boolean"
					}
				}
			},
			"SchedaCantiereRiga": {
				"type": "object",
				"properties": {
					"ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_name": {
						"type": "string"
					},
					"ws_stato": {
						"type": "integer",
						"format": "int32"
					},
					"ws_st_description": {
						"type": "string"
					},
					"cst_name": {
						"type": "string"
					},
					"ws_importocompetenza": {
						"type": "number"
					},
					"fatturato": {
						"type": "number"
					},
					"anticipo_richiesto": {
						"type": "number"
					},
					"costi": {
						"type": "number"
					},
					"utile_perdita": {
						"type": "number"
					},
					"produzione": {
						"type": "number"
					},
					"ws_datafinelavori": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					},
					"ws_level": {
						"type": "integer",
						"format": "int32"
					},
					"ws_sublevel": {
						"type": "integer",
						"format": "int32"
					},
					"ws_level_name": {
						"type": "string"
					},
					"ws_sublevel_name": {
						"type": "string"
					}
				}
			},
			"Sopralluogo": {
				"type": "object",
				"properties": {
					"origin": {
						"type": "string"
					},
					"sl_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"sl_stato": {
						"type": "integer",
						"format": "int32"
					},
					"sl_protocollo": {
						"type": "string"
					},
					"sl_descrizione": {
						"type": "string"
					},
					"sl_note": {
						"type": "string"
					},
					"sl_descrizione_oggetto": {
						"type": "string"
					},
					"sl_costo": {
						"type": "number"
					},
					"sl_costo_effettivo": {
						"type": "number"
					},
					"sl_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"sl_data_convalida": {
						"type": "string",
						"format": "date-time"
					},
					"sl_data_contabilita": {
						"type": "string",
						"format": "date-time"
					},
					"sl_data_fattura": {
						"type": "string",
						"format": "date-time"
					},
					"sl_data_apertura_sopralluogo": {
						"type": "string",
						"format": "date-time"
					},
					"sl_lavagna": {
						"type": "string"
					},
					"sl_lavagna_thumbnails": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"SopralluogoTipo": {
				"type": "object",
				"properties": {
					"tpi_id": {
						"type": "integer",
						"format": "int32"
					},
					"tpi_descrizione": {
						"type": "string"
					},
					"tpi_tipologia": {
						"type": "string"
					},
					"tpi_categoria": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"SubAff": {
				"type": "object",
				"properties": {
					"sub_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_cnt_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_contract_num": {
						"type": "integer",
						"format": "int32"
					},
					"sub_contract_date": {
						"type": "string",
						"format": "date-time"
					},
					"sub_sup_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_status": {
						"type": "integer",
						"format": "int32"
					},
					"sub_status_detail": {
						"type": "string"
					},
					"sub_guarantee_pct": {
						"type": "integer",
						"format": "int32"
					},
					"sub_amount": {
						"type": "number"
					},
					"sub_auth_date": {
						"type": "string",
						"format": "date-time"
					},
					"sub_ods_num": {
						"type": "integer",
						"format": "int32"
					},
					"sub_type": {
						"type": "integer",
						"format": "int32"
					},
					"sub_is_not_active": {
						"type": "boolean"
					},
					"sub_folder_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"sub_created_at": {
						"type": "string",
						"format": "date-time"
					},
					"sub_updated_at": {
						"type": "string",
						"format": "date-time"
					},
					"sub_created_by": {
						"type": "integer",
						"format": "int32"
					},
					"sub_updated_by": {
						"type": "integer",
						"format": "int32"
					},
					"cnt_description": {
						"type": "string"
					},
					"sub_status_label": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"SupplierSector": {
				"type": "object",
				"properties": {
					"ssc_id": {
						"type": "integer",
						"format": "int32"
					},
					"ssc_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ssc_name": {
						"type": "string"
					}
				}
			},
			"TransportDocument": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"supplierId": {
						"type": "integer",
						"format": "int32"
					},
					"fuId": {
						"type": "integer",
						"format": "int32"
					},
					"contrattoId": {
						"type": "integer",
						"format": "int32"
					},
					"number": {
						"type": "string"
					},
					"dateInsert": {
						"type": "string",
						"format": "date-time"
					},
					"dateDoc": {
						"type": "string",
						"format": "date-time"
					},
					"causal": {
						"type": "string"
					},
					"vector": {
						"type": "string"
					},
					"weight": {
						"type": "number"
					},
					"numPackages": {
						"type": "integer",
						"format": "int32"
					},
					"supplierName": {
						"type": "string"
					},
					"supplierVatNumber": {
						"type": "string"
					},
					"destinationAddress": {
						"type": "string"
					},
					"importo": {
						"type": "number"
					},
					"drflId": {
						"type": "integer",
						"format": "int64"
					},
					"path": {
						"type": "string"
					},
					"worksite": {
						"$ref": "#/components/schemas/Worksite"
					},
					"sup": {
						"$ref": "#/components/schemas/Supplier"
					},
					"contr": {
						"$ref": "#/components/schemas/Contratto"
					},
					"totalrows": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"CreateDDTFromMovementsRequest": {
				"type": "object",
				"properties": {
					"cmpId": {
						"type": "integer",
						"format": "int32"
					},
					"number": {
						"type": "string"
					},
					"dateDoc": {
						"type": "string",
						"format": "date-time"
					},
					"causal": {
						"type": "string"
					},
					"vector": {
						"type": "string"
					},
					"weight": {
						"type": "number"
					},
					"numPackages": {
						"type": "integer",
						"format": "int32"
					},
					"wsId": {
						"type": "integer",
						"format": "int32"
					},
					"movementIds": {
						"type": "array",
						"items": {
							"type": "integer",
							"format": "int32"
						}
					},
					"items": {
						"type": "array",
						"items": {
							"$ref": "#/components/schemas/TransportDocumentItem"
						}
					}
				}
			},
			"TransportDocumentItem": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"documentId": {
						"type": "integer",
						"format": "int32"
					},
					"code": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"quantity": {
						"type": "integer",
						"format": "int32"
					},
					"price": {
						"type": "number"
					},
					"discount": {
						"type": "number"
					},
					"amount": {
						"type": "number"
					},
					"vat": {
						"type": "number"
					},
					"invoiceId": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"WarehouseMovement": {
				"type": "object",
				"properties": {
					"whm_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_whi_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"whm_from_org_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_from_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_to_org_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_to_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"whm_quantita": {
						"type": "number",
						"format": "float"
					},
					"whm_note": {
						"type": "string"
					},
					"whm_data_ins": {
						"type": "string",
						"format": "date-time"
					},
					"whm_annullato": {
						"type": "boolean"
					},
					"whm_reverse_of": {
						"type": "integer",
						"format": "int32"
					},
					"whi_cod_materiale": {
						"type": "string"
					},
					"whi_descrizione": {
						"type": "string"
					},
					"whi_unita_misura": {
						"type": "string"
					},
					"fat_data": {
						"type": "string",
						"format": "date-time"
					},
					"doctr_data": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"WarehouseItemCategory": {
				"type": "object",
				"properties": {
					"whic_id": {
						"type": "integer",
						"format": "int32"
					},
					"whic_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"whic_nome": {
						"type": "string"
					},
					"whic_descrizione": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"Workflow": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"wfct_id": {
						"type": "integer",
						"format": "int32"
					},
					"state": {
						"type": "integer",
						"format": "int32"
					},
					"name": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"cmp_name": {
						"type": "string"
					},
					"ct_description": {
						"type": "string"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"WorksiteProduzione": {
				"type": "object",
				"properties": {
					"ws_prd_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_prd_ws_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_prd_cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_prd_anno": {
						"type": "integer",
						"format": "int32"
					},
					"ws_prd_importo": {
						"type": "number"
					},
					"ws_prd_usr_id_ins": {
						"type": "integer",
						"format": "int32"
					},
					"ws_prd_datains": {
						"type": "string",
						"format": "date-time"
					},
					"totalrows": {
						"type": "integer",
						"format": "int64"
					}
				}
			},
			"AliquotaIva": {
				"type": "object",
				"properties": {
					"al_iva_id": {
						"type": "integer",
						"format": "int32"
					},
					"al_iva_description": {
						"type": "string"
					}
				}
			},
			"WorksiteCollaboratorAssocItem": {
				"type": "object",
				"properties": {
					"assocId": {
						"type": "integer",
						"format": "int32"
					},
					"colId": {
						"type": "integer",
						"format": "int32"
					},
					"colFirstname": {
						"type": "string"
					},
					"colLastname": {
						"type": "string"
					},
					"colEmail": {
						"type": "string"
					},
					"colPhonenr": {
						"type": "string"
					},
					"checked": {
						"type": "boolean"
					},
					"dateStart": {
						"type": "string",
						"format": "date-time"
					},
					"dateEnd": {
						"type": "string",
						"format": "date-time"
					},
					"isActive": {
						"type": "boolean"
					},
					"isHistorical": {
						"type": "boolean"
					}
				}
			},
			"WorksiteAssocSaveRequest": {
				"type": "object",
				"properties": {
					"wsId": {
						"type": "integer",
						"format": "int32"
					},
					"emId": {
						"type": "integer",
						"format": "int32"
					},
					"colId": {
						"type": "integer",
						"format": "int32"
					},
					"dateStart": {
						"type": "string"
					},
					"assocId": {
						"type": "integer",
						"format": "int32"
					}
				}
			},
			"WorksiteAssocSaveResult": {
				"type": "object",
				"properties": {
					"status": {
						"type": "string"
					},
					"existingStart": {
						"type": "string",
						"format": "date-time"
					},
					"existingEnd": {
						"type": "string",
						"format": "date-time"
					},
					"proposedNewEnd": {
						"type": "string",
						"format": "date-time"
					},
					"message": {
						"type": "string"
					}
				}
			},
			"WorksiteEmployeeAssocItem": {
				"type": "object",
				"properties": {
					"assocId": {
						"type": "integer",
						"format": "int32"
					},
					"emId": {
						"type": "integer",
						"format": "int32"
					},
					"emFirstname": {
						"type": "string"
					},
					"emLastname": {
						"type": "string"
					},
					"emEmail": {
						"type": "string"
					},
					"emPhonenr": {
						"type": "string"
					},
					"checked": {
						"type": "boolean"
					},
					"dateStart": {
						"type": "string",
						"format": "date-time"
					},
					"dateEnd": {
						"type": "string",
						"format": "date-time"
					},
					"isActive": {
						"type": "boolean"
					},
					"isHistorical": {
						"type": "boolean"
					}
				}
			},
			"Fase": {
				"type": "object",
				"properties": {
					"fse_id": {
						"type": "integer",
						"format": "int32"
					},
					"fse_descrizione": {
						"type": "string"
					}
				}
			},
			"RecordHome": {
				"type": "object",
				"properties": {
					"wsre_id": {
						"type": "integer",
						"format": "int32"
					},
					"state": {
						"type": "integer",
						"format": "int32"
					},
					"date_when": {
						"type": "string"
					}
				}
			},
			"Workplace": {
				"type": "object",
				"properties": {
					"id": {
						"type": "integer",
						"format": "int32"
					},
					"name": {
						"type": "string"
					},
					"description": {
						"type": "string"
					},
					"cmp_id": {
						"type": "integer",
						"format": "int32"
					},
					"latitude": {
						"type": "number",
						"format": "double"
					},
					"longitude": {
						"type": "number",
						"format": "double"
					},
					"address": {
						"type": "string"
					},
					"codiceprovincia": {
						"type": "string"
					},
					"type": {
						"type": "string"
					}
				}
			},
			"Provincia": {
				"type": "object",
				"properties": {
					"codiceprovincia": {
						"type": "string"
					},
					"nome": {
						"type": "string"
					}
				}
			},
			"RegimeIva": {
				"type": "object",
				"properties": {
					"rg_iva_id": {
						"type": "integer",
						"format": "int32"
					},
					"rg_iva_description": {
						"type": "string"
					}
				}
			},
			"WorksiteState": {
				"type": "object",
				"properties": {
					"ws_st_id": {
						"type": "integer",
						"format": "int32"
					},
					"ws_st_description": {
						"type": "string"
					}
				}
			},
			"TipologiaLavoro": {
				"type": "object",
				"properties": {
					"tlv_id": {
						"type": "integer",
						"format": "int32"
					},
					"tlv_descrizione": {
						"type": "string"
					}
				}
			}
		}
	},
	"security": [
		{
			"bearerAuth": []
		}
	]
}
