diff --git a/OnlineShop/src/backend/OnlineShop.java b/OnlineShop/src/backend/OnlineShop.java index 6595d19..d4eb220 100644 --- a/OnlineShop/src/backend/OnlineShop.java +++ b/OnlineShop/src/backend/OnlineShop.java @@ -14,30 +14,78 @@ public class OnlineShop { }; public void AddProdukt(Produkt neu){ + this.lager.add(neu); }; public void UpdateExistingProdukt(Produkt alt, Produkt neu){ + for(int i = 0; i < this.lager.size(); i++) { + if(alt.equals(this.lager.get(i))) { + this.lager.set(i, neu); + break; + } + } }; - public String[] ShowWarenkorb(){ - return new String[0]; + public ArrayList ShowProdukte(){ + ArrayList ret = new ArrayList(); + for(int i = 0; i < this.lager.size(); i++) { + ret.add(new String[]{""+this.lager.get(i).id, this.lager.get(i).name, ""+this.lager.get(i).transportGewicht, ""+this.lager.get(i).netto, ""+this.lager.get(i).mwStSatz, ""+this.lager.get(i).lagerbestand}); + } + return ret; }; - public String[] SearchProdukt(){ - return new String[0]; + public ArrayList ShowWarenkorb(){ + ArrayList ret = new ArrayList(); + for(int i = 0; i < this.aktuellerWarenkorb.inhalt.size(); i++) { + ret.add(new String[]{""+this.aktuellerWarenkorb.inhalt.get(i).id, this.aktuellerWarenkorb.inhalt.get(i).name, ""+this.aktuellerWarenkorb.inhalt.get(i).transportGewicht, ""+this.aktuellerWarenkorb.inhalt.get(i).netto, ""+this.aktuellerWarenkorb.inhalt.get(i).mwStSatz, ""+this.aktuellerWarenkorb.inhalt.get(i).lagerbestand, ""+this.aktuellerWarenkorb.anzahl.get(i)}); + } + return ret; }; - public void AddProduktZuWarenkorb(Produkt add){ + public ArrayList SearchProdukt(String substing){ + ArrayList ret = new ArrayList(); + for(int i = 0; i < this.lager.size(); i++) { + if(this.lager.get(i).name.contains(substing)) { + ret.add(new String[]{""+this.lager.get(i).id, this.lager.get(i).name, ""+this.lager.get(i).transportGewicht, ""+this.lager.get(i).netto, ""+this.lager.get(i).mwStSatz, ""+this.lager.get(i).lagerbestand}); + } + } + return ret; + }; + public void AddProduktZuWarenkorb(Produkt add, int count){ + if(count <= add.lagerbestand) + aktuellerWarenkorb.AddProdukt(add, count); }; public void DelProduktAusWarenkorb(Produkt del){ + aktuellerWarenkorb.DelProdukt(del); }; public void ChangeProduktInWarenkorb(Produkt change, int count){ + aktuellerWarenkorb.ChangeProdukt(change, count); }; public void UpdateKundeInWarenkorb(Kunde neu){ - + aktuellerWarenkorb.UpdateKunde(neu); }; - public void AddBestellung(Warenkorb bestellung){ + public void AddBestellung(){ + Warenkorb Bestellkorb = new Warenkorb(this.aktuellerWarenkorb.kunde); + for(int i = 0; i ShowBestellungen(){ + ArrayList ret = new ArrayList(); + for(int j = 0; j < this.bestellungen.size(); j++) { + ret.add(new String[] {""+this.bestellungen.get(j).storniert,this.bestellungen.get(j).bestellungen.kunde.name, this.bestellungen.get(j).bestellungen.kunde.Adresse}); + for(int i = 0; i < this.bestellungen.get(j).bestellungen.inhalt.size(); i++) { + ret.add(new String[]{""+this.bestellungen.get(j).bestellungen.inhalt.get(i).id, this.bestellungen.get(j).bestellungen.inhalt.get(i).name, ""+this.bestellungen.get(j).bestellungen.inhalt.get(i).transportGewicht, ""+this.bestellungen.get(j).bestellungen.inhalt.get(i).netto, ""+this.bestellungen.get(j).bestellungen.inhalt.get(i).mwStSatz, ""+this.bestellungen.get(j).bestellungen.inhalt.get(i).lagerbestand, ""+this.bestellungen.get(j).bestellungen.anzahl.get(i)}); + } + } + return ret; }; public void StorniereBestellung(Bestellung storniert){ - + for(int i = 0; i < this.bestellungen.size(); i++) { + if(storniert.equals(this.bestellungen.get(i))) { + this.bestellungen.get(i).StorniereBestellung(); + break; + } + } }; } diff --git a/OnlineShop/src/backend/Warenkorb.java b/OnlineShop/src/backend/Warenkorb.java index 804942a..03edb19 100644 --- a/OnlineShop/src/backend/Warenkorb.java +++ b/OnlineShop/src/backend/Warenkorb.java @@ -7,18 +7,18 @@ public class Warenkorb { public ArrayList anzahl; public Kunde kunde; - public Warenkorb(Kunde kunde) { - this.inhalt = new ArrayList(); - this.anzahl = new ArrayList(); - this.kunde = kunde; - }; - public Warenkorb() { this.inhalt = new ArrayList(); this.anzahl = new ArrayList(); this.kunde = new Kunde("",""); }; + public Warenkorb(Kunde kunde) { + this.inhalt = new ArrayList(); + this.anzahl = new ArrayList(); + this.kunde = kunde; + }; + public int NettoPreis(){ int ret = 0; for(int i = 0; i < this.inhalt.size(); i++) { @@ -60,9 +60,11 @@ public class Warenkorb { return BruttoPreis()+BruttoVersandkosten(); }; public void AddProdukt(Produkt add, int count){ - this.inhalt.add(add); - this.anzahl.add(count); - CheckCount(add); + if(count <= add.lagerbestand) { + this.inhalt.add(add); + this.anzahl.add(count); + CheckCount(add); + } }; public void DelProdukt(Produkt del){ for(int i = 0; i < this.inhalt.size(); i++) { @@ -76,7 +78,8 @@ public class Warenkorb { public void ChangeProdukt(Produkt change, int count){ for(int i = 0; i < this.inhalt.size(); i++) { if(change.equals(this.inhalt.get(i))) { - this.anzahl.set(i, count); + if(count <= this.inhalt.get(i).lagerbestand) + this.anzahl.set(i, count); break; } } diff --git a/README.md b/README.md index 177d15f..8b38384 100644 --- a/README.md +++ b/README.md @@ -21,4 +21,7 @@ Time Chart: 0:02 finish class Bestellung -0:38 finish class Warenkorb \ No newline at end of file +0:38 finish class Warenkorb + +0:45 finish class OnlineShop +