fixed crashing on co-badge card.

This commit is contained in:
kizzy 2026-01-20 14:51:17 +07:00
parent 4d30d0134c
commit 16b89ec19e
3 changed files with 64 additions and 7 deletions

View File

@ -262,11 +262,12 @@ public class CardWaitingFragment extends DataBindingFragment implements DataBind
cardReadViewModel.setCardTransactionType(CardTransactionType.FALLBACK);
} else if (cardType == CardTypeX.IC || cardType == CardTypeX.NFC) {
cardReadViewModel.cardTypeData.setValue(cardType.value);
if(isMPU) {
sharedViewModel.isEmv.setValue(false);
cardReadViewModel.setCardTransactionType(CardTransactionType.MPU);
} else {
cardReadViewModel.cardTypeData.postValue(cardType.value);
// cardReadViewModel.cardTypeData.setValue(cardType.value);
cardReadViewModel.setCardTransactionType(CardTransactionType.EMV);
}
// cardReadViewModel.cardTypeData.postValue(cardType.value);

View File

@ -275,12 +275,18 @@ public class ProcessingCardFragment extends DataBindingFragment {
private void prepareEmvTransaction() {
sharedViewModel.isEmv.postValue(true);
cardReadViewModel.cardTypeData.observe(getViewLifecycleOwner(), cardType -> {
// cardReadViewModel.cardTypeData.observe(getViewLifecycleOwner(), cardType -> {
// TradeData tradeData = Params.newTrade(false);
// PayDetail payDetail = tradeData.getPayDetail();
//
// payDetail.setCardType(cardType);
// emvTransactionViewModel.setTradeData(tradeData);
// });
TradeData tradeData = Params.newTrade(false);
PayDetail payDetail = tradeData.getPayDetail();
payDetail.setCardType(cardType);
payDetail.setCardType(cardReadViewModel.cardTypeData.getValue());
emvTransactionViewModel.setTradeData(tradeData);
});
}
}

View File

@ -23,6 +23,56 @@
"ttq": "32004000",
"cateCode": "2701",
"currencyCode": "0840"
},
{
"aidEnable": true,
"aid": "A00000006510",
"cardLabel": "JCB",
"applicationVersion": "0020",
"emvDDOL": "9F3704",
"emvTDOL": "9F3704",
"partialAidSelection": false,
"targetPercent": "99",
"maxTargetPercent": "99",
"threshold": "00000000",
"tacDefault": "D84000A800",
"tacOnline": "DC4004F800",
"tacDenial": "0000000000",
"floorLimit": "000000000000",
"cvmLimit": 75000,
"transLimit": "999999999999",
"transLimitCDV": "999999999999",
"terminalCapability": "0000000000000000",
"riskManageData": "01",
"kernelType": "06",
"ttq": "32004000",
"cateCode": "2701",
"currencyCode": "0840"
},
{
"aidEnable": true,
"aid": "A0000001570040",
"cardLabel": "JCB",
"applicationVersion": "0020",
"emvDDOL": "9F3704",
"emvTDOL": "9F3704",
"partialAidSelection": false,
"targetPercent": "99",
"maxTargetPercent": "99",
"threshold": "00000000",
"tacDefault": "D84000A800",
"tacOnline": "DC4004F800",
"tacDenial": "0000000000",
"floorLimit": "000000000000",
"cvmLimit": 75000,
"transLimit": "999999999999",
"transLimitCDV": "999999999999",
"terminalCapability": "0000000000000000",
"riskManageData": "01",
"kernelType": "06",
"ttq": "32004000",
"cateCode": "2701",
"currencyCode": "0840"
}