Poprawnie działająca klasa Cart, koniec pracy nad koszykiem.

This commit is contained in:
PawelZielinski 2021-02-09 01:55:40 +01:00
parent 998bc1f5b0
commit e3a4fa9fcd
6 changed files with 47 additions and 34 deletions

View File

@ -3,20 +3,21 @@ package com.example.pizzujemyv3;
import java.util.ArrayList;
public class Cart {
public ArrayList<Pizza> cartLista;
private int totalPrice;
public ArrayList<Pizza> cartLista = new ArrayList<>();
private int totalPrice = 0;
public Cart(ArrayList<Pizza> menuList){
setCartLista(menuList);
setTotalPrice();
}
public void setCartLista(ArrayList<Pizza> menuList)
{
menuList.forEach((pizza) -> addToCart(pizza));
menuList.forEach(pizza -> addToCart(pizza));
}
public void addToCart(Pizza pizza){
if(pizza.getOnOrder()>0)
{
cartLista.add(pizza);
cartLista.add(new Pizza(pizza));
}
}
@ -27,5 +28,6 @@ public class Cart {
}
public int getTotalPrice(){return totalPrice;}
public String getStringTotalPrice(){return String.valueOf(totalPrice);}
}

View File

@ -15,7 +15,7 @@ import java.util.ArrayList;
public class CartActivity extends AppCompatActivity {
ListView cLView;
ArrayList<Pizza> pizzaArrayList = new ArrayList<>();
ArrayList<Pizza> menuArrayList = new ArrayList<>();
Switch oSwitch;
Button oButton;
@Override
@ -24,17 +24,14 @@ Button oButton;
setContentView(R.layout.activity_cart);
cLView = findViewById(R.id.cartListView);
pizzaArrayList.add(new Pizza(1, "Margarita", 24, R.drawable.img1 , "sos pomidorowy\nmozzarella fior di latte"));
pizzaArrayList.add(new Pizza(2, "Marinara", 22, R.drawable.img2, "sos pomidorowy\noregano\nczosnek\nbazylia"));
pizzaArrayList.add(new Pizza(3, "Napoli", 26, R.drawable.img3 , "sos pomidorowy\nmozzarella fior di latte\nsalami napoli"));
pizzaArrayList.add(new Pizza(4, "Parma", 26, R.drawable.img4 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nszynka parmenska"));
pizzaArrayList.add(new Pizza(5, "Diavola", 28, R.drawable.img5 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nsalami spianata piccante"));
pizzaArrayList.get(3).addOnOrder();
pizzaArrayList.get(1).addOnOrder();
ArrayList<Pizza> cartArrayList = new ArrayList<>();
Cart cart = new Cart(pizzaArrayList);
//cartArrayList.add(pizzaArrayList.get(1));
//cartArrayList.add(pizzaArrayList.get(3));
menuArrayList = getIntent().getParcelableArrayListExtra("pizzas");
Cart cart= new Cart(menuArrayList);
TextView totalPrice = (TextView)findViewById(R.id.totalPrice);
totalPrice.setText(cart.getTotalPrice());
totalPrice.setText("Cena: " + cart.getStringTotalPrice());
PizzaAdapter pizzaAdapter = new PizzaAdapter(this,R.layout.list_row,cart.cartLista);
cLView.setAdapter(pizzaAdapter);
/*

View File

@ -23,11 +23,11 @@ public class Menu extends AppCompatActivity {
menuListView = findViewById(R.id.listView);
ArrayList<Pizza> arrayList = new ArrayList<>();
arrayList.add(new Pizza(1, "Margarita", 24, R.drawable.img1 , "sos pomidorowy\nmozzarella fior di latte"));
arrayList.add(new Pizza(2, "Marinara", 22, R.drawable.img2, "sos pomidorowy\noregano\nczosnek\nbazylia"));
arrayList.add(new Pizza(3, "Napoli", 26, R.drawable.img3 , "sos pomidorowy\nmozzarella fior di latte\nsalami napoli"));
arrayList.add(new Pizza(4, "Parma", 26, R.drawable.img4 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nszynka parmenska"));
arrayList.add(new Pizza(5, "Diavola", 28, R.drawable.img5 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nsalami spianata piccante"));
arrayList.add(new Pizza(1, "Margarita", 24, R.drawable.img1 , "sos pomidorowy\nmozzarella fior di latte", 0));
arrayList.add(new Pizza(2, "Marinara", 22, R.drawable.img2, "sos pomidorowy\noregano\nczosnek\nbazylia",0));
arrayList.add(new Pizza(3, "Napoli", 26, R.drawable.img3 , "sos pomidorowy\nmozzarella fior di latte\nsalami napoli",0));
arrayList.add(new Pizza(4, "Parma", 26, R.drawable.img4 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nszynka parmenska",0));
arrayList.add(new Pizza(5, "Diavola", 28, R.drawable.img5 ,"sos pomidorowy\nmozzarella fior di latte\ncebula czerwona\nsalami spianata piccante",0));
PizzaAdapter pizzaAdapter = new PizzaAdapter(this,R.layout.list_row,arrayList);
menuListView.setAdapter(pizzaAdapter);

View File

@ -12,15 +12,23 @@ public class Pizza implements Parcelable {
private int resID;
private String des;
private int onOrder = 0;
private int sumPrice = price*onOrder;
public Pizza(int id, String name, int price, int resID, String des) {
public Pizza(int id, String name, int price, int resID, String des, int onOrder) {
this.id = id;
this.name = name;
this.price = price;
this.resID = resID;
this.des = des;
this.onOrder = 0;
this.onOrder = onOrder;
}
public Pizza(Pizza pizza)
{
this.id = pizza.id;
this.name = pizza.name;
this.price = pizza.price;
this.resID = pizza.resID;
this.des = pizza.des;
this.onOrder = pizza.onOrder;
}
@ -31,7 +39,6 @@ public class Pizza implements Parcelable {
resID = in.readInt();
des = in.readString();
onOrder = in.readInt();
sumPrice = in.readInt();
}
@SuppressWarnings("unused")
@ -104,8 +111,8 @@ public class Pizza implements Parcelable {
public void addOnOrder(){this.onOrder += 1;}
public void minOnOrder(){if(onOrder>0) this.onOrder -= 1;}
public String getStringOnOrder(){return String.valueOf((onOrder));}
public int getSumPrice(){return sumPrice;}
public String getStringSumPrice(){return String.valueOf(sumPrice);}
public int getSumPrice(){return price*onOrder;}
public String getStringSumPrice(){return String.valueOf(getSumPrice());}
@Override
public int describeContents() {
@ -120,6 +127,5 @@ public class Pizza implements Parcelable {
dest.writeInt(resID);
dest.writeString(des);
dest.writeInt(onOrder);
dest.writeInt(sumPrice);
}
}

View File

@ -29,7 +29,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_marginBottom="15sp"
android:layout_marginBottom="10sp"
android:layout_weight="0.3"
>
<ListView
@ -45,7 +45,7 @@
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.9"
android:layout_weight="0.8"
android:background="#20FFFFFF"
android:textColor="@color/white"
android:shadowColor="#55000000"
@ -53,7 +53,10 @@
android:shadowDy="6"
android:shadowRadius="6"
android:id="@+id/totalPrice"
android:textAlignment="center"
android:textSize="30sp"
android:layout_marginTop="10sp"
android:text="@string/dowoz"
></TextView>
</LinearLayout>

View File

@ -92,12 +92,17 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/addCounter"
android:layout_marginTop="10dp"
android:layout_toRightOf="@id/image"
android:layout_below="@id/txtContent"
android:layout_toRightOf="@id/minButton"
android:layout_marginLeft="20dp"
android:id="@+id/sumTxtPrice"
android:text="0"
android:text="sumPrice"
android:textSize="20sp"
android:textColor="#e6e6e6e6"
android:shadowColor="#55000000"
android:shadowDx="6"
android:shadowDy="6"
android:shadowRadius="6"
/>
</RelativeLayout>