123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- var config = require("./NFCConfig");
- var nfcTool = require("./NFCManagerTool");
- var scanTimeId; //定时扫描
- var connectTimeId; //定时链接卡片
- var transTimeId; //定时发送数据
- var timeOut = 10000;
- var isConnect = false;
-
- export function startScanDevice(callBack) {
- scanTimeId = setTimeout(res => {
- nfcTool.stopScanNfcDevice(res => {
- callBack.call(this, {
- code: config.timeOutCode(),
- msg: "扫描超时",
- data: null
- })
- })
- }, timeOut);
- nfcTool.startScanNfcDevice(res => {
- clearTimeout(scanTimeId);
- console.log("返回上层数据:" + JSON.stringify(res));
- callBack.call(this, res)
- })
- };
- export function stopScanDevice(callBack) {
- nfcTool.stopScanNfcDevice(res => {
- callBack.call(this, res)
- })
- };
- export function connectDevice(callBack) {
- if (isConnect) {
- callBack.call(this, {
- code: 10004,
- msg: "卡片已被连接",
- data: null
- });
- return
- }
- nfcTool.connectDevice(res => {
- if (res.code == 0) {
- isConnect = true;
- callBack.call(this, {
- code: config.successCode(),
- msg: "连接成功",
- data: null
- })
- } else {
- disConnectDevice(res => {});
- console.log("返回上层数据:" + JSON.stringify(res));
- callBack.call(this, {
- code: config.nfcErrorCode(),
- msg: "连接失败",
- data: null
- })
- }
- })
- };
- export function disConnectDevice(callBack) {
- nfcTool.disConnectDevice(res => {
- clearTimeout(scanTimeId);
- clearTimeout(connectTimeId);
- clearTimeout(transTimeId);
- isConnect = false;
- callBack.call(this, res)
- })
- };
- export function ICCTransCmd(cmdArr, callBack) {
- console.info("发送数据=============>>::" + cmdArr);
- if (!isConnect) {
- callBack.call(this, {
- code: config.errorCode(),
- msg: "未连接NFC标签",
- data: null
- });
- return
- }
- transTimeId = setTimeout(res => {
- callBack.call(this, {
- code: config.timeOutCode(),
- msg: "NFC连接超时",
- data: null
- })
- }, timeOut);
- nfcTool.sendMessageToDevice(cmdArr, res => {
- clearTimeout(transTimeId);
- console.log("返回上层数据:" + JSON.stringify(res));
- callBack.call(this, res)
- })
- };
-
- export function remove(callBack) {
- stopScanDevice(res => {
- disConnectDevice(res => {
- nfcTool.removeObj();
- callBack.call(this, {
- code: config.successCode(),
- msg: "断开NFC成功",
- data: null
- });
- })
- })
- }
|