UNPKG

fastlion-amis

Version:

一种MIS页面生成工具

132 lines (131 loc) 6.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDestoryResult = exports.getModifyResult = exports.transportEpcList = exports.RFIDTrigeerCodeEnum = exports.RFIDTrigeerEnum = exports.windowRFIDTriger = void 0; var helper_1 = require("./helper"); var shell_1 = require("./shell"); var lodash_1 = require("lodash"); // 从epc中获取 sku god_id 并格式化 var transportEpcList = function (epcList) { return epcList.map(function (_) { var sku = _.slice(0, 8); var god_id = _.slice(0, 6); return { epc: _, sku: sku.endsWith('FF') ? god_id : sku, god_id: god_id }; }); }; exports.transportEpcList = transportEpcList; // 获取改写状态为的方法 var getModifyResult = function (epcList, status) { return new Promise(function (res, rej) { console.log('开始写入', JSON.stringify(epcList), JSON.stringify(status)); if ((0, helper_1.isMobile)()) { shell_1.Shell.UHFModify(epcList, status, function (result) { var failList = result.data.failList; res({ data: { failList: failList } }); }); } else { shell_1.Shell.UHFModify(epcList, status, function (openRes) { if (openRes) setTimeout(function () { // 5s以后根据回调获取返回值 shell_1.Shell.UHFStopModify(function (result) { var _a; // 一个成功的一个失败的 var failList = ((_a = result.data) === null || _a === void 0 ? void 0 : _a.failList) || result.detail.failList; console.log(result, failList); res({ data: { failList: failList } }); }); }, 5000); else { res('打开改写失败'); } }); } }); }; exports.getModifyResult = getModifyResult; // 获取改写状态为的方法 var getDestoryResult = function (epcList) { return new Promise(function (res, rej) { console.log('开始写入', JSON.stringify(epcList), JSON.stringify(status)); shell_1.Shell.UHFKillTags(epcList, function (result) { var epcList = result.data.epcList; res({ data: { epcList: epcList } }); }); }); }; exports.getDestoryResult = getDestoryResult; // 扳机事件 var RFIDTrigeerEnum; (function (RFIDTrigeerEnum) { RFIDTrigeerEnum[RFIDTrigeerEnum["TRIGGERHOLD"] = 0] = "TRIGGERHOLD"; RFIDTrigeerEnum[RFIDTrigeerEnum["TRIGGERCLICK"] = 1] = "TRIGGERCLICK"; RFIDTrigeerEnum[RFIDTrigeerEnum["TRIGGERDOUBLECLICK"] = 2] = "TRIGGERDOUBLECLICK"; })(RFIDTrigeerEnum || (RFIDTrigeerEnum = {})); exports.RFIDTrigeerEnum = RFIDTrigeerEnum; var RFIDTrigeerCodeEnum; (function (RFIDTrigeerCodeEnum) { RFIDTrigeerCodeEnum["TRIGGERHOLD"] = "triggerHold"; RFIDTrigeerCodeEnum["TRIGGERCLICK"] = "triggerClick"; RFIDTrigeerCodeEnum["TRIGGERDOUBLECLICK"] = "triggerDoubleClick"; })(RFIDTrigeerCodeEnum || (RFIDTrigeerCodeEnum = {})); exports.RFIDTrigeerCodeEnum = RFIDTrigeerCodeEnum; var WindowRFIDTrigerClass = /** @class */ (function () { function WindowRFIDTrigerClass() { var _a; var _this = this; this.eventQuque = (_a = {}, _a[RFIDTrigeerCodeEnum.TRIGGERHOLD] = [], _a[RFIDTrigeerCodeEnum.TRIGGERCLICK] = [], _a[RFIDTrigeerCodeEnum.TRIGGERDOUBLECLICK] = [], _a); // act触发中标识 this.onAct = false; // rfid设备调用中的标识, 防止你打开了一个弹窗在进行操作 使用按钮打开了另一个弹窗 this.onRfidAct = false; // 增加监听 this.addEventListener = function (type, res) { var _a, _b; if (type && !_this.eventQuque[type]) _this.eventQuque[type] = []; (_b = (_a = _this.eventQuque[type]) === null || _a === void 0 ? void 0 : _a.push) === null || _b === void 0 ? void 0 : _b.call(_a, res); }; // 移除监听 this.removeEventListener = function (type, res) { var _a; var index = (_a = _this.eventQuque[type]) === null || _a === void 0 ? void 0 : _a.indexOf(res); if (index >= 0) _this.eventQuque[type].splice(index, 1); }; // 触发对应的最后一个事件 this.actEvent = function (_a) { // 防止重复触发 var _b, _c, _d, _e, _f, _g, _h; var type = _a.type; if (_this.onAct) return; _this.onAct = true; switch (type) { // 因为执行的code和 // 单击 case RFIDTrigeerEnum.TRIGGERCLICK: (_c = (_b = _this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERCLICK])[_this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERCLICK].length - 1]) === null || _c === void 0 ? void 0 : _c.call(_b, {}); break; // 双击 case RFIDTrigeerEnum.TRIGGERDOUBLECLICK: (_e = (_d = _this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERDOUBLECLICK])[_this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERDOUBLECLICK].length - 1]) === null || _e === void 0 ? void 0 : _e.call(_d, {}); break; // 按住 case RFIDTrigeerEnum.TRIGGERHOLD: (_g = (_f = _this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERHOLD])[_this.eventQuque[RFIDTrigeerCodeEnum.TRIGGERHOLD].length - 1]) === null || _g === void 0 ? void 0 : _g.call(_f, {}); break; default: // 事件触发的方式注册的 var eventQuque = _this.eventQuque[type]; (_h = (0, lodash_1.last)(eventQuque)) === null || _h === void 0 ? void 0 : _h({}); break; } _this.onAct = false; }; } return WindowRFIDTrigerClass; }()); var windowRFIDTriger = new WindowRFIDTrigerClass(); exports.windowRFIDTriger = windowRFIDTriger; // 注册回调 window['onDeviceEvent'] = windowRFIDTriger.actEvent; //# sourceMappingURL=./utils/RfidUtil.js.map