Class MaterialeService
java.lang.Object
it.uniupo.simnova.service.scenario.components.MaterialeService
Servizio per la gestione dei materiali necessari all'interno degli scenari.
 Fornisce metodi per recuperare, salvare, associare ed eliminare i materiali nel database.
- Version:
- 1.1
- Author:
- Alessandro Zappatore
- 
Method SummaryModifier and TypeMethodDescriptionbooleanassociaMaterialiToScenario(int scenarioId, List<Integer> idsMateriali) Associa una lista di materiali (tramite i loro ID) a uno scenario specifico.booleandeleteMateriale(Integer idMateriale) Elimina unMaterialedal database.Recupera una lista di tutti iMaterialidisponibili nel database.getMaterialiByScenarioId(int scenarioId) Recupera una lista diMaterialispecifici associati a un dato scenario.booleansaveAImaterials(Integer scenarioId, List<MatSet> materiali) Salva una lista di materiali (rappresentati da oggetti MatSet) per un dato scenario.saveMateriale(Materiale materiale) Salva un nuovo oggettoMaterialenel database.toStringAllMaterialsByScenarioId(int scenarioId) Genera una rappresentazione testuale di tutti i materiali associati a uno scenario specifico.
- 
Method Details- 
getAllMaterials
- 
getMaterialiByScenarioIdRecupera una lista diMaterialispecifici associati a un dato scenario. La query esegue un JOIN tra le tabelleMaterialeeMaterialeScenarioper filtrare i materiali in base all'id_scenario.
- 
saveMaterialeSalva un nuovo oggettoMaterialenel database. Se l'operazione ha successo, l'ID generato automaticamente per il nuovo materiale viene popolato nell'oggetto restituito.
- 
associaMaterialiToScenarioAssocia una lista di materiali (tramite i loro ID) a uno scenario specifico. Questa operazione è transazionale: prima vengono rimosse tutte le associazioni esistenti per lo scenario, poi vengono inserite le nuove associazioni.- Parameters:
- scenarioId- L'ID dello scenario a cui associare i materiali.
- idsMateriali- Una- Listdi- Integercontenente gli ID dei materiali da associare. Se la lista è vuota, tutte le associazioni esistenti verranno rimosse e nessuna nuova verrà aggiunta.
- Returns:
- truese l'associazione è avvenuta con successo;- falsealtrimenti.
 
- 
deleteMaterialeElimina unMaterialedal database. Questa operazione è transazionale: prima vengono rimosse tutte le associazioni del materiale con gli scenari, poi il materiale stesso viene eliminato dalla tabellaMateriale.- Parameters:
- idMateriale- L'ID del materiale da eliminare.
- Returns:
- truese l'eliminazione è avvenuta con successo;- falsealtrimenti.
 
- 
toStringAllMaterialsByScenarioIdGenera una rappresentazione testuale di tutti i materiali associati a uno scenario specifico. La stringa risultante elenca ogni materiale con il suo nome e descrizione.- Parameters:
- scenarioId- L'ID dello scenario di cui si vogliono rappresentare i materiali.
- Returns:
- Una Stringche contiene il nome e la descrizione di ogni materiale associato, separati da un newline. Se non ci sono materiali, restituisce una stringa vuota.
 
- 
saveAImaterialsSalva una lista di materiali (rappresentati da oggetti MatSet) per un dato scenario. Questo metodo è stato aggiornato per accettare una lista di oggetti, come restituito dall'API, eliminando la necessità di parsare manualmente le stringhe.- Parameters:
- scenarioId- L'ID dello scenario a cui associare i materiali.
- materiali- La lista di oggetti MatSet, dove ognuno rappresenta un materiale.
- Returns:
- truese l'operazione ha successo,- falsealtrimenti.
 
 
-