rimuoviVoceMenu + controllo menu vuoto

This commit is contained in:
La Programmatrice Verde
2025-11-25 23:12:06 +01:00
parent bb7a54de1f
commit 78d1ca2de2

View File

@@ -57,11 +57,19 @@ public class FatturaScontrini {
case 0:
break;
case 1:
if (getFileSize(PATH_MENU) < 1) {
System.out.println("Errore: il menu è vuoto.");
} else {
stampaMenu();
}
pausa();
break;
case 2:
if (getFileSize(PATH_MENU) < 1) {
System.out.println("Errore: il menu è vuoto.");
} else {
ordinazione = placeOrdinazione(ordinazione);
}
pausa();
break;
case 3:
@@ -442,15 +450,25 @@ public class FatturaScontrini {
case 0:
break;
case 1:
if (getFileSize(PATH_MENU) < 1) {
System.out.println("Errore: il menu è vuoto.");
} else {
stampaMenu();
}
pausa();
break;
case 2:
aggiungiVoceMenu();
System.out.println("Piatto aggiunto con successo.");
pausa();
break;
case 3:
adminMode();
if (getFileSize(PATH_MENU) < 1) {
System.out.println("Errore: il menu è vuoto.");
} else {
rimuoviVoceMenu();
System.out.println("Piatto rimosso con successo.");
}
pausa();
break;
case 4:
@@ -596,6 +614,41 @@ public class FatturaScontrini {
return ritorno;
}
static void rimuoviVoceMenu() {
int voceDaRimuovere = selezioneMenu();
ArrayList<String> menu = fileToStringArray(PATH_MENU);
StringBuilder sb = new StringBuilder();
menu.remove(voceDaRimuovere);
for (String voce : menu) {
sb.append(voce);
sb.append("\n");
}
try (BufferedWriter bw = new BufferedWriter(new FileWriter(PATH_MENU))) {
bw.write(sb.toString());
} catch (IOException e) {
System.out.println(ERRORE_FILE + e.getMessage());
}
}
static ArrayList<String> fileToStringArray(String path) {
ArrayList<String> ritorno = new ArrayList<>();
try (BufferedReader br = new BufferedReader(new FileReader(path))) {
String riga = br.readLine();
while (riga != null) {
ritorno.add(riga);
riga = br.readLine();
}
} catch (IOException e) {
System.out.println(ERRORE_FILE + e.getMessage());
}
return ritorno;
}
static void fattura() {
boolean error;
String formatoDataInserimento = "dd/MM/yyyy";