|
|
@@ -80,11 +80,11 @@ |
|
|
|
return; |
|
|
|
} |
|
|
|
//获取卡信息 |
|
|
|
transCmd(function() { |
|
|
|
getCardId(res, function() { |
|
|
|
transCmd(function(items) { |
|
|
|
getCardId(items, function() { |
|
|
|
if (routeType.value == "2") { |
|
|
|
tools.toUrl( |
|
|
|
`/pages/recharge/recharge?connectSuccess=1&&cardId=${state.cardId}&&fee=${state.fee}` |
|
|
|
`/pages/recharge/recharge?connectSuccess=1&&cardId=${state.cardId}&&fee=${state.fee}&&transWay=nfc` |
|
|
|
); //跳转到圈存界面 |
|
|
|
} |
|
|
|
}) |
|
|
@@ -97,7 +97,7 @@ |
|
|
|
|
|
|
|
function getCardId(resultCmdArr: any, callback: any) { |
|
|
|
var that = this; |
|
|
|
console.log(resultCmdArr, '==============') |
|
|
|
console.log(resultCmdArr, '==============123') |
|
|
|
if (resultCmdArr.length == 4) { |
|
|
|
var str = resultCmdArr[2].substring(resultCmdArr[2].length - 4, resultCmdArr[2].length); //判断是否为9000 |
|
|
|
var str3 = resultCmdArr[3].substring(resultCmdArr[3].length - 4, resultCmdArr[3].length); //判断是否为9000 |
|
|
@@ -108,7 +108,7 @@ |
|
|
|
startTime: resultCmdArr[2].substring(40, 48), |
|
|
|
endTime: resultCmdArr[2].substring(48, 56), |
|
|
|
version: resultCmdArr[2].substring(18, 19) >= 4 ? "4x" : "2x", |
|
|
|
money: that.hex2int(resultCmdArr[3].substring(0, 8)), |
|
|
|
money: hex2int(resultCmdArr[3].substring(0, 8)), |
|
|
|
v_userType: parseInt(resultCmdArr[2].substring(80, 82), 16) |
|
|
|
}; |
|
|
|
console.log("写命令拿到卡号:" + JSON.stringify(card)) |
|
|
@@ -123,10 +123,10 @@ |
|
|
|
}) |
|
|
|
return; |
|
|
|
} |
|
|
|
that.setData({ |
|
|
|
cardNo: card.cardNo, |
|
|
|
cardMoney: card.money > 0 ? card.money : 0, |
|
|
|
}) |
|
|
|
// that.setData({ |
|
|
|
// cardNo: card.cardNo, |
|
|
|
// cardMoney: card.money > 0 ? card.money : 0, |
|
|
|
// }) |
|
|
|
callback(card.cardNo); |
|
|
|
} else { |
|
|
|
tools.showToastAlert("CMD_READBINARY指令长度不符" + resultCmdArr[2]); |
|
|
@@ -138,6 +138,28 @@ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 十六进制字符串转十进制 |
|
|
|
*/ |
|
|
|
function hex2int(hex) { |
|
|
|
var len = hex.length, |
|
|
|
a = new Array(len), |
|
|
|
code; |
|
|
|
for (var i = 0; i < len; i++) { |
|
|
|
code = hex.charCodeAt(i); |
|
|
|
if (48 <= code && code < 58) { |
|
|
|
code -= 48; |
|
|
|
} else { |
|
|
|
code = (code & 0xdf) - 65 + 10; |
|
|
|
} |
|
|
|
a[i] = code; |
|
|
|
} |
|
|
|
return a.reduce(function(acc, c) { |
|
|
|
acc = 16 * acc + c; |
|
|
|
return acc; |
|
|
|
}, 0); |
|
|
|
} |
|
|
|
|
|
|
|
function transCmd(callback: any) { |
|
|
|
tools.showLoadingAlert('透传指令中'); |
|
|
|
var cmdArr = [cmd.HOME_DIRECTORY, cmd.APPLICATION_DIRECTORY, cmd.CMD_READBINARY, cmd.CMD_GETBALANCE]; |