From 4b1d5ca1ad73a756da3b14c9cd31124cfb769f2f Mon Sep 17 00:00:00 2001
From: Fabio Heyming <fabio.heyming@web.de>
Date: Tue, 30 May 2023 21:29:52 +0200
Subject: [PATCH] Removed favorite bug

---
 .../mampfmobil/ui/Classes/Customer.java       |  7 +++-
 .../ui/Classes/Recyclerviewadapter_Shop.java  |  1 +
 .../mampfmobil/ui/CustomerActivity.java       |  4 +-
 .../mampfmobil/ui/SupplierActivity.java       |  4 +-
 .../ui/supplier/SupplierOrdersFragment.java   | 38 +++++++++++++++++++
 .../ui/supplier/SupplierOrdersViewModel.java  |  7 ++++
 .../res/layout/fragment_supplier_orders.xml   | 13 +++++++
 .../res/menu/bottom_nav_menu_supplier.xml     |  3 ++
 .../res/navigation/mobile_navigation_sup.xml  |  7 ++++
 9 files changed, 80 insertions(+), 4 deletions(-)
 create mode 100644 app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersFragment.java
 create mode 100644 app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersViewModel.java
 create mode 100644 app/src/main/res/layout/fragment_supplier_orders.xml

diff --git a/app/src/main/java/com/example/mampfmobil/ui/Classes/Customer.java b/app/src/main/java/com/example/mampfmobil/ui/Classes/Customer.java
index d4daa3b..a58a3b1 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/Classes/Customer.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/Classes/Customer.java
@@ -2,6 +2,7 @@ package com.example.mampfmobil.ui.Classes;
 
 import android.util.Log;
 
+import java.util.ArrayList;
 import java.util.Vector;
 
 public class Customer {
@@ -49,10 +50,14 @@ public class Customer {
             favoriten.add(sI);
         }
         public void removeFromFavourits(ShopItem sI){
+
+            ArrayList<ShopItem> itemsToRemove = new ArrayList<>();
+
             for(ShopItem si: favoriten){
                 if(si == sI){
-                    favoriten.remove(si);
+                    itemsToRemove.add(si);
                 }
             }
+            favoriten.removeAll(itemsToRemove);
         }
 }
diff --git a/app/src/main/java/com/example/mampfmobil/ui/Classes/Recyclerviewadapter_Shop.java b/app/src/main/java/com/example/mampfmobil/ui/Classes/Recyclerviewadapter_Shop.java
index 41f305d..8621563 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/Classes/Recyclerviewadapter_Shop.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/Classes/Recyclerviewadapter_Shop.java
@@ -68,6 +68,7 @@ public class Recyclerviewadapter_Shop extends RecyclerView.Adapter<Recyclerviewa
 
 
         holder.favBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+
             @Override
             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
 
diff --git a/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java b/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
index 0eff713..64e970e 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/CustomerActivity.java
@@ -42,7 +42,7 @@ private ActivityCustomerBinding binding;
 
 
         AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
-                R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications)
+                R.id.navigation_shop, R.id.navigation_shopping_cart, R.id.navigation_orders)
                 .build();
         NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_customer);
         NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
@@ -106,4 +106,4 @@ private ActivityCustomerBinding binding;
     }
 
 
-}
\ No newline at end of file
+}
diff --git a/app/src/main/java/com/example/mampfmobil/ui/SupplierActivity.java b/app/src/main/java/com/example/mampfmobil/ui/SupplierActivity.java
index f71c1bd..004f15c 100644
--- a/app/src/main/java/com/example/mampfmobil/ui/SupplierActivity.java
+++ b/app/src/main/java/com/example/mampfmobil/ui/SupplierActivity.java
@@ -14,6 +14,7 @@ import com.example.mampfmobil.MainActivity;
 import com.example.mampfmobil.R;
 import com.example.mampfmobil.databinding.ActivityCustomerBinding;
 import com.example.mampfmobil.databinding.ActivitySupplierBinding;
+import com.google.android.material.bottomnavigation.LabelVisibilityMode;
 
 public class SupplierActivity extends AppCompatActivity {
 
@@ -29,11 +30,12 @@ public class SupplierActivity extends AppCompatActivity {
 
         // Fragment "fragment_decide" wird angezeigt
         AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
-                R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications)
+                R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications, R.id.navigation_ordersSupplier)
                 .build();
         NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_supplier);
         NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
         NavigationUI.setupWithNavController(binding.navView2, navController);
+        binding.navView2.setLabelVisibilityMode(1);
 
     }
 
diff --git a/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersFragment.java b/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersFragment.java
new file mode 100644
index 0000000..75a5080
--- /dev/null
+++ b/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersFragment.java
@@ -0,0 +1,38 @@
+package com.example.mampfmobil.ui.supplier;
+
+import androidx.lifecycle.ViewModelProvider;
+
+import android.os.Bundle;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.fragment.app.Fragment;
+
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+import com.example.mampfmobil.R;
+
+public class SupplierOrdersFragment extends Fragment {
+
+    private SupplierOrdersViewModel mViewModel;
+
+    public static SupplierOrdersFragment newInstance() {
+        return new SupplierOrdersFragment();
+    }
+
+    @Override
+    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
+                             @Nullable Bundle savedInstanceState) {
+        return inflater.inflate(R.layout.fragment_supplier_orders, container, false);
+    }
+
+    @Override
+    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+        mViewModel = new ViewModelProvider(this).get(SupplierOrdersViewModel.class);
+        // TODO: Use the ViewModel
+    }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersViewModel.java b/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersViewModel.java
new file mode 100644
index 0000000..ca7944a
--- /dev/null
+++ b/app/src/main/java/com/example/mampfmobil/ui/supplier/SupplierOrdersViewModel.java
@@ -0,0 +1,7 @@
+package com.example.mampfmobil.ui.supplier;
+
+import androidx.lifecycle.ViewModel;
+
+public class SupplierOrdersViewModel extends ViewModel {
+    // TODO: Implement the ViewModel
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_supplier_orders.xml b/app/src/main/res/layout/fragment_supplier_orders.xml
new file mode 100644
index 0000000..1230837
--- /dev/null
+++ b/app/src/main/res/layout/fragment_supplier_orders.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".ui.supplier.SupplierOrdersFragment">
+
+    <TextView
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:text="Hello" />
+
+</FrameLayout>
\ No newline at end of file
diff --git a/app/src/main/res/menu/bottom_nav_menu_supplier.xml b/app/src/main/res/menu/bottom_nav_menu_supplier.xml
index 56cc6f9..0a59a2d 100644
--- a/app/src/main/res/menu/bottom_nav_menu_supplier.xml
+++ b/app/src/main/res/menu/bottom_nav_menu_supplier.xml
@@ -12,5 +12,8 @@
     <item
         android:id="@+id/navigation_statistics"
         android:title="@string/statistics" />
+    <item
+        android:id="@+id/navigation_ordersSupplier"
+        android:title="@string/orders" />
 
 </menu>
\ No newline at end of file
diff --git a/app/src/main/res/navigation/mobile_navigation_sup.xml b/app/src/main/res/navigation/mobile_navigation_sup.xml
index 6280624..0cdaf29 100644
--- a/app/src/main/res/navigation/mobile_navigation_sup.xml
+++ b/app/src/main/res/navigation/mobile_navigation_sup.xml
@@ -22,4 +22,11 @@
         android:name="com.example.mampfmobil.ui.supplier.SupplierStatisticsFragment"
         android:label="@string/statistics"
         tools:layout="@layout/fragment_supplier_statistics" />
+
+    <fragment
+        android:id="@+id/navigation_ordersSupplier"
+        android:name="com.example.mampfmobil.ui.supplier.SupplierOrdersFragment"
+        android:label="Orders"
+        tools:layout="@layout/fragment_supplier_orders" />
+
 </navigation>
\ No newline at end of file
-- 
GitLab