Commit 931c1480 authored by Muhammad Suryono's avatar Muhammad Suryono

Merge branch 'cart' into dev

parents e1651425 d556266b
package com.yono.messeripos; package com.yono.messeripos;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.content.Intent; import android.content.Intent;
import android.os.Build; import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.util.Log;
import android.view.View; import android.view.View;
import android.view.Window; import android.view.Window;
import android.view.WindowManager; import android.view.WindowManager;
...@@ -15,9 +18,16 @@ import android.widget.TextView; ...@@ -15,9 +18,16 @@ import android.widget.TextView;
import com.google.android.material.appbar.MaterialToolbar; import com.google.android.material.appbar.MaterialToolbar;
import com.google.android.material.button.MaterialButton; import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText; import com.google.android.material.textfield.TextInputEditText;
import com.google.gson.Gson;
import com.yono.messeripos.adapter.CartAdapter;
import com.yono.messeripos.models.CartModels;
import com.yono.messeripos.models.MainViewModelsCart;
import com.yono.messeripos.models.ProductCartModels;
import java.text.NumberFormat; import java.text.NumberFormat;
import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects;
public class CartActivity extends AppCompatActivity { public class CartActivity extends AppCompatActivity {
...@@ -26,6 +36,9 @@ public class CartActivity extends AppCompatActivity { ...@@ -26,6 +36,9 @@ public class CartActivity extends AppCompatActivity {
TextView tvQtyView, tvPrice, tvTotal; TextView tvQtyView, tvPrice, tvTotal;
MaterialButton btnCheckout; MaterialButton btnCheckout;
CartAdapter cartAdapter;
MainViewModelsCart modelsCart;
public int counter, prices; public int counter, prices;
@Override @Override
...@@ -33,82 +46,91 @@ public class CartActivity extends AppCompatActivity { ...@@ -33,82 +46,91 @@ public class CartActivity extends AppCompatActivity {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cart); setContentView(R.layout.activity_cart);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { 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);
}
MaterialToolbar toolbars = findViewById(R.id.cAppBar); MaterialToolbar toolbars = findViewById(R.id.cAppBar);
setSupportActionBar(toolbars); setSupportActionBar(toolbars);
getSupportActionBar().setDisplayHomeAsUpEnabled(true); Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setTitle("Checkout"); getSupportActionBar().setTitle("Checkout");
toolbars.setNavigationOnClickListener(view -> onBackPressed()); toolbars.setNavigationOnClickListener(view -> onBackPressed());
btMinus = findViewById(R.id.btMinus); modelsCart = new ViewModelProvider(this).get(MainViewModelsCart.class);
btPlus = findViewById(R.id.btPlus);
btDelete = findViewById(R.id.btDelete); modelsCart.getCartProduct().observe(this, new Observer<List<ProductCartModels>>() {
btnCheckout = findViewById(R.id.btCheckout); @Override
public void onChanged(List<ProductCartModels> productCartModels) {
tiQty = findViewById(R.id.etQty);
tvQtyView = findViewById(R.id.tvQuantity); cartAdapter = new CartAdapter(CartActivity.this, productCartModels);
tvPrice = findViewById(R.id.tvPrice); }
tvTotal = findViewById(R.id.tvTotal); });
counter = Integer.parseInt(tvQtyView.getText().toString()); // btMinus = findViewById(R.id.btMinus);
prices = Integer.parseInt(tvPrice.getText().toString()); // btPlus = findViewById(R.id.btPlus);
// btDelete = findViewById(R.id.btDelete);
tvTotal.setText(setToRp().format((double) Integer.parseInt(tvTotal.getText().toString()))); // btnCheckout = findViewById(R.id.btCheckout);
//
btMinus.setOnClickListener(new View.OnClickListener() { // tiQty = findViewById(R.id.etQty);
@SuppressLint("SetTextI18n") // tvQtyView = findViewById(R.id.tvQuantity);
@Override // tvPrice = findViewById(R.id.tvPrice);
public void onClick(View view) { // tvTotal = findViewById(R.id.tvTotal);
if (counter > 1){ //
counter--; // counter = Integer.parseInt(tvQtyView.getText().toString());
tiQty.setText(Integer.toString(counter)); // prices = Integer.parseInt(tvPrice.getText().toString());
tvQtyView.setText(Integer.toString(counter)); //
// tvTotal.setText(setToRp().format((double) Integer.parseInt(tvTotal.getText().toString())));
countTotal(); //
} // btMinus.setOnClickListener(new View.OnClickListener() {
} // @SuppressLint("SetTextI18n")
}); // @Override
// public void onClick(View view) {
btPlus.setOnClickListener(new View.OnClickListener() { // if (counter > 1){
@SuppressLint("SetTextI18n") // counter--;
@Override // tiQty.setText(Integer.toString(counter));
public void onClick(View view) { // tvQtyView.setText(Integer.toString(counter));
counter++; //
tiQty.setText(Integer.toString(counter)); // countTotal();
tvQtyView.setText(Integer.toString(counter)); // }
// }
countTotal(); // });
} //
}); // btPlus.setOnClickListener(new View.OnClickListener() {
// @SuppressLint("SetTextI18n")
btnCheckout.setOnClickListener(new View.OnClickListener() { // @Override
@Override // public void onClick(View view) {
public void onClick(View view) { // counter++;
startActivity(new Intent(CartActivity.this, PaymentActivity.class)); // tiQty.setText(Integer.toString(counter));
finish(); // tvQtyView.setText(Integer.toString(counter));
} //
}); // countTotal();
} // }
// });
private void countTotal() { //
int price = prices; // btnCheckout.setOnClickListener(new View.OnClickListener() {
int qtyView = Integer.parseInt(tvQtyView.getText().toString()); // @Override
int count = price*qtyView; // public void onClick(View view) {
// String result = Integer.toString(price*qtyView); // startActivity(new Intent(CartActivity.this, PaymentActivity.class));
// finish();
// set to view // }
tvTotal.setText(setToRp().format((double) count)); // });
} // }
//
private NumberFormat setToRp() { // private void countTotal() {
Locale ID = new Locale("in", "ID"); // int price = prices;
// int qtyView = Integer.parseInt(tvQtyView.getText().toString());
return NumberFormat.getCurrencyInstance(ID); // int count = price*qtyView;
//// String result = Integer.toString(price*qtyView);
//
//// set to view
// tvTotal.setText(setToRp().format((double) count));
// }
//
// private NumberFormat setToRp() {
// Locale ID = new Locale("in", "ID");
//
// return NumberFormat.getCurrencyInstance(ID);
// }
} }
} }
......
package com.yono.messeripos.adapter; package com.yono.messeripos.adapter;
import android.content.Context;
import android.util.Log;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.google.gson.Gson;
import com.yono.messeripos.models.ProductCartModels;
import java.util.List;
public class CartAdapter extends RecyclerView.Adapter<CartAdapter.MyViewHolder> { public class CartAdapter extends RecyclerView.Adapter<CartAdapter.MyViewHolder> {
List<ProductCartModels> cartModels;
Context context;
public CartAdapter(Context context, List<ProductCartModels> cartModels) {
this.cartModels = cartModels;
this.context = context;
String gs = new Gson().toJson(cartModels);
Log.d("CartAdapter: ", gs);
notifyDataSetChanged();
}
@NonNull @NonNull
@Override @Override
......
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