Commit aa299fb7 authored by Muhammad Suryono's avatar Muhammad Suryono

fix nfc

parent 40f6717e
......@@ -167,6 +167,7 @@ public class BottomSheets extends BottomSheetDialogFragment {
PaymentService paymentService = client.Client(PaymentService.class);
if (statusUpdatePayment == 0){
paymentsModels1.setOrderId(sharedPreferences.getString(ORDER_ID, ""));
view.getContext().startActivity(new Intent(getActivity(), TransactionDetail.class)
.putExtra(MethodePayment.VIA_CASH, paymentsModels1));
// paymentsModels1.setOrderId(sharedPreferences.getString(ORDER_ID, ""));
......
......@@ -102,17 +102,6 @@ public class MethodePayment extends AppCompatActivity {
paymentsModels.setOrderId(productCartModels.get(0).getId_orders());
paymentsModels.setGrossAmount(total);
Log.i("paymentModels", "onCreate: "+utils.convertGson(paymentsModels));
// if (productCartModels.size() !=0){
// getSupportActionBar().setTitle(productCartModels.get(0).getId_orders());
// paymentsModels.setOrderId(productCartModels.get(0).getId_orders());
// paymentsModels.setGrossAmount(total);
// checkoutAdapter.setCheckoutAdapter(PaymentActivity.this, productCartModels);
// recyclerView.setLayoutManager(new LinearLayoutManager(PaymentActivity.this, RecyclerView.VERTICAL, false));
// recyclerView.setAdapter(checkoutAdapter);
// recyclerView.addItemDecoration(dividerItemDecoration);
//// grandTotal.setText(utils.convertPrice("Rp. ", total));
// }
}
});
}else{
......@@ -147,11 +136,16 @@ public class MethodePayment extends AppCompatActivity {
}
private void nfc() {
startActivity(new Intent(MethodePayment.this, ScannerNfc.class));
if (paymentsModelsIntent == null){
startActivity(new Intent(MethodePayment.this, ScannerNfc.class)
.putExtra(VIA_NFC, paymentsModels));
}
}
private void bank() {
if (paymentsModelsIntent == null){
paymentsModels.setPaymentType("nfc");
startActivity(new Intent(MethodePayment.this, PaymentActivity.class)
.putExtra(METHODE_PAYMENT_DATA, paymentsModels));
}
......
......@@ -2,7 +2,9 @@ package com.yono.messeripos;
import android.app.PendingIntent;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.nfc.NdefMessage;
import android.nfc.NdefRecord;
import android.nfc.NfcAdapter;
......@@ -24,8 +26,11 @@ import android.widget.Toast;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.ViewModelProvider;
import com.yono.messeripos.R;
import com.yono.messeripos.models.MainViewModelsCart;
import com.yono.messeripos.models.PaymentsModels;
import com.yono.messeripos.nfc.parser.NdefMessageParser;
import com.yono.messeripos.nfc.record.ParsedNdefRecord;
import com.yono.messeripos.utils.Utils;
......@@ -38,6 +43,12 @@ public class ScannerNfc extends AppCompatActivity {
NfcAdapter nfcAdapter;
Utils utils = new Utils();
ProgressDialog progressDialog;
PaymentsModels paymentsModels;
MainViewModelsCart mainViewModelsCart;
public static final String MY_SHARED_NFC = "shared_nfc";
public static String getMySharedNfc;
public static final String NFC_ID = "nfcId";
SharedPreferences sharedPreferences, sharedPreferencesMain;
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
......@@ -48,6 +59,11 @@ public class ScannerNfc extends AppCompatActivity {
progressDialog = new ProgressDialog(ScannerNfc.this);
progressDialog.setMessage("Loading...");
paymentsModels = getIntent().getParcelableExtra(MethodePayment.VIA_NFC);
mainViewModelsCart = new ViewModelProvider(this).get(MainViewModelsCart.class);
sharedPreferences = getSharedPreferences(MY_SHARED_NFC, Context.MODE_PRIVATE);
sharedPreferencesMain = getSharedPreferences(MainActivity.MY_SHARED_PREFERENCES, Context.MODE_PRIVATE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
Window w = getWindow();
w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
......@@ -108,8 +124,14 @@ public class ScannerNfc extends AppCompatActivity {
NdefMessage msg = new NdefMessage(new NdefRecord[] {record});
msgs = new NdefMessage[] {msg};
Log.i("DUMPTAG", "resolveIntent: "+toDec(tag.getId()));
/**
* DISINI UNTUK SAVE KE DATABASE*/
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(NFC_ID, ""+toDec(tag.getId()));
if (editor.commit()){
paymentsModels.setOrderId(sharedPreferencesMain.getString(MainActivity.ORDER_ID, ""));
startActivity(new Intent(ScannerNfc.this, TransactionDetail.class)
.putExtra(MethodePayment.VIA_NFC, paymentsModels));
}
progressDialog.dismiss();
}
......
......@@ -50,7 +50,7 @@ public class TransactionDetail extends AppCompatActivity {
ProgressDialog progressDialog;
Client client = new Client();
PaymentService paymentService;
SharedPreferences sharedPreferences;
SharedPreferences sharedPreferences, sharedPreferencesNfc;
PaymentCreated paymentCreated;
@Override
......@@ -82,7 +82,14 @@ public class TransactionDetail extends AppCompatActivity {
paymentCreated = new PaymentCreated();
paymentCreated.setCancelable(false);
sharedPreferences = getSharedPreferences(MainActivity.MY_SHARED_PREFERENCES, Context.MODE_PRIVATE);
sharedPreferencesNfc = getSharedPreferences(ScannerNfc.MY_SHARED_NFC, Context.MODE_PRIVATE);
Log.i("LOGNFC", "onCreate: "+sharedPreferencesNfc.getString(ScannerNfc.NFC_ID, ""));
paymentsModelsBank = getIntent().getParcelableExtra(PaymentActivity.PAYMENT_VIA_BANK);
paymentsModelsCash = getIntent().getParcelableExtra(MethodePayment.VIA_CASH);
paymentsModelsNfc = getIntent().getParcelableExtra(MethodePayment.VIA_NFC);
Log.i("LOGNFCPINDAH", ""+utils.convertGson(paymentsModelsNfc));
recyclerView.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
......@@ -93,17 +100,25 @@ public class TransactionDetail extends AppCompatActivity {
}
private void getListTransaction() {
if (paymentsModelsBank != null){
grossAmount.setText(utils.convertPrice("Rp. ", paymentsModelsBank.getGrossAmount()));
grossAmountMethod.setText(utils.convertPrice("Rp. ", paymentsModelsBank.getGrossAmount()));
namaBank.setText(paymentsModelsBank.getBank().toUpperCase());
if (paymentsModelsBank.getPaymentType() == "bank_transfer"){
payment = "Bank Transfer";
}
paymentMethode.setText(payment);
paymentMethode.setText("Bank Transfer".toString());
ordersId = paymentsModelsBank.getOrderId();
} else if (paymentsModelsCash != null){
grossAmount.setText(utils.convertPrice("Rp. ", paymentsModelsCash.getGrossAmount()));
grossAmountMethod.setText(utils.convertPrice("Rp. ", paymentsModelsCash.getGrossAmount()));
namaBank.setText(paymentsModelsCash.getBank().toUpperCase());
paymentMethode.setText("Cash".toString());
ordersId = paymentsModelsCash.getOrderId();
} else if (paymentsModelsNfc != null){
grossAmount.setText(utils.convertPrice("Rp. ", paymentsModelsNfc.getGrossAmount()));
grossAmountMethod.setText(utils.convertPrice("Rp. ", paymentsModelsNfc.getGrossAmount()));
namaBank.setText(paymentsModelsCash.getBank().toUpperCase());
paymentMethode.setText("NFC Tap".toString());
ordersId = paymentsModelsNfc.getOrderId();
}
mainViewModelsCart.getCartById(ordersId).observe(this, new Observer<List<ProductCartModels>>() {
@Override
......@@ -138,6 +153,64 @@ public class TransactionDetail extends AppCompatActivity {
}
}
@Override
public void onFailure(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Throwable t) {
progressDialog.dismiss();
new AlertDialog.Builder(TransactionDetail.this)
.setTitle("Payment Order")
.setMessage("Erorr save!").show();
}
});
}else if (paymentsModelsCash != null){
paymentService = client.Client(PaymentService.class);
paymentService.postFromCart(paymentsModelsCash).enqueue(new Callback<DataResponse<PaymentsModels<List<VaNumberModels>>>>() {
@Override
public void onResponse(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Response<DataResponse<PaymentsModels<List<VaNumberModels>>>> response) {
if (response.body() != null){
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(ORDER_ID, "");
editor.putBoolean(CHECKOUT, false);
progressDialog.dismiss();
if (editor.commit()){
paymentCreated.show(getSupportFragmentManager(),"paymentCreated");
}
}else{
progressDialog.dismiss();
new AlertDialog.Builder(TransactionDetail.this)
.setTitle("Payment Order")
.setMessage("Erorr save!").show();
}
}
@Override
public void onFailure(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Throwable t) {
progressDialog.dismiss();
new AlertDialog.Builder(TransactionDetail.this)
.setTitle("Payment Order")
.setMessage("Erorr save!").show();
}
});
}else if (paymentsModelsNfc != null){
paymentService = client.Client(PaymentService.class);
paymentService.postFromCart(paymentsModelsNfc).enqueue(new Callback<DataResponse<PaymentsModels<List<VaNumberModels>>>>() {
@Override
public void onResponse(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Response<DataResponse<PaymentsModels<List<VaNumberModels>>>> response) {
if (response.body() != null){
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(ORDER_ID, "");
editor.putBoolean(CHECKOUT, false);
progressDialog.dismiss();
if (editor.commit()){
paymentCreated.show(getSupportFragmentManager(),"paymentCreated");
}
}else{
progressDialog.dismiss();
new AlertDialog.Builder(TransactionDetail.this)
.setTitle("Payment Order")
.setMessage("Erorr save!").show();
}
}
@Override
public void onFailure(Call<DataResponse<PaymentsModels<List<VaNumberModels>>>> call, Throwable t) {
progressDialog.dismiss();
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto">
......@@ -16,13 +17,13 @@
app:tabIndicatorHeight="4dp"
app:tabTextColor="@color/colorWhite"
app:tabBackground="@color/colorPrimary"
app:layout_constraintTop_toBottomOf="@id/toolbar"
android:layout_below="@id/toolbar"
app:tabMode="fixed"/>
<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/tabLayout"/>
android:layout_below="@id/tabLayout"/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
</RelativeLayout>
\ No newline at end of file
......@@ -98,7 +98,7 @@
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/lvDetail"
app:layout_constraintEnd_toEndOf="parent"
android:text="Admin Fee"
android:text="Rp. 0"
android:textSize="12sp"
android:layout_marginTop="10dp"/>
......@@ -159,7 +159,6 @@
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@id/txtMethode"
app:layout_constraintStart_toStartOf="parent"
android:text=""
android:textSize="12sp"
android:textColor="@android:color/black"
android:layout_marginTop="20dp"
......
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