fixed for card retry

This commit is contained in:
kizzy 2026-02-23 11:31:59 +07:00
parent 2b114dab5e
commit 2e26a62145

View File

@ -10,6 +10,7 @@ import androidx.appcompat.app.AlertDialog;
import androidx.navigation.NavController; import androidx.navigation.NavController;
import androidx.navigation.NavDestination; import androidx.navigation.NavDestination;
import com.utsmm.kbz.ui.core_viewmodel.CardReadViewModel;
import com.utsmm.kbz.ui.pinpad.PinPadViewModel; import com.utsmm.kbz.ui.pinpad.PinPadViewModel;
import com.utsmyanmar.baselib.fragment.DataBindingFragment; import com.utsmyanmar.baselib.fragment.DataBindingFragment;
import com.utsmyanmar.baselib.ui.CustomPinPadKeyboard; import com.utsmyanmar.baselib.ui.CustomPinPadKeyboard;
@ -42,6 +43,8 @@ public class EmvTransactionFragment extends DataBindingFragment {
private EmvTransactionProcessViewModel emvTransactionViewModel; private EmvTransactionProcessViewModel emvTransactionViewModel;
private CardReadViewModel cardReadViewModel;
private PinPadViewModel pinPadViewModel; private PinPadViewModel pinPadViewModel;
private SharedViewModel sharedViewModel; private SharedViewModel sharedViewModel;
@ -76,6 +79,7 @@ public class EmvTransactionFragment extends DataBindingFragment {
emvTransactionViewModel = getFragmentScopeViewModel(EmvTransactionProcessViewModel.class); emvTransactionViewModel = getFragmentScopeViewModel(EmvTransactionProcessViewModel.class);
pinPadViewModel = getFragmentScopeViewModel(PinPadViewModel.class); pinPadViewModel = getFragmentScopeViewModel(PinPadViewModel.class);
sharedViewModel = getFragmentScopeViewModel(SharedViewModel.class); sharedViewModel = getFragmentScopeViewModel(SharedViewModel.class);
cardReadViewModel = getFragmentScopeViewModel(CardReadViewModel.class);
} }
@Override @Override
@ -227,8 +231,26 @@ public class EmvTransactionFragment extends DataBindingFragment {
navigateToRRNScreen(); navigateToRRNScreen();
break; break;
case READ_CARD_RETRY: case READ_CARD_RETRY:
sharedViewModel.set_errorFragmentMsg("Interface not found!"); if(cardReadViewModel.cardTypeData.getValue()!= null && cardReadViewModel.cardTypeData.getValue() == CardTypeX.IC.value) {
navigateToError(); isCardInserted(new CardDetectCallback() {
@Override
public void onComplete() {
sharedViewModel.setIsFallback(true);
navigateToCheckCard();
}
});
} else if(cardReadViewModel.cardTypeData.getValue() != null && cardReadViewModel.cardTypeData.getValue() == CardTypeX.NFC.value) {
isCardTaped("Please try again",new CardDetectCallback() {
@Override
public void onComplete() {
sharedViewModel.setIsSeePhone(true);
navigateToCheckCard();
}
});
}
// sharedViewModel.set_errorFragmentMsg("Interface not found!");
// navigateToError();
break; break;
case READ_CARD_NO_APP: case READ_CARD_NO_APP:
isCardTaped("Terminal has no APP!"); isCardTaped("Terminal has no APP!");