Compare commits

..

No commits in common. "b8f85b3693c5a4749b74525668c3137ebecaa427" and "8f218b5c99792e5ce0b18bc6510efa42ae13c3de" have entirely different histories.

8 changed files with 13 additions and 31 deletions

View File

@ -245,8 +245,6 @@ public class InputRRNFragment extends DataBindingFragment {
} else { } else {
LogUtil.d(TAG,"PreAuth Cancel RRN not found!");
terminateProcess(isECR); terminateProcess(isECR);
} }

View File

@ -457,8 +457,8 @@ public class EmvTransactionProcessViewModel extends EmvBaseViewModel implements
@Override @Override
public void processPreVoidDb(PayDetail payResult) { public void processPreVoidDb(PayDetail payResult) {
oldTransPayDetail.setIsCanceled(true); mPayDetail.setIsCanceled(true);
updatePayDetail(oldTransPayDetail); updatePayDetail(mPayDetail);
repository.insertPayDetail(updateCurrentDateAndTime(payResult)); repository.insertPayDetail(updateCurrentDateAndTime(payResult));
} }

View File

@ -77,7 +77,7 @@ public class ManualEntryFragment extends DataBindingFragment {
} }
private void processEmvCard() { private void processEmvCard() {
if(sharedViewModel.transactionsType.getValue() == TransactionsType.REFUND || sharedViewModel.transactionsType.getValue() == TransactionsType.PRE_AUTH_VOID || sharedViewModel.transactionsType.getValue() == TransactionsType.PRE_AUTH_COMPLETE) { if(sharedViewModel.transactionsType.getValue() == TransactionsType.REFUND || sharedViewModel.transactionsType.getValue() == TransactionsType.PRE_AUTH_VOID) {
routeId = R.id.action_manualEntryFragment_to_inputRRNFragment; routeId = R.id.action_manualEntryFragment_to_inputRRNFragment;
} else { } else {
routeId = R.id.action_manualEntryFragment_to_emvTransactionFragment; routeId = R.id.action_manualEntryFragment_to_emvTransactionFragment;
@ -106,7 +106,7 @@ public class ManualEntryFragment extends DataBindingFragment {
payDetail.setICC55(""); payDetail.setICC55("");
// payDetail.setAuthNo(manualEntryViewModel.cvv.getValue()); // payDetail.setAuthNo(manualEntryViewModel.cvv.getValue());
emvTransactionProcessViewModel.cardNum.setValue(cardNo);
emvTransactionProcessViewModel.setTradeData(tradeData); emvTransactionProcessViewModel.setTradeData(tradeData);
safeNavigateToRouteId(); safeNavigateToRouteId();

View File

@ -143,7 +143,7 @@ public interface PayDetailDao {
@Query(("SELECT * FROM paydetail WHERE isCanceled = 0 AND CardNo IN(:cardNo) AND referNo IN(:referNo)")) @Query(("SELECT * FROM paydetail WHERE isCanceled = 0 AND CardNo IN(:cardNo) AND referNo IN(:referNo)"))
LiveData<PayDetail> searchPayDetail(String cardNo,String referNo); LiveData<PayDetail> searchPayDetail(String cardNo,String referNo);
@Query(("SELECT * FROM paydetail WHERE isCanceled = 0 AND isAdjust = 0 AND CardNo IN(:cardNo) AND referNo IN(:referNo)")) @Query(("SELECT * FROM paydetail WHERE isCanceled = 0 and isAdjust = 0 AND CardNo IN(:cardNo) AND referNo IN(:referNo)"))
LiveData<PayDetail> searchPayDetailPreCancel(String cardNo,String referNo); LiveData<PayDetail> searchPayDetailPreCancel(String cardNo,String referNo);

View File

@ -116,7 +116,7 @@ public class EmvParamOperation extends ParamOperation{
processPayWave(); processPayWave();
processPayPass(); processPayPass();
processQuickPass(); processQuickPass();
// processJSpeedy(); processJSpeedy();
processMPUCtls(); processMPUCtls();
processChips(); processChips();
processRids(); processRids();

View File

@ -179,8 +179,7 @@ public abstract class EmvBaseViewModel extends BaseViewModel {
protected boolean isSecondCall = false; protected boolean isSecondCall = false;
protected int mProcessStep; protected int mProcessStep;
protected int mAppSelect = 0; protected int mAppSelect = 0;
private static final String[] RESTRICTED_BINS = { private static final String[] RESTRICTED_BINS = {"624430",
"624430",
"624431", "624431",
"624445", "624445",
"626220", "626220",
@ -292,7 +291,7 @@ public abstract class EmvBaseViewModel extends BaseViewModel {
setTransactionLimitForMPUCtls(false); setTransactionLimitForMPUCtls(false);
emvHandler.contactlessConfigKernelId(EmvCardBrandEnum.EMV_CARD_BRAND_JCB,(byte) 0x01,ByteUtils.hexString2ByteArray("06")); // emvHandler.contactlessConfigKernelId(EmvCardBrandEnum.EMV_CARD_BRAND_JCB,(byte) 0x01,ByteUtils.hexString2ByteArray("06"));
emvHandler.contactlessAppendAidIntoKernel(EmvCardBrandEnum.EMV_CARD_BRAND_MASTER, (byte) 0x07, ByteUtils.hexString2ByteArray("A0000008890101")); emvHandler.contactlessAppendAidIntoKernel(EmvCardBrandEnum.EMV_CARD_BRAND_MASTER, (byte) 0x07, ByteUtils.hexString2ByteArray("A0000008890101"));
// emvHandler.contactlessAppendAidIntoKernelFirst(true); // emvHandler.contactlessAppendAidIntoKernelFirst(true);
LogUtil.d(TAG, "TransData :" + transData.getTransAmount()); LogUtil.d(TAG, "TransData :" + transData.getTransAmount());
@ -847,12 +846,7 @@ public abstract class EmvBaseViewModel extends BaseViewModel {
case SdkResult.Emv_Candidatelist_Empty:// Application have no aid list case SdkResult.Emv_Candidatelist_Empty:// Application have no aid list
case SdkResult.Emv_FallBack:// FallBack ,chip card reset failed case SdkResult.Emv_FallBack:// FallBack ,chip card reset failed
//fallback process //fallback process
if(mMPUContactlessConfigured) { mHandler.sendEmptyMessage(EMV_TRY_AGAIN);
mHandler.sendEmptyMessage(EMV_INSERT_OR_MANUAL);
} else {
mHandler.sendEmptyMessage(EMV_TRY_AGAIN);
}
break; break;
case SdkResult.Emv_Declined: case SdkResult.Emv_Declined:
@ -1244,7 +1238,7 @@ public abstract class EmvBaseViewModel extends BaseViewModel {
emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x1B}, new byte[]{(byte) 0x30}); emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x1B}, new byte[]{(byte) 0x30});
//EMV MODE :amount >contactless cvm limit, set 60 = online pin and signature , set 20 = signature //EMV MODE :amount >contactless cvm limit, set 60 = online pin and signature , set 20 = signature
emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x18}, new byte[]{(byte) 0xF0}); //F8 //F0 emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x18}, new byte[]{(byte) 0xF0}); //F8
//EMV mode :amount < contactless cvm limit, set 08 = no cvm //EMV mode :amount < contactless cvm limit, set 08 = no cvm
emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x19}, new byte[]{(byte) 0x08}); //08 emvHandler.setTlv(new byte[]{(byte) 0xDF, (byte) 0x81, (byte) 0x19}, new byte[]{(byte) 0x08}); //08

View File

@ -530,7 +530,7 @@
"currencyCode": "0104" "currencyCode": "0104"
}, },
{ {
"aidEnable": false, "aidEnable": true,
"aid": "A00000006510", "aid": "A00000006510",
"cardScheme": "JCB", "cardScheme": "JCB",
"applicationVersion": "0030", "applicationVersion": "0030",
@ -553,7 +553,7 @@
"currencyCode": "0104" "currencyCode": "0104"
}, },
{ {
"aidEnable": false, "aidEnable": true,
"aid": "A0000000651010", "aid": "A0000000651010",
"cardScheme": "JCB", "cardScheme": "JCB",
"applicationVersion": "0030", "applicationVersion": "0030",
@ -576,7 +576,7 @@
"currencyCode": "0104" "currencyCode": "0104"
}, },
{ {
"aidEnable": false, "aidEnable": true,
"aid": "A0000001570040", "aid": "A0000001570040",
"cardScheme": "JCB", "cardScheme": "JCB",
"applicationVersion": "0030", "applicationVersion": "0030",

View File

@ -309,15 +309,5 @@
"exponent": "03", "exponent": "03",
"expDate": "20201231", "expDate": "20201231",
"checkSum": "43A3151513B7ADCEB92DBEA2A262CEB336D26C83" "checkSum": "43A3151513B7ADCEB92DBEA2A262CEB336D26C83"
},
{
"rid": "A000000065",
"indx": "13",
"hashInd": "01",
"arithInd": "00",
"modul": "A3270868367E6E29349FC2743EE545AC53BD3029782488997650108524FD051E3B6EACA6A9A6C1441D28889A5F46413C8F62F3645AAEB30A1521EEF41FD4F3445BFA1AB29F9AC1A74D9A16B93293296CB09162B149BAC22F88AD8F322D684D6B49A12413FC1B6AC70EDEDB18EC1585519A89B50B3D03E14063C2CA58B7C2BA7FB22799A33BCDE6AFCBEB4A7D64911D08D18C47F9BD14A9FAD8805A15DE5A38945A97919B7AB88EFA11A88C0CD92C6EE7DC352AB0746ABF13585913C8A4E04464B77909C6BD94341A8976C4769EA6C0D30A60F4EE8FA19E767B170DF4FA80312DBA61DB645D5D1560873E2674E1F620083F30180BD96CA589",
"exponent": "03",
"expDate": "20201231",
"checkSum": "54CFAE617150DFA09D3F901C9123524523EBEDF3"
} }
] ]