SistemaSocietàProduzioneGiocattoliBambini RegistraDistributore AggiornaProdottiMagazzino RichiediListaGiocattoliDisponibili EffettuaRegistrazioneNewsletterMensile CreaNewsletterMensile InserisciOrdine VisualizzaStatoOrdine ModificaStatoOrdine AddettoFornitura UtenteWeb Tempo Distributore <<Include>> <<Include>> Powered ByVisual Paradigm Community Edition +id +descrizione +limiteInferioreEtà +prezzo +quantitaInMagazzino Giocattolo +lunghezzaCircuito Trenino +colore CavalloDondolo +tipoStrumento Musicale +OrderNumber +stato +dataEmissione +dataEvasione +dataRitiro Ordine +numTrenini +numCavalli +numMusicali DettaglioOrdine +creaNewsletterMensile() <<boundary>> BTempo +registraDistributore() +aggiornaProdottiMagazzino() +modificaStatoOrdine() <<boundary>> BAddettoFornitura +richiediListaGiocattoliDisponibili() +effettuaRegistrazioneNewsletterMensile() <<boundary>> BUtenteWeb +inserisciOrdine() +visualizzaStatoOrdine() +richiediListaGiocattoliDisponibili() <<boundary>> BDistributore +inserisciOrdine(OrderNumber : Integer, dataEmissione : String) +visualizzaStatoOrdine(OrderNumber : Integer) : String +richiediListaGiocattoliDisponibili() : Giocattolo[0..*] -creaNewsletterMensile() +registraDistributore(id : Integer, nome : String, cognome : String) +aggiornaProdottiMagazzino(id : Integer, quantità : Integer) +modificaStatoOrdine(idOrdine : Integer, Stato : String) : Bolean +effettuaRegistrazioneNewsletterMensile() : Bolean <<control>> GestoreSocietàProduzione +id +nome +cognome Distributore 0..* 0..* 1 0..* 0..* 1..* 1..* Powered ByVisual Paradigm Community Edition loop [per ogni Ordine] opt [if OrderNumber==idOrdine] opt [if Stato == EVASO] AddettoFornitura : BAddettoFornitura : GestoreSocietàProduzione : Ordine : DettaglioOrdine : Trenino : CavalloDondolo : Musicale 1.5.3: setStato(Stato) 1.4: Stato 1.3: Stato? 1.5: stato modificato correttamente 1.5.19: stato modificato correttamente 1.5.18: quantitàInMagazzino=quantitàInMagazzino-NumMusicali 1.5.17: QuantitàInMagazzino 1.5.16: getQuantitàInMagazzino() 1.5.15: quantitàInMagazzino=quantitàInMagazzino-NumCavalli 1.5.14: quantitàInMagazzino 1.5.13: getQuantitàInMagazzino() 1.5.12: quantitàInMagazzino=quantitàInMagazzino-NumTrenini 1.5.11: quantitàInMagazzino 1.5.10: getQuantitàInMagazzino() 1.5.9: NumMusicali 1.5.8: getNumMusicali() 1.5.7: NumCavalli 1.5.6: getNumCavalli() 1.5.5: NumTrenini 1.5.4: getNumTrenini() 1.5.2: OrderNumber 1.5.1: getOrderNumber() 1.5: modificaStatoOrdine(idOrdine : Integer, Stato : String) : Bolean 1.2: idOrdine 1.1: idOrdine? 1: modificaStatoOrdine() Powered ByVisual Paradigm Community Edition UI +consoleReader : BufferedReader +consoleWriter : PrintWriter +main() +ApplicationConsole(cr : ConsoleReader, pw : PrintWriter) ApplicationConsole +consoleReader : BufferReader +consoleWriter : PrintWriter +consoleDistributore(cr : BufferedReader, pw : PrintWriter) -inserisciOrdine() -visualizzaStatoOrdine() -richiediListaGiocattoliDisponibili() ConsoleDistributore +consoleReader : BufferReader +consoleWriter : PrintWriter +consoleAddettoFornitura(cr : BufferedReader, pw : PrintWriter) -registraDistributore() -aggiornaProdottiMagazzino() -modificaStatoOrdine() ConsoleAddettoFornitura +consoleReader : BufferReader +consoleWriter : PrintWriter +consoleUtenteWeb(cr : BufferedReader, pw : PrintWriter) -effettuaRegistrazioneNewsletterMensile() -richiediListaGiocattoliDisponibili() ConsoleUtenteWeb Controller -istanza : GestoreSocietàProduzione -GestoreSocietàProduzione() -creaNewsletterMensile() +getIstanza() : GestoreSocietàProduzione <<singleton>> GestoreSocietàProduzione +inserisciOrdine(OrderNumber : Integer, dataEmissione : String) +visualizzaStatoOrdine(OrderNumber : Integer) : String +richiediListaGiocattoliDisponibili() : Giocattolo[0..*] +registraDistributore(id : Integer, nome : String, cognome : String) +aggiornaProdottiMagazzino(id : Integer, quantità : Integer) +modificaStatoOrdine(idOrdine : Integer, Stato : String) : Boolean +effettuaRegistrazioneNewsletterMensile() : Boolean <<Interface>> IGestoreSocietàProduzione Entity -id : Integer -descrizione : String -limiteInferioreEtà : Integer -prezzo : Integer -quantitàInMagazzino : Integer +getId() : Integer +setId(value : Integer) +getDescrizione() : String +setDescrizione(value : String) +getLimiteEta() : Integer +setLimiteEta(value : Integer) +getPrezzo() : Integer +setPrezzo(value : Integer) +getQuantitaInMagazzino() : Integer +setQuantitàInMagazzino(value : Integer) Giocattolo -lunghezzaCircuito : Double +getLunghezzaCircuito() : Double +setLunghezzaCircuito(value : Double) Trenino -colore : String +getColore() : String +setColore(value : String) CavalloDondolo -tipoStrumento : String +getTipo() : String +setTipo(value : String) Musicale -numTrenini -numCavalli -numMusicali +getNumTrenini() : Integer +setNumTrenini(value : Integer) +getNumCavalli() : Integer +setNumCavalli(value : Integer) +getNumMusicali() : Integer +steNumMusicali(value : Integer) DettaglioOrdine -OrderNumber : Integer -stato : String -dataEmissione : String -dataEvasione : String -dataRitiro : String +getOrderNumber() : Integer +setOrderNUmber(value : Integer) +getStato() : String +setStato(value : String) +getDataEmissione() : String +setDataEmissione(value : String) +getDataEvasione() : String +setDataEvasione(value : String) +getDataRitiro() : String +setDataRitiro(value : String) Ordine -id : Integer -nome : String -cognome : String +getId() : Integer +setId(value : Integer) +getNome() : String +setNome(value : String) +getCognome() : String +setCognome(value : String) Distributore DB -connection : Connection -dbPath : String -url : String +getConnection() : Connection +closeConnection() DBManager DAO +creaGiocattolo(g : Giocattolo) +leggiGiocattolo() : Giocattolo +aggiornaGiocattolo(g : Giocattolo) +eliminaGiocattolo(g : Giocattolo) GiocattoloDAO +creaOrdine(o : Ordine) +leggiOrdine() : Ordine +aggiornaOrdine(o : Ordine) +eliminaOrdine(o : Ordine) +ottieniListaOrdini() : Ordine[0..*] +ottieniStatoOrdine(id : Integer) : String +updateStato(id : Integer, stato : String) OrdineDAO +creaDettaglioOrdine(do : DettaglioOrdine) +leggiDettaglioOrdine() : DettaglioOrdine +aggiornaDettaglioOrdine(do : DettaglioOrdine) +eliminaDettaglioOrdine(do : DettaglioOrdine) +ottieniDettaglioOrdine(id : Integer) : DettaglioOrdine[0..*] DettaglioOrdineDAO 0..* 1..* 1 0..* 1 1..* 1 0..* 0..* Powered ByVisual Paradigm Community Edition opt [if Stato==EVASO] AddettoFornitura : ConsoleAddettoFornitura : GestoreSocietàProduzione : OrdineDAO : DBManager : DettaglioOrdine : Trenino : CavalloDondolo : Musicale 1.8: Stato modificato correttamente 1.10.17: Stato modificato correttamente 1.10.16: quantitaInMagazzino=quantitaInMagazzino-numMusicali 1.10.15: quantitaInMagazzino 1.10.14: getQuantitàInMagazzino() 1.10.13: quantitaInMagazzino=quantitaInMagazzino-numCavalli 1.10.12: quantitaInMagazzino 1.10.11: getQuantitaInMagazzino() : Integer 1.10.10: quantitaInMagazzino=quantitaMagazzino-NumTrenini 1.10.9: quantitaInMagazzino 1.10.8: getQuantitaInMagazzino() : Integer 1.10.7: numMusicali 1.10.6: getNumMusicali() 1.10.5: numCavalli 1.10.4: getNumCavalli() 1.10.3: numTrenini 1.10.2: getNumTrenini() 1.10.1.4: closeConnection() 1.10.1.3: executeUpdate 1.10.1.2: connection 1.10.1.1: getConnection() : Connection 1.10.1: updateStato(idOrdine,Stato) 1.10: modificaStatoOrdine(idOrdine,Stato):Boolean 1.9: gsp 1.8: getIstanza() : GestoreSocietàProduzione 1.7: Stato 1.6: Stato? 1.5: idOrdine 1.4: idOrdine? 1.3: modificaStatoOrdine() 1.2: modifica stato ordine 1.1: scegli operazione 1: main() Powered ByVisual Paradigm Community Edition