diff --git a/it/unisa/info13d/GestioneCatalogo/Catalogo.java b/it/unisa/info13d/GestioneCatalogo/Catalogo.java index 5f1a255..5ba3dd7 100644 --- a/it/unisa/info13d/GestioneCatalogo/Catalogo.java +++ b/it/unisa/info13d/GestioneCatalogo/Catalogo.java @@ -166,26 +166,49 @@ public class Catalogo{ } } - public void cancellaProdotto() + public void cancellaProdotto() throws FileNotFoundException, ClassNotFoundException, IOException { - System.out.println("--------- Elimina Prodotto ----------"); - System.out.println("1 --> Vacanza"); - System.out.println("2 --> Cena"); - System.out.println("3 --> Bene di consumo "); - - String sceltaMenu; - System.out.print("Prodotto: "); + System.out.println("------ Lista Prodotti -----"); + for(Utilizzabile deal: catalogoOfferte) + { + if(deal instanceof Vacanze) + { + Vacanze dealVacanza = (Vacanze)deal; + visualizzaVacanza(dealVacanza); + + } + else if(deal instanceof BeniDiConsumo) + { + BeniDiConsumo dealBene = (BeniDiConsumo)deal; + visualizzaBene(dealBene); + } + else if(deal instanceof CeneInRistoranti) + { + CeneInRistoranti dealCena = (CeneInRistoranti)deal; + visualizzaCena(dealCena); + } + + store_data(); + } + System.out.print("Elimina prodotto [Inserisci id]: "); Scanner inputData = new Scanner(System.in); - sceltaMenu = inputData.nextLine(); - //Controllo input. La scelta deve essere obbligatoriamente compresa tra 1 e 4 - for ( ; !(sceltaMenu.equals("1"))&&!(sceltaMenu.equals("2"))&&!(sceltaMenu.equals("3")) ; ){ - System.out.println("Scelta Errata. Riprovare"); - System.out.print("Prodotto: "); - sceltaMenu = inputData.nextLine(); - } - - - + String id = inputData.nextLine(); + int idDel = Integer.parseInt(id); + for(Utilizzabile deal: catalogoOfferte) + { + if(deal instanceof Vacanze && ((Vacanze)deal).getIdViaggio()==idDel) + { + catalogoOfferte.remove(deal); + } + if(deal instanceof BeniDiConsumo && ((BeniDiConsumo) deal).getIdBene()==idDel) + { + catalogoOfferte.remove(deal); + } + if(deal instanceof CeneInRistoranti && ((CeneInRistoranti) deal).getIdCena()==idDel) + { + catalogoOfferte.remove(deal); + } + } } public void offerteAttive() @@ -195,43 +218,78 @@ public class Catalogo{ if(deal instanceof Vacanze) { Vacanze dealVacanza = (Vacanze)deal; - GregorianCalendar partenza = dealVacanza.getDataPartenzaViaggio(); - int giornoP = partenza.get(Calendar.DAY_OF_MONTH); - int meseP = partenza.get(Calendar.MONTH); - int annoP = partenza.get(Calendar.YEAR); - GregorianCalendar scadenza = dealVacanza.getScadenzaOfferta(); - int giornoS = scadenza.get(Calendar.DAY_OF_MONTH); - int meseS = scadenza.get(Calendar.MONTH); - int annoS = scadenza.get(Calendar.YEAR); - - System.out.println("#Vacanza-"+dealVacanza.getIdViaggio()+"# Scadenza: "+giornoS+"/"+meseS+"/"+annoS+"| Localita: "+dealVacanza.getLocalitaViaggio()+"| Partenza: "+giornoP+"/"+meseP+"/"+annoP+"| Prezzo Pers. Singola: "+dealVacanza.getPrezzoPSingola()); + if((dealVacanza.eAcquistabile())) + visualizzaVacanza(dealVacanza); } - if(deal instanceof BeniDiConsumo) + else if(deal instanceof BeniDiConsumo) { BeniDiConsumo dealBene = (BeniDiConsumo)deal; - System.out.println("#Articolo-"+dealBene.getIdBene()+"# Descrizione: "+dealBene.getDescrizioneBene()+"\n Prezzo: "+dealBene.getPrezzoBene()+"Quantita in magazzino: "+dealBene.getBeniInStock()); + if((dealBene.eAcquistabile())) + visualizzaBene(dealBene); } - if(deal instanceof CeneInRistoranti) + else if(deal instanceof CeneInRistoranti) { CeneInRistoranti dealCena = (CeneInRistoranti)deal; - GregorianCalendar scadenzaCena = dealCena.getDataScadenzaOffertaCena(); - int giornoSC = scadenzaCena.get(Calendar.DAY_OF_MONTH); - int meseSC = scadenzaCena.get(Calendar.MONTH); - int annoSC = scadenzaCena.get(Calendar.YEAR); - System.out.println("#Cena-"+dealCena.getIdCena()+"# Scadenza:"+giornoSC+"/"+meseSC+"/"+annoSC+"| Ristorante: "+dealCena.getNomeRistorante()+"| Indirizzo: "+dealCena.getLuogo()+"| Descrizione: "+dealCena.getDescrizione_cena()+"| Costo: "+dealCena.getCostoPerPersona()); + if((dealCena.eAcquistabile())) + visualizzaCena(dealCena); } } } public void offerteScadute() { + System.out.println("------ Offerte Scadute -----"); + for(Utilizzabile deal: catalogoOfferte) + { + if(deal instanceof Vacanze) + { + Vacanze dealVacanza = (Vacanze)deal; + if(!(dealVacanza.eAcquistabile())) {visualizzaVacanza(dealVacanza);} + } + if(deal instanceof BeniDiConsumo) + { + BeniDiConsumo dealBene = (BeniDiConsumo)deal; + if(!(dealBene.eAcquistabile())) {visualizzaBene(dealBene);} + } + if(deal instanceof CeneInRistoranti) + { + CeneInRistoranti dealCena = (CeneInRistoranti)deal; + if(!(dealCena.eAcquistabile())) {visualizzaCena(dealCena);} + } + } } public void aggiungiCredito() {} + public void visualizzaVacanza(Vacanze dealVacanza) + { + GregorianCalendar partenza = dealVacanza.getDataPartenzaViaggio(); + int giornoP = partenza.get(Calendar.DAY_OF_MONTH); + int meseP = partenza.get(Calendar.MONTH); + int annoP = partenza.get(Calendar.YEAR); + GregorianCalendar scadenza = dealVacanza.getScadenzaOfferta(); + int giornoS = scadenza.get(Calendar.DAY_OF_MONTH); + int meseS = scadenza.get(Calendar.MONTH); + int annoS = scadenza.get(Calendar.YEAR); + + System.out.println("#Vacanza-"+dealVacanza.getIdViaggio()+"# Scadenza: "+giornoS+"/"+meseS+"/"+annoS+"| Localita: "+dealVacanza.getLocalitaViaggio()+"| Partenza: "+giornoP+"/"+meseP+"/"+annoP+"| Prezzo Pers. Singola: "+dealVacanza.getPrezzoPSingola()); + } + + public void visualizzaBene(BeniDiConsumo dealBene) + { + System.out.println("#Articolo-"+dealBene.getIdBene()+"# Descrizione: "+dealBene.getDescrizioneBene()+" Prezzo: "+dealBene.getPrezzoBene()+"Quantita in magazzino: "+dealBene.getBeniInStock()); + } + public void visualizzaCena(CeneInRistoranti dealCena) + { + GregorianCalendar scadenzaCena = dealCena.getDataScadenzaOffertaCena(); + int giornoSC = scadenzaCena.get(Calendar.DAY_OF_MONTH); + int meseSC = scadenzaCena.get(Calendar.MONTH); + int annoSC = scadenzaCena.get(Calendar.YEAR); + System.out.println("#Cena-"+dealCena.getIdCena()+"# Scadenza:"+giornoSC+"/"+meseSC+"/"+annoSC+"| Ristorante: "+dealCena.getNomeRistorante()+"| Indirizzo: "+dealCena.getLuogo()+"| Descrizione: "+dealCena.getDescrizione_cena()+"| Costo: "+dealCena.getCostoPerPersona()); + } public ArrayList getCatalogo() { return catalogoOfferte; } diff --git a/it/unisa/info13d/Login/LoginData.java b/it/unisa/info13d/Login/LoginData.java index 98c96a8..2e38d6e 100644 --- a/it/unisa/info13d/Login/LoginData.java +++ b/it/unisa/info13d/Login/LoginData.java @@ -38,10 +38,10 @@ public class LoginData { public void getUserDataInfo (){ - System.out.println("***************************************"); + System.out.println("\n***************************************"); System.out.println("Utente Loggato : " + username); System.out.println("AccoutType : " + type ); - System.out.println("***************************************"); + System.out.println("***************************************\n"); } private String username;