qm-mposkit
Version:
qmpos payment
30 lines (25 loc) • 1.58 kB
JavaScript
import { Platform, NativeModules, DeviceEventEmitter, NativeEventEmitter } from 'react-native';
const VerifoneModule = NativeModules.VerifoneModule;
const _VERIFONE_KEYS = [
'vfi_getCardInfoResult','vfi_setRsaPublicKeyResult','vfi_BankSettleResult',
'vfi_BankVoidResult','vfi_BankLoginResult', 'vfi_LogMessage',
'vfi_BankSaleResult'
];
let event = (keyevent) => (_code) => {
if(null === keyevent) return;
if(typeof _code != 'function') return;
if (VerifoneModule && Platform.OS === 'ios') {
let iOSNativeModule = new NativeEventEmitter(VerifoneModule);
return iOSNativeModule.addListener(keyevent, _code, "");
}
return null
};
export default {
create : () => { if (VerifoneModule && Platform.OS === 'ios') VerifoneModule.create(); },
destroy : () => { if (VerifoneModule && Platform.OS === 'ios') VerifoneModule.destroy(); },
logOn : () => { if (VerifoneModule && Platform.OS === 'ios') VerifoneModule.logOn(); }, //签到
sale : (amount,cashierSysNo) => { if (VerifoneModule && Platform.OS === 'ios') VerifoneModule.sale(amount,cashierSysNo); }, //刷卡
settle : () => { if (VerifoneModule && Platform.OS === 'ios') VerifoneModule.settle(); }, //结算
eventLogOn : event(_VERIFONE_KEYS[4]),
eventSettle : event(_VERIFONE_KEYS[2]),
}