Commit 507446b0 authored by Muhammad Suryono's avatar Muhammad Suryono

Update code again

parent 56a5914f
......@@ -15,10 +15,14 @@ import android.widget.EditText;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.lifecycle.ViewModelProvider;
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
import com.yono.messeripos.adapter.ProductAdapter;
import com.yono.messeripos.api.client.Client;
import com.yono.messeripos.api.service.PaymentService;
import com.yono.messeripos.models.PaymentsModels;
import com.yono.messeripos.models.ProductModels;
import com.yono.messeripos.response.DataResponse;
import com.yono.messeripos.utils.Utils;
......@@ -27,6 +31,9 @@ import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import static com.yono.messeripos.MainActivity.CHECKOUT;
import static com.yono.messeripos.MainActivity.orderId;
public class BottomSheets extends BottomSheetDialogFragment {
EditText inputAmount;
......@@ -42,6 +49,16 @@ public class BottomSheets extends BottomSheetDialogFragment {
this.paymentsModels = paymentsModels;
}
public interface CashListener {
void onCash(PaymentsModels paymentsModels);
}
private CashListener listener;
public void setListener(CashListener listener) {
this.listener = listener;
}
@Override
public View onCreateView(LayoutInflater inflater, @Nullable
ViewGroup container, @Nullable Bundle savedInstanceState)
......@@ -85,12 +102,12 @@ public class BottomSheets extends BottomSheetDialogFragment {
}
});
btnCash.setOnClickListener(view -> bayar());
btnCash.setOnClickListener(view -> bayar(view));
return v;
}
private void bayar() {
private void bayar(View view) {
// String orderId, String paymentType, String bank, long grossAmount
PaymentsModels paymentsModels = new PaymentsModels(
MainActivity.orderId,
......@@ -104,7 +121,13 @@ public class BottomSheets extends BottomSheetDialogFragment {
@Override
public void onResponse(Call<DataResponse<PaymentsModels>> call, Response<DataResponse<PaymentsModels>> response) {
if (response.body() != null){
SharedPreferences.Editor editor = PaymentActivity.sharedPreferences.edit();
editor.putBoolean(CHECKOUT, false);
editor.putString(orderId, "");
if (editor.commit()){
Intent i = new Intent(getActivity(), MainActivity.class);
view.getContext().startActivity(i);
}
}
}
......
......@@ -178,6 +178,7 @@ public class CartActivity extends AppCompatActivity {
}
private void actionSaveCart() {
Client client = new Client();
modelsCart.getCartById(orderId).observe(this, new Observer<List<ProductCartModels>>() {
@Override
......@@ -189,7 +190,7 @@ public class CartActivity extends AppCompatActivity {
grossAmount = grossAmount + (pd.getQuantity_orders()*pd.getPrice_orders());
paymentsModels.setGrossAmount(grossAmount);
}
paymentsModels.setBank("none");
paymentsModels.setBank("");
paymentsModels.setPaymentType("pending");
paymentsModels.setOrderId(orderId);
paymentsModels.setTransactionStatus("pending");
......
......@@ -399,7 +399,7 @@ public class MainActivity extends AppCompatActivity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.home, menu);
getMenuInflater().inflate(R.menu.update, menu);
return true;
}
......@@ -407,7 +407,8 @@ public class MainActivity extends AppCompatActivity {
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
int id = item.getItemId();
if (id == R.id.menu_cart){
Toast.makeText(MainActivity.this, "dfjhgkjdfgkdfg", Toast.LENGTH_LONG).show();
startActivity(new Intent(MainActivity.this, MainActivity.class));
finish();
}
return super.onOptionsItemSelected(item);
}
......
......@@ -8,6 +8,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
......@@ -41,6 +42,7 @@ import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import static com.yono.messeripos.BottomSheets.grossAmount;
import static com.yono.messeripos.MainActivity.CHECKOUT;
import static com.yono.messeripos.MainActivity.ORDER_ID;
import static com.yono.messeripos.MainActivity.checkout;
......@@ -61,6 +63,7 @@ public class PaymentActivity extends AppCompatActivity {
public static BottomSheets bottomSheet;
public static SharedPreferences sharedPreferences;
Button cashBtn;
ProgressDialog progressDialog;
......@@ -80,6 +83,9 @@ public class PaymentActivity extends AppCompatActivity {
checkoutAdapter = new CheckoutAdapter();
recyclerView = findViewById(R.id.rvItem);
grandTotal = findViewById(R.id.grand_total);
progressDialog = new ProgressDialog(PaymentActivity.this);
progressDialog.setMessage("Loading...");
progressDialog.setCancelable(false);
MaterialToolbar toolbars = findViewById(R.id.appbar);
setSupportActionBar(toolbars);
......@@ -106,6 +112,8 @@ public class PaymentActivity extends AppCompatActivity {
}
});
bottomSheet = new BottomSheets(paymentsModels);
RecyclerView rvPayment = findViewById(R.id.rvPayment);
......@@ -138,6 +146,7 @@ public class PaymentActivity extends AppCompatActivity {
bottomSheet.show(getSupportFragmentManager(),
"ModalBottomSheet");
}else{
progressDialog.show();
Client client = new Client();
paymentsModels.setPaymentType("bank_transfer");
paymentsModels.setBank(methodPay);
......@@ -152,11 +161,13 @@ public class PaymentActivity extends AppCompatActivity {
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(ORDER_ID, "");
editor.putBoolean(CHECKOUT, false);
progressDialog.dismiss();
if (editor.commit()){
startActivity(new Intent(PaymentActivity.this, MainActivity.class));
finish();
}
}else{
progressDialog.dismiss();
new AlertDialog.Builder(PaymentActivity.this)
.setTitle("Payment Order")
.setMessage("Erorr save!").show();
......@@ -165,6 +176,7 @@ public class PaymentActivity extends AppCompatActivity {
@Override
public void onFailure(Call<DataResponse<PaymentsModels>> call, Throwable t) {
progressDialog.dismiss();
new AlertDialog.Builder(PaymentActivity.this)
.setCancelable(false)
.setTitle("Payment Order")
......@@ -177,6 +189,41 @@ public class PaymentActivity extends AppCompatActivity {
}
});
bottomSheet.setListener(new BottomSheets.CashListener() {
@Override
public void onCash(PaymentsModels paymentsModels) {
progressDialog.show();
Client client = new Client();
PaymentsModels paymentsModels1 = new PaymentsModels(
MainActivity.orderId,
"cash",
"none",
grossAmount
);
PaymentService paymentService = client.Client(PaymentService.class);
paymentService.postFromCart(paymentsModels1).enqueue(new Callback<DataResponse<PaymentsModels>>() {
@Override
public void onResponse(Call<DataResponse<PaymentsModels>> call, Response<DataResponse<PaymentsModels>> response) {
if (response.body() != null){
progressDialog.dismiss();
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean(CHECKOUT, false);
editor.putString(orderId, "");
if (editor.commit()){
startActivity(new Intent(PaymentActivity.this, MainActivity.class));
}
}
}
@Override
public void onFailure(Call<DataResponse<PaymentsModels>> call, Throwable t) {
}
});
}
});
}
@Override
......
......@@ -75,7 +75,11 @@ public class TransactionAdapter extends RecyclerView.Adapter<TransactionAdapter.
public void binData(PaymentsModels paymentsModels){
itemHistoryBinding.setTransaction(paymentsModels);
itemHistoryBinding.setDate(utils.convertDate(paymentsModels.getUpdatedAt()));
itemHistoryBinding.cvHistory.setOnClickListener(view -> listener.onShowDetail(paymentsModels));
// itemHistoryBinding.cvHistory.setOnClickListener(view -> listener.onShowDetail(paymentsModels));
if (itemHistoryBinding.getTransaction().equals("Settlement".toLowerCase())){
}
}
}
}
......@@ -88,13 +88,13 @@ public class Utils {
public String convertImageBase64File(String pathname){
ByteArrayOutputStream baos = new ByteArrayOutputStream();
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
options.inSampleSize = 3;
// BitmapFactory.Options options = new BitmapFactory.Options();
// options.inJustDecodeBounds = true;
// options.inSampleSize = 3;
// options.inSampleSize = calculateInSampleSize(options, 20,20);
Bitmap bitmap = BitmapFactory.decodeFile(pathname,options);
Bitmap bitmap = BitmapFactory.decodeFile(pathname);
bitmap.compress(Bitmap.CompressFormat.JPEG, 20, baos);
byte[] b = baos.toByteArray();
String encodeImage = Base64.encodeToString(b, Base64.DEFAULT);
......
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/menu_cart"
app:showAsAction="always"
android:icon="@drawable/ic_baseline_shopping_cart_24"
android:actionLayout="@layout/custome_action_badge"
android:title="Cart" />
</menu>
\ No newline at end of file
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