Fix aggiunta elemento a scontrino

This commit is contained in:
La Programmatrice Verde
2025-10-22 20:53:12 +02:00
parent 73d0be1ef9
commit ece2c2f2c2
4 changed files with 22 additions and 0 deletions

View File

@@ -17,6 +17,11 @@ public class Alimentare extends Prodotto {
super(p_nome, p_prezzo, p_qta, p_scontoFidelityCard, p_descrizione);
this.dataScadenza = p_dataScadenza;
}
public Alimentare(Alimentare p_Alimentare) {
super(p_Alimentare);
this.dataScadenza = p_Alimentare.dataScadenza;
}
public void stampaDati() {
super.stampaDati();

View File

@@ -16,6 +16,11 @@ public class NonAlimentare extends Prodotto {
super(p_nome, p_prezzo, p_qta, p_scontoFidelityCard, p_descrizione);
this.tipoMateriale = p_tipoMateriale;
}
public NonAlimentare(NonAlimentare p_NonAlimentare) {
super(p_NonAlimentare);
this.tipoMateriale = p_NonAlimentare.tipoMateriale;
}
public void stampaDati() {
super.stampaDati();
System.out.println("Tipo materiale: " + tipoMateriale);

View File

@@ -24,6 +24,14 @@ public class Prodotto {
this.descrizione = p_descrizione;
}
public Prodotto(Prodotto p_Prodotto) { //copyProdotto, ma è costruttore quindi il nome rimane così
this.nome = p_Prodotto.nome;
this.prezzo = p_Prodotto.prezzo;
this.qta = p_Prodotto.qta;
this.scontoFidelityCard = p_Prodotto.scontoFidelityCard;
this.descrizione = p_Prodotto.descrizione;
}
public void stampaDati() {
System.out.println("Nome prodotto: " + this.nome);
System.out.println("Prezzo prodotto: " + this.prezzo);

View File

@@ -361,9 +361,13 @@ public class listaSpesa {
scontrino[trovaPosizioneLibera(scontrino)] = prodottoTrovato;
magazzino[trovaProdottoInMagazzino(prodottoTrovato)] = null;
} else {
int posizioneScontrino = trovaPosizioneLibera(scontrino);
prodottoTrovato.updQtaMagazzino(
useNomeProdotto ? nomeODescrizione : prodottoTrovato.getNome(),
prodottoTrovato.getQta() - qta);
scontrino[posizioneScontrino] = isAlimentare ? new Alimentare((Alimentare)prodottoTrovato) : new NonAlimentare((NonAlimentare)prodottoTrovato);
scontrino[posizioneScontrino].updQtaMagazzino(
useNomeProdotto ? nomeODescrizione : prodottoTrovato.getNome(), qta);
}
exit = true;