ordini_ristorante/Ristorante.cs
La Programmatrice Verde b609104b18 Opzioni 4 e 5
2025-05-29 13:12:47 +02:00

49 lines
1.3 KiB
C#

namespace ordini_ristorante;
class Ristorante {
Piatto[] menu = [];
Ordine[] ordini = [];
public Piatto[] GetMenu() {
return this.menu;
}
public Ordine[] GetOrdini() {
return this.ordini;
}
public void SetMenu(Piatto[] p_menu) {
this.menu = p_menu;
}
public void SetOrdini(Ordine[] p_ordini) {
this.ordini = p_ordini;
}
public void AggiungiPiatto(Piatto p_nuovoPiatto) {
Piatto[] menuNuovo = new Piatto[this.menu.Length + 1];
this.menu.CopyTo(menuNuovo, 0);
menuNuovo[menuNuovo.Length - 1] = p_nuovoPiatto;
this.menu = menuNuovo;
}
public void AggiungiOrdine(Ordine p_nuovoOrdine) {
Ordine[] ordiniNuovo = new Ordine[this.ordini.Length + 1];
this.ordini.CopyTo(ordiniNuovo, 0);
ordiniNuovo[ordiniNuovo.Length - 1] = p_nuovoOrdine;
this.ordini = ordiniNuovo;
}
public int GetOrdinePerCodice(int p_codice) {
int? ritorno = null;
int i = 0;
foreach (Ordine o in this.ordini) {
if (o.GetCodiceOrdine() == p_codice) {
ritorno = i;
}
else {
i++;
}
}
return ritorno ?? throw new NullReferenceException("Ordine non trovato.");
}
}