Commit 5110f6c3 authored by Muhammad Suryono's avatar Muhammad Suryono

Fix merge with cart on Activity

parents 3e0b4323 f562c45b
...@@ -18,6 +18,7 @@ import android.view.Window; ...@@ -18,6 +18,7 @@ import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.Adapter; import android.widget.Adapter;
import android.widget.ArrayAdapter; import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Filter; import android.widget.Filter;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.TextView; import android.widget.TextView;
...@@ -33,11 +34,17 @@ import com.yono.messeripos.models.ProductCartModels; ...@@ -33,11 +34,17 @@ import com.yono.messeripos.models.ProductCartModels;
import com.yono.messeripos.models.ProductModels; import com.yono.messeripos.models.ProductModels;
import java.lang.reflect.Array; import java.lang.reflect.Array;
import java.security.Key;
import java.text.NumberFormat; import java.text.NumberFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
public class CartActivity extends AppCompatActivity { public class CartActivity extends AppCompatActivity {
...@@ -51,18 +58,21 @@ public class CartActivity extends AppCompatActivity { ...@@ -51,18 +58,21 @@ public class CartActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cart); setContentView(R.layout.activity_cart);
Button btnCheckout;
Window w = getWindow(); Window w = getWindow();
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
// Toolbars
MaterialToolbar toolbars = findViewById(R.id.cAppBar); MaterialToolbar toolbars = findViewById(R.id.cAppBar);
setSupportActionBar(toolbars); setSupportActionBar(toolbars);
Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true); Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setTitle("Checkout"); getSupportActionBar().setTitle("Cart");
toolbars.setNavigationOnClickListener(view -> onBackPressed()); toolbars.setNavigationOnClickListener(view -> onBackPressed());
recyclerView = findViewById(R.id.rvCart); recyclerView = findViewById(R.id.rvCart);
cartAdapter = new CartAdapter(); cartAdapter = new CartAdapter();
btnCheckout = findViewById(R.id.btCheckout);
LinearLayoutManager llm = new LinearLayoutManager(this); LinearLayoutManager llm = new LinearLayoutManager(this);
recyclerView.setLayoutManager(llm); recyclerView.setLayoutManager(llm);
...@@ -75,6 +85,7 @@ public class CartActivity extends AppCompatActivity { ...@@ -75,6 +85,7 @@ public class CartActivity extends AppCompatActivity {
modelsCart.getCartProduct().observe(this, new Observer<List<ProductCartModels>>() { modelsCart.getCartProduct().observe(this, new Observer<List<ProductCartModels>>() {
@Override @Override
public void onChanged(List<ProductCartModels> productCartModels) { public void onChanged(List<ProductCartModels> productCartModels) {
if (productCartModels != null){ if (productCartModels != null){
cartAdapter.setCartAdapter(CartActivity.this, productCartModels); cartAdapter.setCartAdapter(CartActivity.this, productCartModels);
recyclerView.setAdapter(cartAdapter); recyclerView.setAdapter(cartAdapter);
...@@ -90,17 +101,20 @@ public class CartActivity extends AppCompatActivity { ...@@ -90,17 +101,20 @@ public class CartActivity extends AppCompatActivity {
@Override @Override
public void onUpdateQuantityPlus(ProductCartModels productCartModels) { public void onUpdateQuantityPlus(ProductCartModels productCartModels) {
productCartModels.setQuantity_orders(productCartModels.getQuantity_orders()+1);
modelsCart.updateCart(productCartModels);
} }
@Override @Override
public void onUpdateQuantityMinus(ProductCartModels productCartModels) { public void onUpdateQuantityMinus(ProductCartModels productCartModels) {
if (productCartModels.getQuantity_orders() > 1) {
productCartModels.setQuantity_orders(productCartModels.getQuantity_orders()-1);
modelsCart.updateCart(productCartModels);
}
} }
@Override @Override
public void onCheckout(ProductCartModels productCartModels) { public void onCheckout(ProductCartModels productCartModels) {
} }
}); });
...@@ -137,15 +151,14 @@ public class CartActivity extends AppCompatActivity { ...@@ -137,15 +151,14 @@ public class CartActivity extends AppCompatActivity {
// countTotal(); // countTotal();
// } // }
// }); // });
//
// btnCheckout.setOnClickListener(new View.OnClickListener() { btnCheckout.setOnClickListener(new View.OnClickListener() {
// @Override @Override
// public void onClick(View view) { public void onClick(View view) {
// startActivity(new Intent(CartActivity.this, PaymentActivity.class)); startActivity(new Intent(CartActivity.this, PaymentActivity.class));
// finish(); }
// } });
// }); }
// }
// //
// private void countTotal() { // private void countTotal() {
// int price = prices; // int price = prices;
...@@ -163,7 +176,6 @@ public class CartActivity extends AppCompatActivity { ...@@ -163,7 +176,6 @@ public class CartActivity extends AppCompatActivity {
// return NumberFormat.getCurrencyInstance(ID); // return NumberFormat.getCurrencyInstance(ID);
// } // }
} }
}
/** /**
......
...@@ -3,6 +3,8 @@ package com.yono.messeripos; ...@@ -3,6 +3,8 @@ package com.yono.messeripos;
import android.content.CursorLoader; import android.content.CursorLoader;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor; import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri; import android.net.Uri;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
...@@ -13,6 +15,7 @@ import android.provider.Settings; ...@@ -13,6 +15,7 @@ import android.provider.Settings;
import android.util.Log; import android.util.Log;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.Toast; import android.widget.Toast;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
...@@ -120,13 +123,13 @@ public class FormProductActivity extends AppCompatActivity { ...@@ -120,13 +123,13 @@ public class FormProductActivity extends AppCompatActivity {
Log.d("Get filepath photo", "" + getRealPathFromURI(selectedImage)); Log.d("Get filepath photo", "" + getRealPathFromURI(selectedImage));
binding.setPhoto(getRealPathFromURI(selectedImage)); binding.setPhoto(getRealPathFromURI(selectedImage));
} // }
// if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) { // if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
// Log.d("Get filepath photo", "" + file.getAbsolutePath()); // Log.d("Get filepath photo", "" + file.getAbsolutePath());
// binding.setPhoto(file.getAbsolutePath()); // binding.setPhoto(file.getAbsolutePath());
// productModels.setImageProduct(file.getName()); // productModels.setImageProduct(file.getName());
// } }
} }
@RequiresApi(api = Build.VERSION_CODES.M) @RequiresApi(api = Build.VERSION_CODES.M)
......
...@@ -51,6 +51,7 @@ public class MainActivity extends AppCompatActivity { ...@@ -51,6 +51,7 @@ public class MainActivity extends AppCompatActivity {
TextView txtBadge; TextView txtBadge;
public static Boolean status_update = false; public static Boolean status_update = false;
MainViewModelsCart mainViewModelsCart; MainViewModelsCart mainViewModelsCart;
public static Boolean cartIsEmpty;
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
...@@ -200,7 +201,7 @@ public class MainActivity extends AppCompatActivity { ...@@ -200,7 +201,7 @@ public class MainActivity extends AppCompatActivity {
@RequiresApi(api = Build.VERSION_CODES.N) @RequiresApi(api = Build.VERSION_CODES.N)
@Override @Override
public void onChanged(List<ProductCartModels> productCartModels) { public void onChanged(List<ProductCartModels> productCartModels) {
if (productCartModels.isEmpty()){ if (productCartModels.isEmpty() && cartIsEmpty){
mainViewModelsCart.insertCart(new ProductCartModels( mainViewModelsCart.insertCart(new ProductCartModels(
1233, 1233,
1, 1,
...@@ -209,9 +210,17 @@ public class MainActivity extends AppCompatActivity { ...@@ -209,9 +210,17 @@ public class MainActivity extends AppCompatActivity {
product.getPriceProduct(), product.getPriceProduct(),
0 0
)); ));
Log.d("a", "onChanged: "+cartIsEmpty);
cartIsEmpty = false;
Log.i("Add data cart", "onChanged: Berhasil ditambahkan"); Log.i("Add data cart", "onChanged: Berhasil ditambahkan");
}else { }else {
startActivity(new Intent(MainActivity.this, CartActivity.class)); if (cartIsEmpty){
startActivity(new Intent(MainActivity.this, CartActivity.class));
cartIsEmpty = false;
}
cartIsEmpty = false;
} }
} }
}); });
...@@ -267,10 +276,6 @@ public class MainActivity extends AppCompatActivity { ...@@ -267,10 +276,6 @@ public class MainActivity extends AppCompatActivity {
@Override @Override
public boolean onCreateOptionsMenu(Menu menu) { public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.home, menu); getMenuInflater().inflate(R.menu.home, menu);
final MenuItem menuItem = menu.findItem(R.id.menu_cart);
View actionView = menuItem.getActionView();
return true; return true;
} }
......
...@@ -11,6 +11,7 @@ import androidx.databinding.DataBindingUtil; ...@@ -11,6 +11,7 @@ import androidx.databinding.DataBindingUtil;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.yono.messeripos.CartActivity;
import com.yono.messeripos.R; import com.yono.messeripos.R;
import com.yono.messeripos.databinding.ItemCartBinding; import com.yono.messeripos.databinding.ItemCartBinding;
import com.yono.messeripos.models.CartModels; import com.yono.messeripos.models.CartModels;
...@@ -95,6 +96,22 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.MyViewHolder> ...@@ -95,6 +96,22 @@ public class CartAdapter extends RecyclerView.Adapter<CartAdapter.MyViewHolder>
binding.setSubTotal(utils.convertPrice("Rp. ", subtotal)); binding.setSubTotal(utils.convertPrice("Rp. ", subtotal));
binding.etQty.setText(Long.toString(cartModels.getQuantity_orders())); binding.etQty.setText(Long.toString(cartModels.getQuantity_orders()));
binding.btDelete.setOnClickListener(view -> {
listener.onDelete(cartModels);
});
// set edit text qty
binding.etQty.setText(Long.toString(cartModels.getQuantity_orders()));
binding.btPlus.setOnClickListener(view -> {
listener.onUpdateQuantityPlus(cartModels);
});
binding.btMinus.setOnClickListener(view -> {
listener.onUpdateQuantityMinus(cartModels);
});
} }
} }
} }
...@@ -120,7 +120,13 @@ public class ProductAdapter extends RecyclerView.Adapter<ProductAdapter.MyViewHo ...@@ -120,7 +120,13 @@ public class ProductAdapter extends RecyclerView.Adapter<ProductAdapter.MyViewHo
binding.setStatus(statusProduct); binding.setStatus(statusProduct);
} }
binding.materialBtnAddCart.setOnClickListener(view -> listener.onAddCart(products)); binding.materialBtnAddCart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.onAddCart(products);
MainActivity.cartIsEmpty = true;
}
});
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment