Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_cart);
- //Firebase
- database = FirebaseDatabase.getInstance();
- requests = database.getReference("Requests");
- //init
- recyclerView = findViewById(R.id.listCart);
- recyclerView.setHasFixedSize(true);
- layoutManager = new LinearLayoutManager(this);
- recyclerView.setLayoutManager(layoutManager);
- txtTotalPrice = findViewById(R.id.total);
- btnPlace = findViewById(R.id.btnPlaceOrder);
- btnPlace.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- if (cart.size() > 0)
- showAlertDialog();
- else
- Toast.makeText(Cart.this, "Your Cart is Empty", Toast.LENGTH_SHORT).show();
- }
- });
- loadListFood();
- }
- private void showAlertDialog() {
- AlertDialog.Builder alertDialog = new AlertDialog.Builder(Cart.this);
- alertDialog.setTitle("One more step!");
- alertDialog.setMessage("Enter your address: ");
- final EditText edtAddress = new EditText(Cart.this);
- LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
- LinearLayout.LayoutParams.MATCH_PARENT,
- LinearLayout.LayoutParams.MATCH_PARENT
- );
- edtAddress.setLayoutParams(lp);
- alertDialog.setView(edtAddress); // Add edit text to alert dialog.
- alertDialog.setIcon(R.drawable.ic_shopping_cart_black_24dp);
- alertDialog.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- // Create new Request
- Request request = new Request(
- Common.currentUser.getPhone(),
- Common.currentUser.getName(),
- edtAddress.getText().toString(),
- txtTotalPrice.getText().toString(),
- cart
- );
- int stock = 0;
- // Submit to Firebase Database
- // We Will using System.CurrentMilli to Key
- requests.child(String.valueOf(System.currentTimeMillis()))
- .setValue(request);
- //Delete cart
- new Database(getBaseContext()).cleanCart();
- Toast.makeText(Cart.this, "Thank you for ordering!", Toast.LENGTH_SHORT).show();
- finish();
- }
- });
- alertDialog.setNegativeButton("No", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- dialog.dismiss();
- }
- });
- alertDialog.show();
- }
- private void loadListFood() {
- cart = new Database(this).getCarts();
- adapter = new CartAdapter(cart, this);
- adapter.notifyDataSetChanged();
- recyclerView.setAdapter(adapter);
- //Calculation of total price
- int total = 0;
- for(Order order:cart)
- total+=(Integer.parseInt(order.getPrice())) * (Integer.parseInt(order.getQuantity()));
- Locale locale = new Locale("en","PH");
- NumberFormat fmt = NumberFormat.getCurrencyInstance(locale);
- txtTotalPrice.setText(fmt.format(total));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement